From 23eeaab465c8b369744c7641d615d53044c18f56 Mon Sep 17 00:00:00 2001 From: Marcus Kida Date: Fri, 29 Apr 2022 09:06:28 +0200 Subject: [PATCH 001/571] feat: use bundler to install Ruby Gems instead of installing them system-wide using root --- .github/scripts/setup.sh | 12 +++-- Documentation/Setup.md | 14 ++--- Gemfile | 6 +++ Gemfile.lock | 109 +++++++++++++++++++++++++++++++++++++++ update_localization.sh | 2 +- 5 files changed, 132 insertions(+), 11 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock diff --git a/.github/scripts/setup.sh b/.github/scripts/setup.sh index 0c2612d51..f5934be0c 100755 --- a/.github/scripts/setup.sh +++ b/.github/scripts/setup.sh @@ -1,9 +1,13 @@ #!/bin/bash -sudo gem install cocoapods-keys +# Install Ruby Bundler +sudo gem install bundler:2.3.11 + +# Install Ruby Gems +bundle install # stub keys. DO NOT use in production -pod keys set notification_endpoint "" -pod keys set notification_endpoint_debug "" +bundle exec pod keys set notification_endpoint "" +bundle exec pod keys set notification_endpoint_debug "" -pod install +bundle exec pod install diff --git a/Documentation/Setup.md b/Documentation/Setup.md index ede9d4862..b17a9db8e 100644 --- a/Documentation/Setup.md +++ b/Documentation/Setup.md @@ -12,12 +12,13 @@ Intell the latest version of Xcode from the App Store or Apple Developer Downloa This guide may not suit your machine and actually setup procedure may change in the future. Please file the issue or Pull Request if there are any problems. ## CocoaPods -The app use [CocoaPods]() and [CocoaPods-Keys](https://github.com/orta/cocoapods-keys). The M1 Mac needs virtual ruby env to workaround compatibility issues. +The app use [CocoaPods]() and [CocoaPods-Keys](https://github.com/orta/cocoapods-keys). Ruby Gems are managed through Bundler. The M1 Mac needs virtual ruby env to workaround compatibility issues. #### Intel Mac ```zsh -sudo gem install cocoapods cocoapods-keys +sudo gem install bundler +bundle install ``` #### M1 Mac @@ -40,18 +41,19 @@ rbenv global 3.0.3 ruby --version # > ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [arm64-darwin21] -sudo gem install cocoapods cocoapods-keys +sudo gem install bundler +bundle install ``` ## Bootstrap ```zsh # make a clean build -sudo gem install cocoapods-clean -pod clean +bundle install +bundle exec pod clean # make install -pod install --repo-update +bundle exec pod install --repo-update # open workspace open Mastodon.xcworkspace diff --git a/Gemfile b/Gemfile new file mode 100644 index 000000000..48aae3d82 --- /dev/null +++ b/Gemfile @@ -0,0 +1,6 @@ +source "https://rubygems.org" + +gem "cocoapods" +gem "cocoapods-clean" +gem "cocoapods-keys" + diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 000000000..b27a44a97 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,109 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.5) + rexml + RubyInline (3.12.5) + ZenTest (~> 4.3) + ZenTest (4.12.1) + activesupport (6.1.5.1) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) + addressable (2.8.0) + public_suffix (>= 2.0.2, < 5.0) + algoliasearch (1.27.5) + httpclient (~> 2.8, >= 2.8.3) + json (>= 1.5.1) + atomos (0.1.3) + claide (1.1.0) + cocoapods (1.11.3) + addressable (~> 2.8) + claide (>= 1.0.2, < 2.0) + cocoapods-core (= 1.11.3) + cocoapods-deintegrate (>= 1.0.3, < 2.0) + cocoapods-downloader (>= 1.4.0, < 2.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.4.0, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (>= 2.3.0, < 3.0) + gh_inspector (~> 1.0) + molinillo (~> 0.8.0) + nap (~> 1.0) + ruby-macho (>= 1.0, < 3.0) + xcodeproj (>= 1.21.0, < 2.0) + cocoapods-clean (0.0.1) + cocoapods-core (1.11.3) + activesupport (>= 5.0, < 7) + addressable (~> 2.8) + algoliasearch (~> 1.0) + concurrent-ruby (~> 1.1) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + netrc (~> 0.11) + public_suffix (~> 4.0) + typhoeus (~> 1.0) + cocoapods-deintegrate (1.0.5) + cocoapods-downloader (1.6.3) + cocoapods-keys (2.2.1) + dotenv + osx_keychain + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.1) + cocoapods-trunk (1.6.0) + nap (>= 0.8, < 2.0) + netrc (~> 0.11) + cocoapods-try (1.2.0) + colored2 (3.1.2) + concurrent-ruby (1.1.10) + dotenv (2.7.6) + escape (0.0.4) + ethon (0.15.0) + ffi (>= 1.15.0) + ffi (1.15.5) + fourflusher (2.3.1) + fuzzy_match (2.0.4) + gh_inspector (1.1.3) + httpclient (2.8.3) + i18n (1.10.0) + concurrent-ruby (~> 1.0) + json (2.6.1) + minitest (5.15.0) + molinillo (0.8.0) + nanaimo (0.3.0) + nap (1.1.0) + netrc (0.11.0) + osx_keychain (1.0.2) + RubyInline (~> 3) + public_suffix (4.0.7) + rexml (3.2.5) + ruby-macho (2.5.1) + typhoeus (1.4.0) + ethon (>= 0.9.0) + tzinfo (2.0.4) + concurrent-ruby (~> 1.0) + xcodeproj (1.21.0) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.3.0) + rexml (~> 3.2.4) + zeitwerk (2.5.4) + +PLATFORMS + ruby + +DEPENDENCIES + cocoapods + cocoapods-clean + cocoapods-keys + +BUNDLED WITH + 2.3.11 diff --git a/update_localization.sh b/update_localization.sh index b234cd933..09cfc21d6 100755 --- a/update_localization.sh +++ b/update_localization.sh @@ -21,7 +21,7 @@ echo "${PODS_ROOT}/SwiftGen/bin/swiftgen" if [[ -f "${PODS_ROOT}/SwiftGen/bin/swiftgen" ]] then "${PODS_ROOT}/SwiftGen/bin/swiftgen" else - echo "Run 'pod install' or update your CocoaPods installation." + echo "Run 'bundle exec pod install' or update your CocoaPods installation." fi #task 4 clean temp file From b6c944da26e4ebe7da7ceaec20486273b43d53b4 Mon Sep 17 00:00:00 2001 From: Marcus Kida Date: Fri, 29 Apr 2022 10:49:24 +0200 Subject: [PATCH 002/571] chore: install bundler without sudo --- .github/scripts/setup.sh | 2 +- Documentation/Setup.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/scripts/setup.sh b/.github/scripts/setup.sh index f5934be0c..9b52d5b9e 100755 --- a/.github/scripts/setup.sh +++ b/.github/scripts/setup.sh @@ -1,7 +1,7 @@ #!/bin/bash # Install Ruby Bundler -sudo gem install bundler:2.3.11 +gem install bundler:2.3.11 # Install Ruby Gems bundle install diff --git a/Documentation/Setup.md b/Documentation/Setup.md index b17a9db8e..1c2f0a6c5 100644 --- a/Documentation/Setup.md +++ b/Documentation/Setup.md @@ -17,7 +17,7 @@ The app use [CocoaPods]() and [CocoaPods-Keys](https://github.com/orta/cocoapods #### Intel Mac ```zsh -sudo gem install bundler +gem install bundler bundle install ``` @@ -41,7 +41,7 @@ rbenv global 3.0.3 ruby --version # > ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [arm64-darwin21] -sudo gem install bundler +gem install bundler bundle install ``` From e0b09149e2beb9f11accf9feb70f56f18b05f7a2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 13:26:06 +0200 Subject: [PATCH 003/571] New translations app.json (Spanish, Argentina) --- Localization/StringsConvertor/input/es_AR/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/es_AR/app.json b/Localization/StringsConvertor/input/es_AR/app.json index 8ef75d107..d5dbafd7e 100644 --- a/Localization/StringsConvertor/input/es_AR/app.json +++ b/Localization/StringsConvertor/input/es_AR/app.json @@ -498,7 +498,7 @@ "posts": "Mensajes", "hashtags": "Etiquetas", "news": "Novedades", - "community": "Community", + "community": "Comunidad", "for_you": "Para vos" }, "intro": "Estos son los mensajes que están ganando tracción en tu rincón de Mastodon." From 2a2bf7aa139d5c24da2c8106717c2baf26045e6d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 14:21:41 +0200 Subject: [PATCH 004/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv_SE/app.json | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index 4f93231ec..147a3b541 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -23,13 +23,13 @@ "title": "Publicering misslyckades", "message": "Det gick inte att publicera inlägget.\nKontrollera din internetanslutning.", "attachments_message": { - "video_attach_with_photo": "Det går inte att bifoga en video till en status som redan innehåller bilder.", + "video_attach_with_photo": "Det går inte att bifoga en video till ett inlägg som redan innehåller bilder.", "more_than_one_video": "Det går inte att bifoga mer än en video." } }, "edit_profile_failure": { - "title": "Fel vid profilredigering", - "message": "Kan inte redigera profil. Försök igen." + "title": "Profilredigering misslyckades", + "message": "Kan inte redigera profil. Var god försök igen." }, "sign_out": { "title": "Logga ut", @@ -41,7 +41,7 @@ "block_entire_domain": "Blockera domän" }, "save_photo_failure": { - "title": "Kunde inte spara foto", + "title": "Spara foto misslyckades", "message": "Aktivera åtkomst till Bilder för att spara bilden." }, "delete_post": { @@ -57,7 +57,7 @@ "actions": { "back": "Tillbaka", "next": "Nästa", - "previous": "Tidigare", + "previous": "Föregående", "open": "Öppna", "add": "Lägg till", "remove": "Radera", @@ -69,7 +69,7 @@ "continue": "Fortsätt", "compose": "Skriv", "cancel": "Avbryt", - "discard": "Kasta", + "discard": "Släng", "try_again": "Försök igen", "take_photo": "Ta foto", "save_photo": "Spara foto", @@ -77,7 +77,7 @@ "sign_in": "Logga in", "sign_up": "Registrera dig", "see_more": "Visa mer", - "preview": "Förhandstitt", + "preview": "Förhandsvisa", "share": "Dela", "share_user": "Dela %s", "share_post": "Dela inlägg", @@ -96,7 +96,7 @@ "tabs": { "home": "Hem", "search": "Sök", - "notification": "Avisering", + "notification": "Notis", "profile": "Profil" }, "keyboard": { @@ -151,7 +151,7 @@ }, "tag": { "url": "URL", - "mention": "Nämn", + "mention": "Omnämn", "link": "Länk", "hashtag": "Hashtagg", "email": "E-post", @@ -161,13 +161,13 @@ "unlisted": "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen.", "private": "Endast deras följare kan se detta inlägg.", "private_from_me": "Bara mina följare kan se det här inlägget.", - "direct": "Endast nämnda användare kan se detta inlägg." + "direct": "Endast omnämnda användare kan se detta inlägg." } }, "friendship": { "follow": "Följ", "following": "Följer", - "request": "Begäran", + "request": "Följ", "pending": "Väntande", "block": "Blockera", "block_user": "Blockera %s", @@ -321,7 +321,7 @@ "title": "En sista sak.", "subtitle": "Tryck på länken vi e-postade till dig för att verifiera ditt konto.", "button": { - "open_email_app": "Öppna epostappen", + "open_email_app": "Öppna e-postappen", "resend": "Skicka igen" }, "dont_receive_email": { @@ -545,11 +545,11 @@ "light": "Ljust" }, "notifications": { - "title": "Aviseringar", + "title": "Notiser", "favorites": "Favoriserar mitt inlägg", "follows": "Följer mig", "boosts": "Ompostar mitt inlägg", - "mentions": "Nämner mig", + "mentions": "Omnämner mig", "trigger": { "anyone": "alla", "follower": "en följare", From 84f3f76e7bd340b765d35a40ee214f5b86a9a408 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:44 +0200 Subject: [PATCH 005/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 50513e58e..1e464f07c 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -498,7 +498,7 @@ "posts": "โพสต์", "hashtags": "แฮชแท็ก", "news": "ข่าว", - "community": "Community", + "community": "ชุมชน", "for_you": "สำหรับคุณ" }, "intro": "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ" From 9de853bcb41da853460efbf042f7d067716e388d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:45 +0200 Subject: [PATCH 006/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv_SE/app.json | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index 147a3b541..2961df176 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -198,7 +198,7 @@ "user_blocking_warning": "Du kan inte visa %ss profil\nförrän du avblockerar dem.\nDin profil ser ut så här för dem.", "blocked_warning": "Du kan inte visa den här användarens profil\nförrän de avblockerar dig.", "user_blocked_warning": "Du kan inte visa %ss profil\nförrän de avblockerar dig.", - "suspended_warning": "Denna användare har stängts av.", + "suspended_warning": "Denna användare har blivit avstängd.", "user_suspended_warning": "%ss konto har blivit avstängt." } } @@ -211,9 +211,9 @@ "log_in": "Logga in" }, "server_picker": { - "title": "Mastodon utgörs av användare i olika gemenskaper.", - "subtitle": "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte.", - "subtitle_extend": "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte. Varje gemenskap drivs av en helt oberoende organisation eller individ.", + "title": "Mastodon utgörs av användare på olika servrar.", + "subtitle": "Välj en server baserat på dina intressen, region eller ett allmänt syfte.", + "subtitle_extend": "Välj en server baserat på dina intressen, region eller ett allmänt syfte. Varje server drivs av en helt oberoende organisation eller individ.", "button": { "category": { "all": "Alla", @@ -340,8 +340,8 @@ "title": "Hem", "navigation_bar_state": { "offline": "Offline", - "new_posts": "Se nya inlägg", - "published": "Publicerad!", + "new_posts": "Nya inlägg", + "published": "Publicerat!", "Publishing": "Publicerar inlägget..." } }, @@ -370,11 +370,11 @@ "description_video": "Beskriv videon för de synskadade..." }, "poll": { - "duration_time": "Varaktighet: %s", + "duration_time": "Längd: %s", "thirty_minutes": "30 minuter", "one_hour": "1 timme", "six_hours": "6 timmar", - "one_day": "1dag", + "one_day": "1 dag", "three_days": "3 dagar", "seven_days": "7 dagar", "option_number": "Alternativ %ld" @@ -383,13 +383,13 @@ "placeholder": "Skriv en noggrann varning här..." }, "visibility": { - "public": "Publik", + "public": "Offentlig", "unlisted": "Olistad", "private": "Endast följare", "direct": "Bara personer jag nämner" }, "auto_complete": { - "space_to_add": "Mellanslag att lägga till" + "space_to_add": "Mellanslag för att lägga till" }, "accessibility": { "append_attachment": "Lägg till bilaga", @@ -401,8 +401,8 @@ "post_visibility_menu": "Inläggssynlighetsmeny" }, "keyboard": { - "discard_post": "Kasta inlägget", - "publish_post": "Publicerar inlägget", + "discard_post": "Släng inlägget", + "publish_post": "Publicera inlägget", "toggle_poll": "Växla omröstning", "toggle_content_warning": "Växla innehållsvarning", "append_attachment_entry": "Lägg till bilaga - %s", From 51f9175dee269bdb0f693a92a05c11e5a1c559d5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:46 +0200 Subject: [PATCH 007/571] New translations app.json (Turkish) --- Localization/StringsConvertor/input/tr_TR/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/tr_TR/app.json b/Localization/StringsConvertor/input/tr_TR/app.json index 9f41a72be..000f79bf0 100644 --- a/Localization/StringsConvertor/input/tr_TR/app.json +++ b/Localization/StringsConvertor/input/tr_TR/app.json @@ -498,7 +498,7 @@ "posts": "Gönderiler", "hashtags": "Etiketler", "news": "Haberler", - "community": "Community", + "community": "Topluluk", "for_you": "Senin İçin" }, "intro": "Bunlar, Mastodon'un köşesinde ilgi çeken gönderilerdir." @@ -538,7 +538,7 @@ "dark": "Daima Koyu" }, "look_and_feel": { - "title": "Look and Feel", + "title": "Görünüm", "use_system": "Sistem İle Aynı", "really_dark": "Gerçek Koyu", "sorta_dark": "Hafif Koyu", From 63e9b37e4d9a2c8ea1287d34b8b67ad2b7c55d0c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:47 +0200 Subject: [PATCH 008/571] New translations Localizable.stringsdict (Swedish) --- .../StringsConvertor/input/sv_SE/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict index a14b5f622..c8903be4c 100644 --- a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict @@ -157,7 +157,7 @@ NSStringFormatValueTypeKey ld one - %ld röst + %ld röstare other %ld röster From b9de7250adcfe8c6c42e11d91eaec8debfab45c1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:48 +0200 Subject: [PATCH 009/571] New translations ios-infoPlist.json (Swedish) --- Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json b/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json index 98ff6d3b6..6073413d8 100644 --- a/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json @@ -1,6 +1,6 @@ { "NSCameraUsageDescription": "Används för att ta foto till inlägg", - "NSPhotoLibraryAddUsageDescription": "Används för att spara foto till Bilder", + "NSPhotoLibraryAddUsageDescription": "Används för att spara foto till bildbiblioteket", "NewPostShortcutItemTitle": "Nytt inlägg", "SearchShortcutItemTitle": "Sök" } From 3e5dabadacee60826417bcd98e14d4580e15f6f8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 15:18:49 +0200 Subject: [PATCH 010/571] New translations Intents.strings (Swedish) --- .../StringsConvertor/Intents/input/sv_SE/Intents.strings | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings index 83e02871c..5f81d713d 100644 --- a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings @@ -24,17 +24,17 @@ "Zo4jgJ" = "Inläggssynlighet"; -"apSxMG-dYQ5NN" = "Det finns ${count} alternativ som matchar ‘Publikt’."; +"apSxMG-dYQ5NN" = "Det finns ${count} alternativ som matchar ‘Offentligt’."; "apSxMG-ehFLjY" = "Det finns ${count} alternativ som matchar ‘Endast följare’."; -"ayoYEb-dYQ5NN" = "${content}, Publikt"; +"ayoYEb-dYQ5NN" = "${content}, Offentligt"; "ayoYEb-ehFLjY" = "${content}, Endast följare"; "dUyuGg" = "Posta på Mastodon"; -"dYQ5NN" = "Publikt"; +"dYQ5NN" = "Offentligt"; "ehFLjY" = "Endast följare"; @@ -42,7 +42,7 @@ "k7dbKQ" = "Inlägget har postats."; -"oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Publikt'?"; +"oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Offentligt'?"; "oGiqmY-ehFLjY" = "Bara för att bekräfta, ville du ha 'Endast följare'?"; From 1dbc39a17bd5d7d5f4723ec9827e6ef50512639c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 16:19:58 +0200 Subject: [PATCH 011/571] New translations Localizable.stringsdict (Swedish) --- .../StringsConvertor/input/sv_SE/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict index c8903be4c..5bfb998f0 100644 --- a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict @@ -317,7 +317,7 @@ NSStringFormatValueTypeKey ld one - %ldå sedan + %ld år sedan other %ldå sedan @@ -333,7 +333,7 @@ NSStringFormatValueTypeKey ld one - %ldmån sedan + %ld mån sedan other %ld mån sedan From 3f48bf7bb005e97b61d7532a6c25ab4b706cd7b1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 16:19:59 +0200 Subject: [PATCH 012/571] New translations Intents.strings (Swedish) --- .../Intents/input/sv_SE/Intents.strings | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings index 5f81d713d..526e495d2 100644 --- a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings @@ -1,22 +1,22 @@ -"16wxgf" = "Posta på Mastodon"; +"16wxgf" = "Publicera på Mastodon"; "751xkl" = "Textinnehåll"; -"CsR7G2" = "Posta på Mastodon"; +"CsR7G2" = "Publicera på Mastodon"; -"HZSGTr" = "Vilket innehåll ska jag posta?"; +"HZSGTr" = "Vilket innehåll ska publiceras?"; -"HdGikU" = "Inlägget misslyckades"; +"HdGikU" = "Publiceringen misslyckades"; "KDNTJ4" = "Felorsak"; "RHxKOw" = "Skicka inlägg med textinnehåll"; -"RxSqsb" = "Posta"; +"RxSqsb" = "Inlägg"; -"WCIR3D" = "Posta ${content} på Mastodon"; +"WCIR3D" = "Publicera ${content} på Mastodon"; -"ZKJSNu" = "Posta"; +"ZKJSNu" = "Inlägg"; "ZS1XaK" = "${content}"; @@ -32,15 +32,15 @@ "ayoYEb-ehFLjY" = "${content}, Endast följare"; -"dUyuGg" = "Posta på Mastodon"; +"dUyuGg" = "Publicera på Mastodon"; "dYQ5NN" = "Offentligt"; "ehFLjY" = "Endast följare"; -"gfePDu" = "Inlägget misslyckades. ${failureReason}"; +"gfePDu" = "Publicering misslyckades. ${failureReason}"; -"k7dbKQ" = "Inlägget har postats."; +"k7dbKQ" = "Inlägget har publicerats."; "oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Offentligt'?"; @@ -48,4 +48,4 @@ "rM6dvp" = "URL"; -"ryJLwG" = "Inlägget har postats. "; +"ryJLwG" = "Inlägget har publicerats. "; From e35d0cca1082b0a4628534dcdd1b9adb8fbf9525 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 20:02:29 +0200 Subject: [PATCH 013/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr_TR/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index fcd6d0220..52dde00a6 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -211,7 +211,7 @@ "log_in": "Têkeve" }, "server_picker": { - "title": "Rajekarekê hilbijêre,\nHer kîjan rajekar be.", + "title": "Mastodon ji bikarhênerên di civakên cuda de pêk tê.", "subtitle": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre.", "subtitle_extend": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre. Her civakek ji hêla rêxistinek an kesek bi tevahî serbixwe ve tê xebitandin.", "button": { From f51e152b1ef9c26d782ad44db477a96775b88275 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 21:27:43 +0200 Subject: [PATCH 014/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 1e464f07c..db21b29e6 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -211,9 +211,9 @@ "log_in": "เข้าสู่ระบบ" }, "server_picker": { - "title": "Mastodon ประกอบด้วยผู้ใช้ในชุมชนต่าง ๆ", - "subtitle": "เลือกชุมชนตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ", - "subtitle_extend": "เลือกชุมชนตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละชุมชนดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง", + "title": "Mastodon ประกอบด้วยผู้ใช้ในเซิร์ฟเวอร์ต่าง ๆ", + "subtitle": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ", + "subtitle_extend": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละเซิร์ฟเวอร์ดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง", "button": { "category": { "all": "ทั้งหมด", @@ -240,7 +240,7 @@ "category": "หมวดหมู่" }, "input": { - "placeholder": "ค้นหาชุมชน" + "placeholder": "ค้นหาเซิร์ฟเวอร์" }, "empty_state": { "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", From 9eef64f5e915bfdbe175d623affabf24dc518542 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 29 Apr 2022 23:25:47 +0200 Subject: [PATCH 015/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca_ES/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index 7789c6169..4e93bc62e 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -240,11 +240,11 @@ "category": "CATEGORIA" }, "input": { - "placeholder": "Troba un servidor o uneix-te al teu..." + "placeholder": "Cerca servidors" }, "empty_state": { "finding_servers": "Cercant els servidors disponibles...", - "bad_network": "S'ha produït un error en carregar les dades. Comprova la teva connexió a Internet.", + "bad_network": "Alguna cosa no ha anat bé en carregar les dades. Comprova la teva connexió a Internet.", "no_results": "No hi ha resultats" } }, From ea340699c8a9a036529e35c91735ebdebc9a9cb9 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 00:26:32 +0200 Subject: [PATCH 016/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca_ES/app.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index 4e93bc62e..9650d66c2 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -249,7 +249,7 @@ } }, "register": { - "title": "Parla'ns de tu.", + "title": "Anem a configurar-te a %s", "input": { "avatar": { "delete": "Suprimeix" @@ -309,7 +309,7 @@ }, "server_rules": { "title": "Algunes regles bàsiques.", - "subtitle": "Aquestes regles estan establertes per els administradors de %s.", + "subtitle": "Aquestes regles estan establertes i aplicades per els moderadors de %s.", "prompt": "Al continuar, estàs subjecte als termes de servei i a la política de privacitat de %s.", "terms_of_service": "termes del servei", "privacy_policy": "política de privadesa", @@ -346,7 +346,7 @@ } }, "suggestion_account": { - "title": "Cerca Persones per Seguir", + "title": "Cerca Persones a Seguir", "follow_explain": "Quan segueixes algú, veuràs les seves publicacions a Inici." }, "compose": { From 5a6a4c3e7de5476d3c5f0c585d6a3b375da5da6f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 00:26:33 +0200 Subject: [PATCH 017/571] New translations app.json (German) --- Localization/StringsConvertor/input/de_DE/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index 75b01afd3..86b4fdedb 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -129,7 +129,7 @@ "show_post": "Beitrag anzeigen", "show_user_profile": "Benutzerprofil anzeigen", "content_warning": "Inhaltswarnung", - "sensitive_content": "Sensitive Content", + "sensitive_content": "NSFW-Inhalt", "media_content_warning": "Tippe irgendwo zum Anzeigen", "tap_to_reveal": "Zum Anzeigen tippen", "poll": { @@ -501,7 +501,7 @@ "community": "Community", "for_you": "Für dich" }, - "intro": "These are the posts gaining traction in your corner of Mastodon." + "intro": "Dies sind die Beiträge, die in deiner Umgebung auf Mastodon beliebter werden." }, "favorite": { "title": "Deine Favoriten" From 774350c9da8b960cf50885c146b950e1c01ecb83 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 01:31:30 +0200 Subject: [PATCH 018/571] New translations app.json (Japanese) --- .../StringsConvertor/input/ja_JP/app.json | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index f0b759d14..fd25af086 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -45,8 +45,8 @@ "message": "写真を保存するには、フォトライブラリへのアクセス許可を有効にしてください。" }, "delete_post": { - "title": "この投稿を消去しますか?", - "message": "本当に削除しますか?" + "title": "投稿を削除", + "message": "本当にこの投稿を削除しますか?" }, "clean_cache": { "title": "キャッシュを消去", @@ -91,7 +91,7 @@ "block_domain": "%sをブロック", "unblock_domain": "%sのブロックを解除", "settings": "設定", - "delete": "消去" + "delete": "削除" }, "tabs": { "home": "ホーム", @@ -252,7 +252,7 @@ "title": "あなたのことを教えてください", "input": { "avatar": { - "delete": "消去" + "delete": "削除" }, "username": { "placeholder": "ユーザー名", @@ -498,8 +498,8 @@ "posts": "投稿", "hashtags": "ハッシュタグ", "news": "ニュース", - "community": "Community", - "for_you": "For You" + "community": "コミュニティ", + "for_you": "おすすめ" }, "intro": "These are the posts gaining traction in your corner of Mastodon." }, @@ -512,12 +512,12 @@ "Mentions": "メンション" }, "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" + "followed_you": "さんにフォローされました", + "favorited_your_post": "さんがあなたの投稿をお気に入りに登録しました", + "reblogged_your_post": "さんがあなたの投稿をブーストしました", + "mentioned_you": "さんがあなたに返信しました", + "request_to_follow_you": "さんがあなたにフォローリクエストしました", + "poll_has_ended": "アンケートが終了しました" }, "keyobard": { "show_everything": "すべて見る", @@ -538,11 +538,11 @@ "dark": "ダーク" }, "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" + "title": "テーマ", + "use_system": "端末の設定を使う", + "really_dark": "ブラック", + "sorta_dark": "ダーク", + "light": "ライト" }, "notifications": { "title": "通知", From 56427eb7670ec45592d091c27bd45886edb88e5b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 06:39:52 +0200 Subject: [PATCH 019/571] New translations Localizable.stringsdict (Arabic) --- .../StringsConvertor/input/ar_SA/Localizable.stringsdict | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict index c2f641720..dddba5132 100644 --- a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict @@ -109,7 +109,7 @@ NSStringFormatValueTypeKey ld zero - لا منشور + لا مَنشورات one منشورٌ واحِد two @@ -447,13 +447,13 @@ zero تتبقى لَحظة one - تتبقى ثانية + تتبقى ثانية واحِدة two - تتبقى ثانيتين + تتبقى ثانيتان few تتبقى %ld ثوان many - تتبقى %ld ثانيةً + تتبقى %ld ثانية other تتبقى %ld ثانية From 9635ee6bff9c56a0032ef26279d903e939d42b8f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 10:32:50 +0200 Subject: [PATCH 020/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index db21b29e6..55babe802 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -221,7 +221,7 @@ "academia": "วิชาการ", "activism": "กิจกรรมเพื่อการเปลี่ยนแปลง", "food": "อาหาร", - "furry": "furry", + "furry": "สรรพสัตว์", "games": "เกม", "general": "ทั่วไป", "journalism": "การเขียนข่าว", From 88dda0c6811bc5e7b968f75c471413075aab8be4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 30 Apr 2022 16:57:46 +0200 Subject: [PATCH 021/571] New translations app.json (Swedish) --- Localization/StringsConvertor/input/sv_SE/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index 2961df176..e7bdecf15 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -498,7 +498,7 @@ "posts": "Inlägg", "hashtags": "Hashtaggar", "news": "Nyheter", - "community": "Gemenskap", + "community": "Server", "for_you": "För dig" }, "intro": "Detta är de inlägg som engagerar i ditt hörn av Mastodon." From f45794c10c927024a10302437cf1e39597c5e3d4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 00:07:39 +0200 Subject: [PATCH 022/571] New translations app.json (Finnish) --- .../StringsConvertor/input/fi_FI/app.json | 606 +++++++++--------- 1 file changed, 303 insertions(+), 303 deletions(-) diff --git a/Localization/StringsConvertor/input/fi_FI/app.json b/Localization/StringsConvertor/input/fi_FI/app.json index 50512250d..4599c9646 100644 --- a/Localization/StringsConvertor/input/fi_FI/app.json +++ b/Localization/StringsConvertor/input/fi_FI/app.json @@ -2,147 +2,147 @@ "common": { "alerts": { "common": { - "please_try_again": "Please try again.", - "please_try_again_later": "Please try again later." + "please_try_again": "Yritä uudelleen.", + "please_try_again_later": "Yritä uudelleen myöhemmin." }, "sign_up_failure": { - "title": "Sign Up Failure" + "title": "Rekisteröinti epäonnistui" }, "server_error": { - "title": "Server Error" + "title": "Palvelinvirhe" }, "vote_failure": { "title": "Vote Failure", - "poll_ended": "The poll has ended" + "poll_ended": "Kysely on päättynyt" }, "discard_post_content": { - "title": "Discard Draft", + "title": "Hylkää luonnos", "message": "Confirm to discard composed post content." }, "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", + "title": "Julkaiseminen epäonnistui", + "message": "Julkaisun julkaiseminen epäonnistui.\nTarkista internet-yhteytesi.", "attachments_message": { "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." + "more_than_one_video": "Ei voi liittä yhtä videota enempää." } }, "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." + "title": "Virhe profiilin muokkauksessa", + "message": "Profiilia ei voida muoka. Yritä uudelleen." }, "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" + "title": "Kirjaudu ulos", + "message": "Haluatko varmasti kirjautua ulos?", + "confirm": "Kirjaudu ulos" }, "block_domain": { "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" + "block_entire_domain": "Estä verkkotunnus" }, "save_photo_failure": { - "title": "Save Photo Failure", + "title": "Kuvan tallentaminen epäonnistui", "message": "Please enable the photo library access permission to save the photo." }, "delete_post": { - "title": "Delete Post", + "title": "Haluatko varmasti poistaa tämän julkaisun?", "message": "Are you sure you want to delete this post?" }, "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." + "title": "Puhdista välimuisti", + "message": "%s välimuisti tyhjennetty onnistuneesti." } }, "controls": { "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", + "back": "Takaisin", + "next": "Seuraava", + "previous": "Edellinen", + "open": "Avaa", + "add": "Lisää", + "remove": "Poista", + "edit": "Muokkaa", + "save": "Tallenna", "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", + "done": "Valmis", + "confirm": "Vahvista", + "continue": "Jatka", + "compose": "Koosta", + "cancel": "Kumoa", + "discard": "Hylkää", + "try_again": "Yritä uudelleen", + "take_photo": "Ota kuva", + "save_photo": "Tallenna kuva", + "copy_photo": "Kopioi kuva", + "sign_in": "Kirjaudu sisään", + "sign_up": "Rekisteröidy", + "see_more": "Näytä lisää", + "preview": "Esikatselu", + "share": "Jaa", + "share_user": "Jaa %s", + "share_post": "Jaa julkaisu", + "open_in_safari": "Avaa Safarissa", "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", + "find_people": "Löydä tilejä seurattavaksi", "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" + "skip": "Ohita", + "reply": "Vastaa", + "report_user": "Ilmianna %s", + "block_domain": "Estä %s", + "unblock_domain": "Poista esto %s", + "settings": "Asetukset", + "delete": "Poista" }, "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" + "home": "Koti", + "search": "Haku", + "notification": "Ilmoitus", + "profile": "Profiili" }, "keyboard": { "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" + "switch_to_tab": "Vaihda %s", + "compose_new_post": "Koosta uusi julkaisu", + "show_favorites": "Näytä suosikit", + "open_settings": "Avaa asetukset" }, "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", + "previous_status": "Edellinen julkaisu", + "next_status": "Seuraava julkaisu", + "open_status": "Avaa julkaisu", + "open_author_profile": "Avaa tekijän profiili", + "open_reblogger_profile": "Avaa edelleen jakajan profiili", + "reply_status": "Vastaa julkaisuun", "toggle_reblog": "Toggle Reblog on Post", "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", + "toggle_content_warning": "Vaihda sisältövaroitus", "preview_image": "Preview Image" }, "segmented_control": { "previous_section": "Previous Section", - "next_section": "Next Section" + "next_section": "Seuraava lohko" } }, "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", + "user_reblogged": "%s jakoi edelleen", + "user_replied_to": "Vastasi %s:lle", + "show_post": "Näytä julkaisu", + "show_user_profile": "Näytä tili", + "content_warning": "Sisältövaroitus", "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", + "media_content_warning": "Napauta mistä tahansa paljastaaksesi", "tap_to_reveal": "Tap to reveal", "poll": { "vote": "Vote", - "closed": "Closed" + "closed": "Suljettu" }, "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", + "reply": "Vastaa", + "reblog": "Jaa edelleen", + "unreblog": "Peru edelleen jako", "favorite": "Favorite", "unfavorite": "Unfavorite", - "menu": "Menu", + "menu": "Valikko", "hide": "Hide", "show_image": "Show image", "show_gif": "Show GIF", @@ -152,9 +152,9 @@ "tag": { "url": "URL", "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", + "link": "Linkki", + "hashtag": "Hashtagi", + "email": "Sähköposti", "emoji": "Emoji" }, "visibility": { @@ -165,266 +165,266 @@ } }, "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", + "follow": "Seuraa", + "following": "Seurataan", + "request": "Pyydä", + "pending": "Pyydetty", + "block": "Estä", + "block_user": "Estä %s", + "block_domain": "Estä %s", + "unblock": "Poista esto", "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" + "blocked": "Estetty", + "mute": "Mykistä", + "mute_user": "Mykistä %s", + "unmute": "Poista mykistys", + "unmute_user": "Poista mykistys tililtä %s", + "muted": "Mykistetty", + "edit_info": "Muokkaa profiilia" }, "timeline": { - "filtered": "Filtered", + "filtered": "Suodatettu", "timestamp": { - "now": "Now" + "now": "Nyt" }, "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" + "load_missing_posts": "Lataa puuttuvat julkaisut", + "loading_missing_posts": "Ladataan puuttuvia julkaisuja...", + "show_more_replies": "Näytä lisää vastauksia" }, "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." + "no_status_found": "Julkaisua ei löytynyt", + "blocking_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", + "user_blocking_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", + "blocked_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin hän poistaa eston.", + "user_blocked_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin hän poistaa eston.", + "suspended_warning": "Tämä tili on lakkautettu.", + "user_suspended_warning": "Tili %s on lakkautettu." } } } }, "scene": { "welcome": { - "slogan": "Social networking\nback in your hands.", + "slogan": "Sosiaalinen verkostoituminen\ntakaisin käsissäsi.", "get_started": "Get Started", "log_in": "Log In" }, "server_picker": { - "title": "Mastodon is made of users in different servers.", + "title": "Valitse palvelin,\nmikä tahansa palvelin.", "subtitle": "Pick a server based on your interests, region, or a general purpose one.", "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", "button": { "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" + "all": "Kaikki", + "all_accessiblity_description": "Kategoria: Kaikki", + "academia": "akateeminen", + "activism": "aktivismi", + "food": "ruoka", + "furry": "turri", + "games": "pelit", + "general": "yleinen", + "journalism": "journalismi", + "lgbt": "hlbt", + "regional": "alueellinen", + "art": "taide", + "music": "musiikki", + "tech": "tekniikka" }, - "see_less": "See Less", - "see_more": "See More" + "see_less": "Näytä vähemmän", + "see_more": "Näytä lisää" }, "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" + "language": "KIELI", + "users": "TILIÄ", + "category": "KATEGORIA" }, "input": { - "placeholder": "Search servers" + "placeholder": "Etsi palvelin tai liity omaan..." }, "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" + "finding_servers": "Etsistään saatavilla olevia palvelimia...", + "bad_network": "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi.", + "no_results": "Ei hakutuloksia" } }, "register": { - "title": "Let’s get you set up on %s", + "title": "Kerro meille sinusta.", "input": { "avatar": { - "delete": "Delete" + "delete": "Poista" }, "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." + "placeholder": "käyttäjänimi", + "duplicate_prompt": "Tämä käyttäjänimi on varattu." }, "display_name": { - "placeholder": "display name" + "placeholder": "näyttönimi" }, "email": { - "placeholder": "email" + "placeholder": "sähköposti" }, "password": { - "placeholder": "password", + "placeholder": "salasana", "require": "Your password needs at least:", "character_limit": "8 characters", "accessibility": { "checked": "checked", "unchecked": "unchecked" }, - "hint": "Your password needs at least eight characters" + "hint": "Salasanassasi on oltava vähintään kahdeksan merkkiä" }, "invite": { - "registration_user_invite_request": "Why do you want to join?" + "registration_user_invite_request": "Miksi haluat liittyä?" } }, "error": { "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", + "username": "Käyttäjänimi", + "email": "Sähköposti", + "password": "Salasana", + "agreement": "Hyväksy", "locale": "Locale", - "reason": "Reason" + "reason": "Syy" }, "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", + "blocked": "%s sisältää estetyn sähköpostipalveluntarjoajan", + "unreachable": "%s ei näytä olevan olemassa", + "taken": "%s on jo käytössä", "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" + "accepted": "%s täytyy hyväksyä", + "blank": "%s vaaditaan", + "invalid": "%s on virheellinen", + "too_long": "%s on liian pitkä", + "too_short": "%s on liian lyhyt", + "inclusion": "%s ei ole tuettu arvo" }, "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" + "username_invalid": "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja", + "username_too_long": "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)", + "email_invalid": "Tämä ei ole kelvollinen sähköpostiosoite", + "password_too_short": "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)" } } }, "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", + "title": "Joitakin perussääntöjä.", + "subtitle": "Nämä säännöt ovat %s -palvelun asettamia.", + "prompt": "Jatkamalla, hyväksyt palvelun %s palveluehdot ja tietosuojakäytönnön.", + "terms_of_service": "käyttöehdot", + "privacy_policy": "tietosuojakäytäntö", "button": { - "confirm": "I Agree" + "confirm": "Hyväksyn" } }, "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", + "title": "Viimeinen asia.", + "subtitle": "Lähetimme juuri sähköpostin osoitteeseen %s, napauta siinä olevaa linkkiä vahvistaaksesi tilisi.", "button": { - "open_email_app": "Open Email App", + "open_email_app": "Avaa sähköpostisovellus", "resend": "Resend" }, "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" + "title": "Tarkista sähköpostisi", + "description": "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole.", + "resend_email": "Lähetä sähköposti uudelleen" }, "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" + "title": "Tarkasta postilaatikkosi.", + "description": "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole.", + "mail": "Sähköposti", + "open_email_client": "Avaa sähköpostisovellus" } }, "home_timeline": { - "title": "Home", + "title": "Koti", "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post..." + "offline": "Yhteydetön", + "new_posts": "Uusia julkaisuja", + "published": "Julkaistu!", + "Publishing": "Julkaistaan julkaisua..." } }, "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + "title": "Löydä tilejä seurattavaksi", + "follow_explain": "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi." }, "compose": { "title": { - "new_post": "New Post", - "new_reply": "New Reply" + "new_post": "Uusi julkaisu", + "new_reply": "Uusi vastaus" }, "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" + "camera": "Ota kuva", + "photo_library": "Kuvakirjasto", + "browse": "Selaa" }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", + "content_input_placeholder": "Kirjoita tai liitä, siitä mitä ajattelet", + "compose_action": "Julkaise", + "replying_to_user": "vastaamassa tilille %s", "attachment": { - "photo": "photo", + "photo": "kuva", "video": "video", "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." + "description_photo": "Kuvaile kuva näkövammaisille...", + "description_video": "Kuvaile video näkövammaisille..." }, "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" + "duration_time": "Kesto: %s", + "thirty_minutes": "30 minuuttia", + "one_hour": "1 tunti", + "six_hours": "6 tuntia", + "one_day": "1 päivä", + "three_days": "3 päivää", + "seven_days": "7 päivää", + "option_number": "Vaihtoehto %ld" }, "content_warning": { - "placeholder": "Write an accurate warning here..." + "placeholder": "Kirjoita tarkka varoitus tähän..." }, "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" + "public": "Julkinen", + "unlisted": "Listaamaton", + "private": "Vain seuraajat", + "direct": "Vain mainitsemani tilit" }, "auto_complete": { "space_to_add": "Space to add" }, "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" + "append_attachment": "Lisää liite", + "append_poll": "Lisää kysely", + "remove_poll": "Poista kysely", + "custom_emoji_picker": "Mukautettu emojivalitsin", + "enable_content_warning": "Ota sisältövaroitus käyttöön", + "disable_content_warning": "Poista sisältövaroitus käytöstä", + "post_visibility_menu": "Julkaisun näkyvyysvalikko" }, "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" + "discard_post": "Hylkää julkaisu", + "publish_post": "Julkaise julkaisu", + "toggle_poll": "Vaihda kysely", + "toggle_content_warning": "Vaihda sisältövaroitus", + "append_attachment_entry": "Lisää liite - %s", + "select_visibility_entry": "Valitse näkyvyys - %s" } }, "profile": { "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" + "posts": "julkaisut", + "following": "seurataan", + "followers": "seuraajat" }, "fields": { - "add_row": "Add Row", + "add_row": "Lisää rivi", "placeholder": { - "label": "Label", - "content": "Content" + "label": "Nimi", + "content": "Sisältö" } }, "segmented_control": { - "posts": "Posts", - "replies": "Replies", + "posts": "Julkaisut", + "replies": "Vastaukset", "posts_and_replies": "Posts and Replies", "media": "Media", "about": "About" @@ -435,8 +435,8 @@ "message": "Confirm to mute %s" }, "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" + "title": "Poista tilin mykistys", + "message": "Vahvista, että haluat poistaa mykistyksen tililtä %s" }, "confirm_block_user": { "title": "Block Account", @@ -455,42 +455,42 @@ } }, "follower": { - "footer": "Followers from other servers are not displayed." + "footer": "Seuraajia muilta palvelimilta ei näytetä." }, "following": { - "footer": "Follows from other servers are not displayed." + "footer": "Seurauksia muilta palvelimilta ei näytetä." }, "search": { - "title": "Search", + "title": "Haku", "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" + "placeholder": "Haku", + "cancel": "Kumoa" }, "recommend": { - "button_text": "See All", + "button_text": "Katso kaikki", "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" + "title": "Trendaavat Mastodonissa", + "description": "Hashtagit, jotka saavat melkoisesti huomiota", + "people_talking": "%s ihmistä puhuu" }, "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" + "title": "Saatat pitää näistä tileistä", + "description": "Haluta ehkä seurata näitä tilejä", + "follow": "Seuraa" } }, "searching": { "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" + "all": "Kaikki", + "people": "Tilit", + "hashtags": "Hashtagit", + "posts": "Julkaisut" }, "empty_state": { - "no_results": "No results" + "no_results": "Ei hakutuloksia" }, - "recent_search": "Recent searches", - "clear": "Clear" + "recent_search": "Viimeaikaiset", + "clear": "Tyhjennä" } }, "discovery": { @@ -504,12 +504,12 @@ "intro": "These are the posts gaining traction in your corner of Mastodon." }, "favorite": { - "title": "Your Favorites" + "title": "Omat suosikit" }, "notification": { "title": { - "Everything": "Everything", - "Mentions": "Mentions" + "Everything": "Kaikki", + "Mentions": "Maininnat" }, "notification_description": { "followed_you": "followed you", @@ -520,22 +520,22 @@ "poll_has_ended": "poll has ended" }, "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" + "show_everything": "Näytä kaikki", + "show_mentions": "Näytä maininnat" } }, "thread": { - "back_title": "Post", - "title": "Post from %s" + "back_title": "Julkaisu", + "title": "Julkaisu tililtä %s" }, "settings": { - "title": "Settings", + "title": "Asetukset", "section": { "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" + "title": "Ulkoasu", + "automatic": "Seuraa järjestelmää", + "light": "Vaalea", + "dark": "Tumma" }, "look_and_feel": { "title": "Look and Feel", @@ -545,75 +545,75 @@ "light": "Light" }, "notifications": { - "title": "Notifications", + "title": "Ilmoitukset", "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", + "follows": "Seuraa minua", + "boosts": "Omien julkaisujen edelleen jaot", + "mentions": "Mainitsee minut", "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" + "anyone": "kuka tahansa", + "follower": "seuraaja", + "follow": "kuka tahansa, jota seuraan", + "noone": "ei kukaan", + "title": "Ilmoita minulle, kun" } }, "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", + "title": "Lisäasetukset", + "true_black_dark_mode": "Todellinen mustan tumma tila", + "disable_avatar_animation": "Poista käytöstä animoidut avatarit", + "disable_emoji_animation": "Poista käytöstä animoidut emojit", + "using_default_browser": "Käytä oletusselainta linkkien avaamiseen", "open_links_in_mastodon": "Open links in Mastodon" }, "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" + "title": "Tylsä alue", + "account_settings": "Tiliasetukset", + "terms": "Palveluehdot", + "privacy": "Tietosuojakäytäntö" }, "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" + "title": "Varovainen alue", + "clear": "Tyhjennä median välimuisti", + "signout": "Kirjaudu ulos" } }, "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + "mastodon_description": "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %s (%s)" }, "keyboard": { - "close_settings_window": "Close Settings Window" + "close_settings_window": "Sulje asetukset" } }, "report": { "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", + "title": "Ilmianna %s", + "step1": "Vaihe 1/2", + "step2": "Vaihe 2/2", + "content1": "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?", + "content2": "Onko valvojien syytä tietää tästä ilmiannosta?", "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", + "send": "Lähetä ilmianto", + "skip_to_send": "Lähetä ilman kommentteja", + "text_placeholder": "Kirjoita tai liitä lisäkommentteja", "reported": "REPORTED" }, "preview": { "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" + "close_preview": "Sulje esikatselu", + "show_next": "Näytä seuraava", + "show_previous": "Näytä edellinen" } }, "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" + "tab_bar_hint": "Nykyinen valittu profiili: %s. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan", + "dismiss_account_switcher": "Sulje tilin vaihtaja", + "add_account": "Lisää tili" }, "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" + "new_in_mastodon": "Uutta Mastodonissa", + "multiple_account_switch_intro_description": "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna.", + "accessibility_hint": "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla" } } } \ No newline at end of file From 8b4738b1c8c491385e05c9125c25994696be76ad Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 00:07:40 +0200 Subject: [PATCH 023/571] New translations ios-infoPlist.json (Finnish) --- .../StringsConvertor/input/fi_FI/ios-infoPlist.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json b/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json index c6db73de0..eb389f3b3 100644 --- a/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json @@ -1,6 +1,6 @@ { - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" + "NSCameraUsageDescription": "Käytetään kuvan ottamiseen julkaisua varten", + "NSPhotoLibraryAddUsageDescription": "Käytetään kuvan tallentamiseen kuvakirjastoon", + "NewPostShortcutItemTitle": "Uusi julkaisu", + "SearchShortcutItemTitle": "Haku" } From da08892a1812d8f07ccd291827d59bc3e2f05132 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 00:07:41 +0200 Subject: [PATCH 024/571] New translations Localizable.stringsdict (Finnish) --- .../input/fi_FI/Localizable.stringsdict | 100 +++++++++--------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict b/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict index 503ff9dbd..43231214a 100644 --- a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey ld one - 1 unread notification + 1 lukematon ilmoitus other - %ld unread notification + %ld lukematonta ilmoitusta a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + Syöterajoitus ylittyy %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -29,15 +29,15 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 merkki other - %ld characters + %ld merkkiä a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + Syöterajoitus ylittyy %#@character_count@ päästä character_count NSStringFormatSpecTypeKey @@ -45,9 +45,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 merkki other - %ld characters + %ld merkkiä plural.count.metric_formatted.post @@ -61,9 +61,9 @@ NSStringFormatValueTypeKey ld one - post + julkaisu other - posts + julkaisut plural.count.post @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 post + 1 julkaisu other - %ld posts + %ld julkaisua plural.count.favorite @@ -93,9 +93,9 @@ NSStringFormatValueTypeKey ld one - 1 favorite + 1 suosikki other - %ld favorites + %ld suosikkia plural.count.reblog @@ -109,9 +109,9 @@ NSStringFormatValueTypeKey ld one - 1 reblog + 1 edelleen jako other - %ld reblogs + %ld edelleen jakoa plural.count.reply @@ -141,9 +141,9 @@ NSStringFormatValueTypeKey ld one - 1 vote + 1 ääni other - %ld votes + %ld ääntä plural.count.voter @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 voter + 1 vastaaja other - %ld voters + %ld vastaajaa plural.people_talking @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 people talking + 1 ihminen puhuu other - %ld people talking + %ld ihmistä puhuu plural.count.following @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 following + 1 seurataan other - %ld following + %ld seurataan plural.count.follower @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 seuraaja other - %ld followers + %ld seuraajaa date.year.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + 1 vuosi jäljellä other - %ld years left + %ld vuotta jäljellä date.month.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + 1 kuukausi jäljellä other - %ld months left + %ld kuukautta jäljellä date.day.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + 1 päivä jäljellä other - %ld days left + %ld päivää jäljellä date.hour.left @@ -269,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + 1 tunti jäljellä other - %ld hours left + %ld tuntia jäljellä date.minute.left @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + 1 minuutti jäljellä other - %ld minutes left + %ld minuuttia jäljellä date.second.left @@ -301,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1 second left + 1 sekuntti other - %ld seconds left + %ld sekunttia jäljellä date.year.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + 1v sitten other - %ldy ago + %ldv sitten date.month.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1M ago + 1kk sitten other - %ldM ago + %ldkk sitten date.day.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + 1pv sitten other - %ldd ago + %ldpv sitten date.hour.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + 1t sitten other - %ldh ago + %ldt sitten date.minute.ago.abbr @@ -381,9 +381,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + 1min sitten other - %ldm ago + %ldmin sitten date.second.ago.abbr @@ -397,9 +397,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + 1s sitten other - %lds ago + %lds sitten From a099e474b4d6a8ab8e1087a8e665180597e75c60 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 00:07:42 +0200 Subject: [PATCH 025/571] New translations Intents.strings (Finnish) --- .../Intents/input/fi_FI/Intents.strings | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings index 6877490ba..1be213d45 100644 --- a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Julkaise Mastodonissa"; -"751xkl" = "Text Content"; +"751xkl" = "Tekstisisältö"; -"CsR7G2" = "Post on Mastodon"; +"CsR7G2" = "Julkaise Mastodonissa"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Mitä sisältöä julkaista?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Julkaiseminen epäonnistui"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Epäonnistumisen syy"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; -"RxSqsb" = "Post"; +"RxSqsb" = "Julkaisu"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Julkaise ${content} Mastodonissa"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Julkaisu"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Näkyvyys"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Julkaisun näkyvyys"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, julkinen"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; -"dUyuGg" = "Post on Mastodon"; +"dUyuGg" = "Julkaise Mastodonissa"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Julkinen"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Vain seuraajat"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; From 9c6bed3a28bb19af67cddce94fbaca21b56403a3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 00:07:43 +0200 Subject: [PATCH 026/571] New translations Intents.stringsdict (Finnish) --- .../Intents/input/fi_FI/Intents.stringsdict | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict index 18422c772..7825b778e 100644 --- a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict +++ b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict @@ -5,7 +5,7 @@ There are ${count} options matching ‘${content}’. - 2 NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. + On %#@count_option@, joka/jotka vastaavat sisältöön ‘${content}’. count_option NSStringFormatSpecTypeKey @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey %ld one - 1 option + 1 vaihtoehto other - %ld options + %ld vaihtoehtoa There are ${count} options matching ‘${visibility}’. NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. + On vaihtoehtoa %#@count_option@, joka/jotka vastaavat näkyvyyteen ‘${visibility}’. count_option NSStringFormatSpecTypeKey @@ -29,9 +29,9 @@ NSStringFormatValueTypeKey %ld one - 1 option + 1 vaihtoehto other - %ld options + %ld vaihtoehtoa From c90468aba8bd74b15035de8aabc193e0b0940e37 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 10:48:53 +0200 Subject: [PATCH 027/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 55babe802..570794eec 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -266,13 +266,13 @@ }, "password": { "placeholder": "รหัสผ่าน", - "require": "รหัสผ่านของคุณต้องมีอย่างน้อย:", + "require": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:", "character_limit": "8 ตัวอักษร", "accessibility": { "checked": "กาเครื่องหมายแล้ว", "unchecked": "ไม่ได้กาเครื่องหมาย" }, - "hint": "รหัสผ่านของคุณต้องมีอย่างน้อยแปดตัวอักษร" + "hint": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อยแปดตัวอักษร" }, "invite": { "registration_user_invite_request": "ทำไมคุณจึงต้องการเข้าร่วม?" From 71a6366f1bec8003afd1acb23a56e7fe35278ed3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 13:04:04 +0200 Subject: [PATCH 028/571] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd_GB/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index fc9270c58..e3ff7c12d 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -498,7 +498,7 @@ "posts": "Postaichean", "hashtags": "Tagaichean hais", "news": "Naidheachdan", - "community": "Community", + "community": "Coimhearsnachd", "for_you": "Dhut-sa" }, "intro": "Seo na postaichean fèillmhor ’nad cheàrnaidh de Mhastodon." From 0d540fe2c775a914769c8cc6d23abade3b10c076 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 22:37:34 +0200 Subject: [PATCH 029/571] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index fd25af086..e77dc4726 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -56,7 +56,7 @@ "controls": { "actions": { "back": "戻る", - "next": "次", + "next": "次へ", "previous": "前", "open": "開く", "add": "追加", @@ -207,7 +207,7 @@ "scene": { "welcome": { "slogan": "ソーシャルネットワーキングを、あなたの手の中に.", - "get_started": "Get Started", + "get_started": "はじめる", "log_in": "ログイン" }, "server_picker": { From 023c7fe5eeb317a511e8e00acc7d38f04b2f906c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 1 May 2022 23:33:15 +0200 Subject: [PATCH 030/571] New translations Localizable.stringsdict (Japanese) --- .../StringsConvertor/input/ja_JP/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict index 8dfc95079..95c35172e 100644 --- a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict @@ -153,7 +153,7 @@ NSStringFormatValueTypeKey ld other - %ld people talking + %ld人が投稿 plural.count.following From dddacf325b7b37c1c91972e4f2198077bd3633a6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 2 May 2022 19:03:05 +0200 Subject: [PATCH 031/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 570794eec..2f960c776 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -293,7 +293,7 @@ "taken": "%s ถูกใช้งานแล้ว", "reserved": "%s เป็นคำสงวน", "accepted": "ต้องยอมรับ %s", - "blank": "ต้องมี %s", + "blank": "ต้องการ %s", "invalid": "%s ไม่ถูกต้อง", "too_long": "%s ยาวเกินไป", "too_short": "%s สั้นเกินไป", From ca1103f748951f8a245988de979c719691baa92f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 3 May 2022 07:20:04 +0200 Subject: [PATCH 032/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl_ES/app.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index 0c5cbc038..c97add3cf 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -195,18 +195,18 @@ "header": { "no_status_found": "Non se atopa a publicación", "blocking_warning": "Non podes ver o perfil da usuaria\nata que a desbloquees.\nAsí ven outras o teu perfil.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." + "user_blocking_warning": "Non podes ver o perfil de %s\nata que o desbloquees.\nAsí se ve o teu perfil.", + "blocked_warning": "Non podes ver o perfil desta usuaria\nata que te desbloquee.", + "user_blocked_warning": "Non podes ver o perfil de %s\nata que te desbloquee.", + "suspended_warning": "Esta usuaria foi suspendida.", + "user_suspended_warning": "A conta de %s foi suspendida." } } } }, "scene": { "welcome": { - "slogan": "Social networking\nback in your hands.", + "slogan": "Comunicación social\nde volta ás túas mans.", "get_started": "Comezar", "log_in": "Acceder" }, @@ -301,14 +301,14 @@ }, "special": { "username_invalid": "O nome de usuaria só pode ter caracteres alfanuméricos e trazos baixos", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" + "username_too_long": "O nome de usuaria é demasiado longo (maior de 30 caracteres)", + "email_invalid": "Este non é un enderezo válido de email", + "password_too_short": "O contrasinal é demasiado curto (debe ter 8 caracteres como mínimo)" } } }, "server_rules": { - "title": "Some ground rules.", + "title": "Algunhas regras básicas.", "subtitle": "These are set and enforced by the %s moderators.", "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", "terms_of_service": "terms of service", From c1fe2f833575da974a757763ba6daacf47984bb9 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 3 May 2022 08:15:16 +0200 Subject: [PATCH 033/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl_ES/app.json | 80 +++++++++---------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index c97add3cf..ca1d824dd 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -309,71 +309,71 @@ }, "server_rules": { "title": "Algunhas regras básicas.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", + "subtitle": "Son establecidas e aplicadas pola moderación de %s.", + "prompt": "Ao continuar, acatas os termos do servizo e a política de privacidade para %s.", + "terms_of_service": "termos do servizo", + "privacy_policy": "polícica de privacidade", "button": { - "confirm": "I Agree" + "confirm": "Acepto" } }, "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", + "title": "O último detalle.", + "subtitle": "Preme na ligazón que che enviamos ao email para verificar a conta.", "button": { - "open_email_app": "Open Email App", - "resend": "Resend" + "open_email_app": "Abrir app de email", + "resend": "Reenviar" }, "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" + "title": "Revisa o teu correo", + "description": "Comproba que o enderezo de email é correcto e que non vaia directo ao cartafol de spam.", + "resend_email": "Volver enviar o correo" }, "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" + "title": "Mira na caixa de correo.", + "description": "Enviámosche un email. Se non aparece, mira no cartafol do lixo.", + "mail": "Correo", + "open_email_client": "Abrir cliente de email" } }, "home_timeline": { - "title": "Home", + "title": "Inicio", "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post..." + "offline": "Sen conexión", + "new_posts": "Novas publicacións", + "published": "Publicado!", + "Publishing": "Publicando..." } }, "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + "title": "Atopar persoas para seguir", + "follow_explain": "Cando sigas a alguén verás as súas publicacións na cronoloxía de inicio." }, "compose": { "title": { - "new_post": "New Post", - "new_reply": "New Reply" + "new_post": "Nova publicación", + "new_reply": "Nova resposta" }, "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" + "camera": "Facer foto", + "photo_library": "Biblioteca de fotos", + "browse": "Explorar" }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", + "content_input_placeholder": "Escribe o que che apeteza", + "compose_action": "Publicar", + "replying_to_user": "en resposta a %s", "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." + "photo": "foto", + "video": "vídeo", + "attachment_broken": "Este %s está estragado e non pode\nser subido a Mastodon.", + "description_photo": "Describe a foto para persoas con problemas visuais...", + "description_video": "Describe o vídeo para persoas con problemas visuais..." }, "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", + "duration_time": "Duración: %s", + "thirty_minutes": "30 minutos", + "one_hour": "1 Hora", + "six_hours": "6 Horas", "one_day": "1 Día", "three_days": "3 Días", "seven_days": "7 Días", From fedb8680f2f2f8b98168d83f29865a2fa4676c54 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 3 May 2022 18:40:33 +0200 Subject: [PATCH 034/571] New translations app.json (German) --- Localization/StringsConvertor/input/de_DE/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index 86b4fdedb..52f35a8de 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -612,7 +612,7 @@ }, "wizard": { "new_in_mastodon": "Neu in Mastodon", - "multiple_account_switch_intro_description": "Wechsel zwischen mehreren Konten durch drücken der Profil-Schaltfläche.", + "multiple_account_switch_intro_description": "Wechsel zwischen mehreren Konten durch Drücken der Profil-Schaltfläche.", "accessibility_hint": "Doppeltippen, um diesen Assistenten zu schließen" } } From 9c7e23f6ca518bdb7ca88977c57d4d09f402f884 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 03:47:21 +0200 Subject: [PATCH 035/571] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index e77dc4726..e9a2f5efc 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -501,7 +501,7 @@ "community": "コミュニティ", "for_you": "おすすめ" }, - "intro": "These are the posts gaining traction in your corner of Mastodon." + "intro": "あなたのMastodonサーバーで注目を集めている投稿がここに表示されます。" }, "favorite": { "title": "お気に入り" @@ -564,7 +564,7 @@ "disable_avatar_animation": "アバターのアニメーションを無効化する", "disable_emoji_animation": "絵文字のアニメーションを無効化する", "using_default_browser": "既定のブラウザでリンクを開く", - "open_links_in_mastodon": "Open links in Mastodon" + "open_links_in_mastodon": "Mastodonでリンクを開く" }, "boring_zone": { "title": "アプリについて", From 9b86f910ba8161b7a4090a07f88b090d467b75a2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 04:43:53 +0200 Subject: [PATCH 036/571] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/app.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index e9a2f5efc..eff801c5d 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -131,7 +131,7 @@ "content_warning": "コンテンツ警告", "sensitive_content": "Sensitive Content", "media_content_warning": "どこかをタップして表示", - "tap_to_reveal": "Tap to reveal", + "tap_to_reveal": "タップして表示", "poll": { "vote": "投票", "closed": "クローズド" @@ -144,8 +144,8 @@ "unfavorite": "お気に入り登録を取り消す", "menu": "メニュー", "hide": "非表示", - "show_image": "Show image", - "show_gif": "Show GIF", + "show_image": "画像を表示", + "show_gif": "GIFを表示", "show_video_player": "Show video player", "tap_then_hold_to_show_menu": "Tap then hold to show menu" }, From cc31ac0b625cd41b21033266c770d16566a3fdf0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 06:05:14 +0200 Subject: [PATCH 037/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl_ES/app.json | 100 +++++++++--------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index ca1d824dd..12881f0b6 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -499,90 +499,90 @@ "hashtags": "Cancelos", "news": "Novas", "community": "Comunidade", - "for_you": "For You" + "for_you": "Para ti" }, - "intro": "These are the posts gaining traction in your corner of Mastodon." + "intro": "Estas son as publicacións en voga no teu recuncho de Mastodon." }, "favorite": { - "title": "Your Favorites" + "title": "Publicacións Favoritas" }, "notification": { "title": { - "Everything": "Everything", - "Mentions": "Mentions" + "Everything": "Todo", + "Mentions": "Mencións" }, "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" + "followed_you": "séguete", + "favorited_your_post": "marcou a túa publicación como favorita", + "reblogged_your_post": "compartiu a túa publicación", + "mentioned_you": "mencionoute", + "request_to_follow_you": "solicitou seguirte", + "poll_has_ended": "a enquisa rematou" }, "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" + "show_everything": "Mostrar Todo", + "show_mentions": "Mostrar mencións" } }, "thread": { - "back_title": "Post", - "title": "Post from %s" + "back_title": "Publicación", + "title": "Publicación de %s" }, "settings": { - "title": "Settings", + "title": "Axustes", "section": { "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" + "title": "Aparencia", + "automatic": "Automático", + "light": "Sempre claro", + "dark": "Sempre escuro" }, "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" + "title": "Aparencia", + "use_system": "Seguir o sistema", + "really_dark": "Realmente escuro", + "sorta_dark": "Algo escuro", + "light": "Claro" }, "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", + "title": "Notificacións", + "favorites": "Favorece a miña publicación", + "follows": "Me segue", + "boosts": "Promove a miña publicación", + "mentions": "Me menciona", "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" + "anyone": "calquera", + "follower": "unha seguidora", + "follow": "alguén a quen sigo", + "noone": "ninguén", + "title": "Avisarme cando" } }, "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" + "title": "Preferencias", + "true_black_dark_mode": "Modo negro verdadeiro", + "disable_avatar_animation": "Desactivar avatares animados", + "disable_emoji_animation": "Desactivar emojis animados", + "using_default_browser": "Usar navegador por defecto para as ligazóns", + "open_links_in_mastodon": "Abrir ligazóns en Mastodon" }, "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" + "title": "A zona aburrida", + "account_settings": "Axustes da conta", + "terms": "Termos do Servizo", + "privacy": "Política de Privacidade" }, "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" + "title": "A zona picante", + "clear": "Limpar caché multimedia", + "signout": "Pechar sesión" } }, "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + "mastodon_description": "Mastodon é software de código aberto. Podes informar de fallos en GitHub en %s (%s)" }, "keyboard": { - "close_settings_window": "Close Settings Window" + "close_settings_window": "Pechar ventá de axustes" } }, "report": { From b73d3479d7a0c3cb397b9411cc032203e3cb3c57 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 06:05:15 +0200 Subject: [PATCH 038/571] New translations Intents.strings (Galician) --- .../StringsConvertor/Intents/input/gl_ES/Intents.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings index 6877490ba..f2c1bd52c 100644 --- a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings @@ -22,7 +22,7 @@ "ZbSjzC" = "Visibility"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Visibilidade da publicación"; "apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; From 62c5e7e159c9f8a1e6f0724c576dd53625f36d43 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 07:42:50 +0200 Subject: [PATCH 039/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar_SA/app.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index 4b28b011a..19174618f 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -71,7 +71,7 @@ "cancel": "إلغاء", "discard": "تجاهُل", "try_again": "المُحاولة مرة أُخرى", - "take_photo": "التقاط صورة", + "take_photo": "اِلتِقاطُ صُورَة", "save_photo": "حفظ الصورة", "copy_photo": "نسخ الصورة", "sign_in": "تسجيل الدخول", @@ -355,11 +355,11 @@ "new_reply": "رَدٌّ جديد" }, "media_selection": { - "camera": "إلتقاط صورة", - "photo_library": "مكتبة الصور", - "browse": "تصفح" + "camera": "اِلتِقاطُ صُورَة", + "photo_library": "مَكتَبَةُ الصُّوَر", + "browse": "تَصَفَّح" }, - "content_input_placeholder": "أخبِرنا بِما يَجُولُ فِي ذِهنَك", + "content_input_placeholder": "عَبِّر عَمَّ يَجُولُ فِي ذِهنِك", "compose_action": "نَشر", "replying_to_user": "رَدًا على %s", "attachment": { From 504629d87c2734dc38e965ac6a12c68f950d4bcf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 16:49:34 +0200 Subject: [PATCH 040/571] New translations Localizable.stringsdict (Welsh) --- .../StringsConvertor/input/cy_GB/Localizable.stringsdict | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict index e0f1e0f2c..c6c926809 100644 --- a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict @@ -85,17 +85,17 @@ NSStringFormatValueTypeKey ld zero - posts + post one post two - posts + postiau few posts many posts other - posts + postiau plural.count.post From 73c078a6a2571c8d9045201ff7af0b39729148ce Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 17:52:07 +0200 Subject: [PATCH 041/571] New translations app.json (Welsh) --- Localization/StringsConvertor/input/cy_GB/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/cy_GB/app.json b/Localization/StringsConvertor/input/cy_GB/app.json index 50512250d..4d26232c5 100644 --- a/Localization/StringsConvertor/input/cy_GB/app.json +++ b/Localization/StringsConvertor/input/cy_GB/app.json @@ -138,7 +138,7 @@ }, "actions": { "reply": "Reply", - "reblog": "Reblog", + "reblog": "Hybwch", "unreblog": "Undo reblog", "favorite": "Favorite", "unfavorite": "Unfavorite", @@ -411,7 +411,7 @@ }, "profile": { "dashboard": { - "posts": "posts", + "posts": "postiadau", "following": "following", "followers": "followers" }, @@ -423,9 +423,9 @@ } }, "segmented_control": { - "posts": "Posts", + "posts": "Postiadau", "replies": "Replies", - "posts_and_replies": "Posts and Replies", + "posts_and_replies": "Postiadau ac Atebion", "media": "Media", "about": "About" }, @@ -484,7 +484,7 @@ "all": "All", "people": "People", "hashtags": "Hashtags", - "posts": "Posts" + "posts": "Postiadau" }, "empty_state": { "no_results": "No results" @@ -495,7 +495,7 @@ }, "discovery": { "tabs": { - "posts": "Posts", + "posts": "Postiadau", "hashtags": "Hashtags", "news": "News", "community": "Community", From 56ae6f9faaaac7535c10b84a5d735a3795e50385 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 17:52:08 +0200 Subject: [PATCH 042/571] New translations ios-infoPlist.json (Welsh) --- Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json b/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json index c6db73de0..26ba1d811 100644 --- a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json @@ -2,5 +2,5 @@ "NSCameraUsageDescription": "Used to take photo for post status", "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" + "SearchShortcutItemTitle": "Chwilio" } From 5a7e70ce1cfe0ac79f6807e8e2d2c13f1f6f00d4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 19:53:48 +0200 Subject: [PATCH 043/571] New translations ios-infoPlist.json (Welsh) --- Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json b/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json index 26ba1d811..ee0c5bfee 100644 --- a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json @@ -1,6 +1,6 @@ { "NSCameraUsageDescription": "Used to take photo for post status", "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", + "NewPostShortcutItemTitle": "Post Newydd", "SearchShortcutItemTitle": "Chwilio" } From 170d514126706353295d8722ed4911e7a456921c Mon Sep 17 00:00:00 2001 From: vollkorntomate Date: Wed, 4 May 2022 20:05:03 +0200 Subject: [PATCH 044/571] Improve tab bar icon vertical alignment --- .../Scene/Root/MainTab/MainTabBarController.swift | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift index 7ea748a60..f9bdf9f0f 100644 --- a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift +++ b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift @@ -147,10 +147,10 @@ extension MainTabBarController { let viewControllers: [UIViewController] = tabs.map { tab in let viewController = tab.viewController(context: context, coordinator: coordinator) viewController.tabBarItem.tag = tab.tag - viewController.tabBarItem.title = tab.title - viewController.tabBarItem.image = tab.image + viewController.tabBarItem.title = nil + viewController.tabBarItem.image = tab.image.imageWithoutBaseline() viewController.tabBarItem.accessibilityLabel = tab.title - viewController.tabBarItem.largeContentSizeImage = tab.largeImage + viewController.tabBarItem.largeContentSizeImage = tab.largeImage.imageWithoutBaseline() viewController.tabBarItem.imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -6, right: 0) return viewController } @@ -224,8 +224,8 @@ extension MainTabBarController { } ?? false let image = hasUnreadPushNotification ? UIImage(systemName: "bell.badge.fill")! : UIImage(systemName: "bell.fill")! - notificationViewController.tabBarItem.image = image - notificationViewController.navigationController?.tabBarItem.image = image + notificationViewController.tabBarItem.image = image.imageWithoutBaseline() + notificationViewController.navigationController?.tabBarItem.image = image.imageWithoutBaseline() } .store(in: &disposeBag) @@ -371,7 +371,7 @@ extension MainTabBarController { view.addSubview(self.avatarButton) NSLayoutConstraint.activate([ self.avatarButton.centerXAnchor.constraint(equalTo: view.centerXAnchor), - self.avatarButton.centerYAnchor.constraint(equalTo: anchorImageView.centerYAnchor, constant: 1.5), // 1.5pt offset + self.avatarButton.centerYAnchor.constraint(equalTo: view.centerYAnchor), self.avatarButton.widthAnchor.constraint(equalToConstant: MainTabBarController.avatarButtonSize.width).priority(.required - 1), self.avatarButton.heightAnchor.constraint(equalToConstant: MainTabBarController.avatarButtonSize.height).priority(.required - 1), ]) From 3c3efba45f3c5aa8f1a62370a49c7808619082ce Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 4 May 2022 20:57:24 +0200 Subject: [PATCH 045/571] New translations Localizable.stringsdict (Welsh) --- .../StringsConvertor/input/cy_GB/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict index c6c926809..94759d781 100644 --- a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict @@ -47,7 +47,7 @@ many %ld characters other - %ld characters + %ld nodau a11y.plural.count.input_limit_remains From 1ef2e1122443b23e566c4049d044fb9c6c57fee8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 5 May 2022 19:30:33 +0200 Subject: [PATCH 046/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 2f960c776..29086122d 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -221,7 +221,7 @@ "academia": "วิชาการ", "activism": "กิจกรรมเพื่อการเปลี่ยนแปลง", "food": "อาหาร", - "furry": "สรรพสัตว์", + "furry": "สัตว์ขนยาว", "games": "เกม", "general": "ทั่วไป", "journalism": "การเขียนข่าว", From f385658d7022eb8e216edebc9911ad876272aabd Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 14:29:34 +0800 Subject: [PATCH 047/571] feat: update tabBar UI --- .../xcschemes/xcschememanagement.plist | 6 +- Mastodon/Coordinator/SceneCoordinator.swift | 4 +- .../Root/ContentSplitViewController.swift | 3 +- .../Root/MainTab/MainTabBarController.swift | 198 ++++++++++++++---- .../Scene/Root/RootSplitViewController.swift | 6 +- .../Scene/Root/Sidebar/SidebarViewModel.swift | 55 +++-- .../Sidebar/View/SidebarListContentView.swift | 13 +- .../bell.badge.fill.imageset/Contents.json | 15 ++ .../bell.badge.fill.pdf | 94 +++++++++ .../bell.badge.imageset/Contents.json | 15 ++ .../bell.badge.imageset/bell.badge.pdf | 112 ++++++++++ .../bell.fill.imageset/Contents.json | 15 ++ .../bell.fill.imageset/bell.fill.pdf | 88 ++++++++ .../bell.imageset/Contents.json | 15 ++ .../ObjectsAndTools/bell.imageset/bell.pdf | 106 ++++++++++ .../gear.imageset/Contents.json | 15 ++ .../ObjectsAndTools/gear.imageset/gear.pdf | 155 ++++++++++++++ .../house.fill.imageset/Contents.json | 15 ++ .../house.fill.imageset/Home-fill.pdf | 85 ++++++++ .../house.imageset/Contents.json | 15 ++ .../ObjectsAndTools/house.imageset/Home.pdf | 105 ++++++++++ .../Contents.json | 15 ++ .../Search-Fill.pdf | 83 ++++++++ .../magnifyingglass.imageset/Contents.json | 15 ++ .../magnifyingglass.imageset/Search.pdf | 83 ++++++++ .../square.and.pencil.imageset/Contents.json | 15 ++ .../square.and.pencil.pdf | 93 ++++++++ .../MastodonAsset/Generated/Assets.swift | 10 + .../MastodonUI/Extension/UIImage.swift | 17 ++ 29 files changed, 1399 insertions(+), 67 deletions(-) create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/bell.badge.fill.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/bell.badge.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/bell.fill.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/bell.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/gear.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Home-fill.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Home.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Search-Fill.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Search.pdf create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/square.and.pencil.pdf create mode 100644 MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 979898bbd..1ac4532e7 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 28 + 19 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 27 + 21 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 22 + 20 SuppressBuildableAutocreation diff --git a/Mastodon/Coordinator/SceneCoordinator.swift b/Mastodon/Coordinator/SceneCoordinator.swift index 1f8030014..819872c70 100644 --- a/Mastodon/Coordinator/SceneCoordinator.swift +++ b/Mastodon/Coordinator/SceneCoordinator.swift @@ -368,10 +368,10 @@ extension SceneCoordinator { splitViewController?.contentSplitViewController.currentSupplementaryTab = tab splitViewController?.compactMainTabBarViewController.selectedIndex = tab.rawValue - splitViewController?.compactMainTabBarViewController.currentTab.value = tab + splitViewController?.compactMainTabBarViewController.currentTab = tab tabBarController.selectedIndex = tab.rawValue - tabBarController.currentTab.value = tab + tabBarController.currentTab = tab } } diff --git a/Mastodon/Scene/Root/ContentSplitViewController.swift b/Mastodon/Scene/Root/ContentSplitViewController.swift index 5a34e1ed8..e3a6952f8 100644 --- a/Mastodon/Scene/Root/ContentSplitViewController.swift +++ b/Mastodon/Scene/Root/ContentSplitViewController.swift @@ -83,7 +83,8 @@ extension ContentSplitViewController { .sink(receiveValue: { [weak self] tab in guard let self = self else { return } self.mainTabBarController.selectedIndex = tab.rawValue - self.mainTabBarController.currentTab.value = tab + self.mainTabBarController.currentTab = tab + self.sidebarViewController.viewModel.currentTab = tab }) .store(in: &disposeBag) } diff --git a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift index f9bdf9f0f..d6eea39da 100644 --- a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift +++ b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift @@ -22,14 +22,29 @@ class MainTabBarController: UITabBarController { weak var context: AppContext! weak var coordinator: SceneCoordinator! + let composeButttonShadowBackgroundContainer = ShadowBackgroundContainer() + let composeButton: UIButton = { + let button = UIButton() + button.setImage(Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate), for: .normal) + button.setBackgroundImage(UIImage.placeholder(color: Asset.Colors.Label.primary.color), for: .normal) + button.setBackgroundImage(UIImage.placeholder(color: Asset.Colors.Label.primary.color.withAlphaComponent(0.8)), for: .highlighted) + button.tintColor = Asset.Colors.Label.primaryReverse.color + button.contentEdgeInsets = UIEdgeInsets(top: 6, left: 12, bottom: 6, right: 12) + button.layer.masksToBounds = true + button.layer.cornerCurve = .continuous + button.layer.cornerRadius = 8 + return button + }() + static let avatarButtonSize = CGSize(width: 25, height: 25) let avatarButton = CircleAvatarButton() - var currentTab = CurrentValueSubject(.home) + @Published var currentTab: Tab = .home enum Tab: Int, CaseIterable { case home case search + case compose case notification case me @@ -41,6 +56,7 @@ class MainTabBarController: UITabBarController { switch self { case .home: return L10n.Common.Controls.Tabs.home case .search: return L10n.Common.Controls.Tabs.search + case .compose: return L10n.Common.Controls.Actions.compose case .notification: return L10n.Common.Controls.Tabs.notification case .me: return L10n.Common.Controls.Tabs.profile } @@ -48,28 +64,41 @@ class MainTabBarController: UITabBarController { var image: UIImage { switch self { - case .home: return UIImage(systemName: "house.fill")! - case .search: return UIImage(systemName: "magnifyingglass")! - case .notification: return UIImage(systemName: "bell.fill")! + case .home: return Asset.ObjectsAndTools.house.image.withRenderingMode(.alwaysTemplate) + case .search: return Asset.ObjectsAndTools.magnifyingglass.image.withRenderingMode(.alwaysTemplate) + case .compose: return Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate) + case .notification: return Asset.ObjectsAndTools.bell.image.withRenderingMode(.alwaysTemplate) + case .me: return UIImage(systemName: "person")! + } + } + + var selectedImage: UIImage { + switch self { + case .home: return Asset.ObjectsAndTools.houseFill.image.withRenderingMode(.alwaysTemplate) + case .search: return Asset.ObjectsAndTools.magnifyingglassFill.image.withRenderingMode(.alwaysTemplate) + case .compose: return Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate) + case .notification: return Asset.ObjectsAndTools.bellFill.image.withRenderingMode(.alwaysTemplate) case .me: return UIImage(systemName: "person.fill")! } } var largeImage: UIImage { switch self { - case .home: return UIImage(systemName: "house.fill", withConfiguration: UIImage.SymbolConfiguration(pointSize: 80))! - case .search: return UIImage(systemName: "magnifyingglass", withConfiguration: UIImage.SymbolConfiguration(pointSize: 80))! - case .notification: return UIImage(systemName: "bell.fill", withConfiguration: UIImage.SymbolConfiguration(pointSize: 80))! - case .me: return UIImage(systemName: "person.fill", withConfiguration: UIImage.SymbolConfiguration(pointSize: 80))! + case .home: return Asset.ObjectsAndTools.house.image.withRenderingMode(.alwaysTemplate).resized(size: CGSize(width: 80, height: 80)) + case .search: return Asset.ObjectsAndTools.magnifyingglass.image.withRenderingMode(.alwaysTemplate).resized(size: CGSize(width: 80, height: 80)) + case .compose: return Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate).resized(size: CGSize(width: 80, height: 80)) + case .notification: return Asset.ObjectsAndTools.bell.image.withRenderingMode(.alwaysTemplate).resized(size: CGSize(width: 80, height: 80)) + case .me: return UIImage(systemName: "person", withConfiguration: UIImage.SymbolConfiguration(pointSize: 80))! } } var sidebarImage: UIImage { switch self { - case .home: return UIImage(systemName: "house")! - case .search: return UIImage(systemName: "magnifyingglass")! - case .notification: return UIImage(systemName: "bell")! - case .me: return UIImage(systemName: "person.fill")! + case .home: return Asset.ObjectsAndTools.house.image.withRenderingMode(.alwaysTemplate) + case .search: return Asset.ObjectsAndTools.magnifyingglass.image.withRenderingMode(.alwaysTemplate) + case .compose: return Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate) + case .notification: return Asset.ObjectsAndTools.bell.image.withRenderingMode(.alwaysTemplate) + case .me: return UIImage(systemName: "person")! } } @@ -86,6 +115,8 @@ class MainTabBarController: UITabBarController { _viewController.context = context _viewController.coordinator = coordinator viewController = _viewController + case .compose: + viewController = UIViewController() case .notification: let _viewController = NotificationViewController() _viewController.context = context @@ -149,18 +180,31 @@ extension MainTabBarController { viewController.tabBarItem.tag = tab.tag viewController.tabBarItem.title = nil viewController.tabBarItem.image = tab.image.imageWithoutBaseline() - viewController.tabBarItem.accessibilityLabel = tab.title + viewController.tabBarItem.selectedImage = tab.selectedImage.imageWithoutBaseline() viewController.tabBarItem.largeContentSizeImage = tab.largeImage.imageWithoutBaseline() + viewController.tabBarItem.accessibilityLabel = tab.title viewController.tabBarItem.imageInsets = UIEdgeInsets(top: 6, left: 0, bottom: -6, right: 0) + + switch tab { + case .compose: + viewController.tabBarItem.isEnabled = false + default: + break + } + return viewController } _viewControllers = viewControllers setViewControllers(viewControllers, animated: false) selectedIndex = 0 - - UITabBarItem.appearance().setTitleTextAttributes([.foregroundColor : UIColor.clear], for: .normal) - UITabBarItem.appearance().setTitleTextAttributes([.foregroundColor : UIColor.clear], for: .highlighted) - UITabBarItem.appearance().setTitleTextAttributes([.foregroundColor : UIColor.clear], for: .selected) + + let tabBarItemAppearance = UITabBarItemAppearance() + tabBarItemAppearance.configureWithDefault(for: .stacked) + tabBarItemAppearance.normal.iconColor = Asset.Colors.Label.primary.color + tabBar.standardAppearance.stackedItemPositioning = .centered + tabBar.standardAppearance.stackedLayoutAppearance = tabBarItemAppearance + tabBar.standardAppearance.inlineLayoutAppearance = tabBarItemAppearance + tabBar.standardAppearance.compactInlineLayoutAppearance = tabBarItemAppearance context.apiService.error .receive(on: DispatchQueue.main) @@ -208,13 +252,15 @@ extension MainTabBarController { } .store(in: &disposeBag) - // handle push notification. toggle entry when finish fetch latest notification - Publishers.CombineLatest( + // handle push notification. + // toggle entry when finish fetch latest notification + Publishers.CombineLatest3( context.authenticationService.activeMastodonAuthentication, - context.notificationService.unreadNotificationCountDidUpdate + context.notificationService.unreadNotificationCountDidUpdate, + $currentTab ) .receive(on: DispatchQueue.main) - .sink { [weak self] authentication, _ in + .sink { [weak self] authentication, _, currentTab in guard let self = self else { return } guard let notificationViewController = self.notificationViewController else { return } @@ -223,12 +269,19 @@ extension MainTabBarController { return count > 0 } ?? false - let image = hasUnreadPushNotification ? UIImage(systemName: "bell.badge.fill")! : UIImage(systemName: "bell.fill")! + let image: UIImage = { + if currentTab == .notification { + return hasUnreadPushNotification ? Asset.ObjectsAndTools.bellBadgeFill.image.withRenderingMode(.alwaysTemplate) : Asset.ObjectsAndTools.bellFill.image.withRenderingMode(.alwaysTemplate) + } else { + return hasUnreadPushNotification ? Asset.ObjectsAndTools.bellBadge.image.withRenderingMode(.alwaysTemplate) : Asset.ObjectsAndTools.bell.image.withRenderingMode(.alwaysTemplate) + } + }() notificationViewController.tabBarItem.image = image.imageWithoutBaseline() notificationViewController.navigationController?.tabBarItem.image = image.imageWithoutBaseline() } .store(in: &disposeBag) + layoutComposeButton() layoutAvatarButton() $avatarURL @@ -280,7 +333,7 @@ extension MainTabBarController { } .store(in: &disposeBag) - currentTab + $currentTab .receive(on: DispatchQueue.main) .sink { [weak self] tab in guard let self = self else { return } @@ -290,6 +343,8 @@ extension MainTabBarController { updateTabBarDisplay() + composeButton.addTarget(self, action: #selector(MainTabBarController.composeButtonDidPressed(_:)), for: .touchUpInside) + #if DEBUG // Debug Register viewController // Task { @MainActor in @@ -307,23 +362,25 @@ extension MainTabBarController { super.traitCollectionDidChange(previousTraitCollection) updateTabBarDisplay() + updateComposeButtonAppearance() updateAvatarButtonAppearance() } } extension MainTabBarController { - private func updateTabBarDisplay() { - switch traitCollection.horizontalSizeClass { - case .compact: - tabBar.isHidden = false - default: - tabBar.isHidden = true - } + + @objc private func composeButtonDidPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { return } + let composeViewModel = ComposeViewModel( + context: context, + composeKind: .post, + authenticationBox: authenticationBox + ) + coordinator.present(scene: .compose(viewModel: composeViewModel), from: nil, transition: .modal(animated: true, completion: nil)) } -} - -extension MainTabBarController { + @objc private func tabBarLongPressGestureRecognizerHandler(_ sender: UILongPressGestureRecognizer) { guard sender.state == .began else { return } @@ -351,6 +408,57 @@ extension MainTabBarController { } extension MainTabBarController { + + private func updateTabBarDisplay() { + switch traitCollection.horizontalSizeClass { + case .compact: + tabBar.isHidden = false + default: + tabBar.isHidden = true + } + } + + private func layoutComposeButton() { + guard composeButton.superview == nil else { return } + + let _composeTabItem = self.tabBar.items?.first { item in item.tag == Tab.compose.tag } + guard let composeTabItem = _composeTabItem else { return } + guard let view = composeTabItem.value(forKey: "view") as? UIView else { + return + } + + let _anchorImageView = view.subviews.first { subview in subview is UIImageView } as? UIImageView + guard let anchorImageView = _anchorImageView else { + assertionFailure() + return + } + anchorImageView.alpha = 0 + + composeButttonShadowBackgroundContainer.translatesAutoresizingMaskIntoConstraints = false + tabBar.addSubview(composeButttonShadowBackgroundContainer) + NSLayoutConstraint.activate([ + composeButttonShadowBackgroundContainer.centerXAnchor.constraint(equalTo: anchorImageView.centerXAnchor), + composeButttonShadowBackgroundContainer.centerYAnchor.constraint(equalTo: anchorImageView.centerYAnchor), + ]) + composeButttonShadowBackgroundContainer.cornerRadius = composeButton.layer.cornerRadius + + composeButton.translatesAutoresizingMaskIntoConstraints = false + composeButttonShadowBackgroundContainer.addSubview(composeButton) + NSLayoutConstraint.activate([ + composeButton.topAnchor.constraint(equalTo: composeButttonShadowBackgroundContainer.topAnchor), + composeButton.leadingAnchor.constraint(equalTo: composeButttonShadowBackgroundContainer.leadingAnchor), + composeButton.trailingAnchor.constraint(equalTo: composeButttonShadowBackgroundContainer.trailingAnchor), + composeButton.bottomAnchor.constraint(equalTo: composeButttonShadowBackgroundContainer.bottomAnchor), + ]) + composeButton.setContentHuggingPriority(.required - 1, for: .horizontal) + composeButton.setContentHuggingPriority(.required - 1, for: .vertical) + } + + private func updateComposeButtonAppearance() { + composeButton.setBackgroundImage(UIImage.placeholder(color: Asset.Colors.Label.primary.color), for: .normal) + composeButton.setBackgroundImage(UIImage.placeholder(color: Asset.Colors.Label.primary.color.withAlphaComponent(0.8)), for: .highlighted) + } + private func layoutAvatarButton() { guard avatarButton.superview == nil else { return } @@ -370,8 +478,8 @@ extension MainTabBarController { self.avatarButton.translatesAutoresizingMaskIntoConstraints = false view.addSubview(self.avatarButton) NSLayoutConstraint.activate([ - self.avatarButton.centerXAnchor.constraint(equalTo: view.centerXAnchor), - self.avatarButton.centerYAnchor.constraint(equalTo: view.centerYAnchor), + self.avatarButton.centerXAnchor.constraint(equalTo: anchorImageView.centerXAnchor), + self.avatarButton.centerYAnchor.constraint(equalTo: anchorImageView.centerYAnchor), self.avatarButton.widthAnchor.constraint(equalToConstant: MainTabBarController.avatarButtonSize.width).priority(.required - 1), self.avatarButton.heightAnchor.constraint(equalToConstant: MainTabBarController.avatarButtonSize.height).priority(.required - 1), ]) @@ -381,9 +489,10 @@ extension MainTabBarController { } private func updateAvatarButtonAppearance() { - avatarButton.borderColor = currentTab.value == .me ? .label : .systemFill + avatarButton.borderColor = currentTab == .me ? .label : .systemFill avatarButton.setNeedsLayout() } + } extension MainTabBarController { @@ -403,11 +512,12 @@ extension MainTabBarController: UITabBarControllerDelegate { func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) { os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s: select %s", ((#file as NSString).lastPathComponent), #line, #function, viewController.debugDescription) defer { - if let tab = Tab(rawValue: tabBarController.selectedIndex) { - currentTab.value = tab + if let tab = Tab(rawValue: viewController.tabBarItem.tag) { + currentTab = tab } } - guard currentTab.value.rawValue == tabBarController.selectedIndex, + // assert index is as same as the tab rawValue + guard currentTab.rawValue == tabBarController.selectedIndex, let navigationController = viewController as? UINavigationController, navigationController.viewControllers.count == 1, let scrollViewContainer = navigationController.topViewController as? ScrollViewContainer else { @@ -478,7 +588,13 @@ extension MainTabBarController { var switchToTabKeyCommands: [UIKeyCommand] { var commands: [UIKeyCommand] = [] - for (i, tab) in Tab.allCases.enumerated() { + let tabs: [Tab] = [ + .home, + .search, + .notification, + .me + ] + for (i, tab) in tabs.enumerated() { let title = L10n.Common.Controls.Keyboard.Common.switchToTab(tab.title) let input = String(i + 1) let command = UIKeyCommand( @@ -584,7 +700,7 @@ extension MainTabBarController { let previousTab = Tab(rawValue: selectedIndex) selectedIndex = index if let tab = Tab(rawValue: index) { - currentTab.value = tab + currentTab = tab } if let previousTab = previousTab { diff --git a/Mastodon/Scene/Root/RootSplitViewController.swift b/Mastodon/Scene/Root/RootSplitViewController.swift index d9b18b0b4..f19282936 100644 --- a/Mastodon/Scene/Root/RootSplitViewController.swift +++ b/Mastodon/Scene/Root/RootSplitViewController.swift @@ -208,7 +208,7 @@ extension RootSplitViewController: UISplitViewControllerDelegate { switch proposedTopColumn { case .compact: RootSplitViewController.transform(from: contentSplitViewController.mainTabBarController, to: compactMainTabBarViewController) - compactMainTabBarViewController.currentTab.value = contentSplitViewController.currentSupplementaryTab + compactMainTabBarViewController.currentTab = contentSplitViewController.currentSupplementaryTab default: assertionFailure() @@ -231,11 +231,11 @@ extension RootSplitViewController: UISplitViewControllerDelegate { RootSplitViewController.transform(from: compactMainTabBarViewController, to: contentSplitViewController.mainTabBarController) - let tab = compactMainTabBarViewController.currentTab.value + let tab = compactMainTabBarViewController.currentTab if tab == .search { contentSplitViewController.currentSupplementaryTab = .home } else { - contentSplitViewController.currentSupplementaryTab = compactMainTabBarViewController.currentTab.value + contentSplitViewController.currentSupplementaryTab = compactMainTabBarViewController.currentTab } return proposedDisplayMode diff --git a/Mastodon/Scene/Root/Sidebar/SidebarViewModel.swift b/Mastodon/Scene/Root/Sidebar/SidebarViewModel.swift index 3cc277dc6..a6698d6c2 100644 --- a/Mastodon/Scene/Root/Sidebar/SidebarViewModel.swift +++ b/Mastodon/Scene/Root/Sidebar/SidebarViewModel.swift @@ -22,7 +22,8 @@ final class SidebarViewModel { let context: AppContext @Published private var isSidebarDataSourceReady = false @Published private var isAvatarButtonDataReady = false - + @Published var currentTab: MainTabBarController.Tab = .home + // output var diffableDataSource: UICollectionViewDiffableDataSource? var secondaryDiffableDataSource: UICollectionViewDiffableDataSource? @@ -86,35 +87,55 @@ extension SidebarViewModel { } }() cell.item = SidebarListContentView.Item( + isActive: false, title: item.title, - image: item.sidebarImage, + image: item.image, + activeImage: item.selectedImage, imageURL: imageURL ) cell.setNeedsUpdateConfiguration() cell.isAccessibilityElement = true cell.accessibilityLabel = item.title + self.$currentTab + .receive(on: DispatchQueue.main) + .sink { [weak cell] currentTab in + guard let cell = cell else { return } + cell.item?.isActive = currentTab == item + cell.setNeedsUpdateConfiguration() + } + .store(in: &cell.disposeBag) + switch item { case .notification: - Publishers.CombineLatest( + Publishers.CombineLatest3( self.context.authenticationService.activeMastodonAuthentication, - self.context.notificationService.unreadNotificationCountDidUpdate + self.context.notificationService.unreadNotificationCountDidUpdate, + self.$currentTab ) .receive(on: DispatchQueue.main) - .sink { [weak cell] authentication, _ in + .sink { [weak cell] authentication, _, currentTab in guard let cell = cell else { return } let hasUnreadPushNotification: Bool = authentication.flatMap { authentication in let count = UserDefaults.shared.getNotificationCountWithAccessToken(accessToken: authentication.userAccessToken) return count > 0 } ?? false - let image = hasUnreadPushNotification ? UIImage(systemName: "bell.badge")! : UIImage(systemName: "bell")! - cell._contentView?.imageView.image = image + let image: UIImage = { + if currentTab == .notification { + return hasUnreadPushNotification ? Asset.ObjectsAndTools.bellBadgeFill.image.withRenderingMode(.alwaysTemplate) : Asset.ObjectsAndTools.bellFill.image.withRenderingMode(.alwaysTemplate) + } else { + return hasUnreadPushNotification ? Asset.ObjectsAndTools.bellBadge.image.withRenderingMode(.alwaysTemplate) : Asset.ObjectsAndTools.bell.image.withRenderingMode(.alwaysTemplate) + } + }() + cell.item?.image = image + cell.item?.activeImage = image + cell.setNeedsUpdateConfiguration() } .store(in: &cell.disposeBag) case .me: guard let authentication = self.context.authenticationService.activeMastodonAuthentication.value else { break } - let currentUserDisplayName = authentication.user.displayNameWithFallback ?? "no user" + let currentUserDisplayName = authentication.user.displayNameWithFallback cell.accessibilityHint = L10n.Scene.AccountList.tabBarHint(currentUserDisplayName) default: break @@ -122,7 +143,7 @@ extension SidebarViewModel { } let cellRegistration = UICollectionView.CellRegistration { [weak self] cell, indexPath, item in - guard let self = self else { return } + guard let _ = self else { return } cell.item = item cell.setNeedsUpdateConfiguration() cell.isAccessibilityElement = true @@ -140,15 +161,19 @@ extension SidebarViewModel { return collectionView.dequeueConfiguredReusableCell(using: tabCellRegistration, for: indexPath, item: tab) case .setting: let item = SidebarListContentView.Item( + isActive: false, title: L10n.Common.Controls.Actions.settings, - image: UIImage(systemName: "gear")!, + image: Asset.ObjectsAndTools.gear.image.withRenderingMode(.alwaysTemplate), + activeImage: Asset.ObjectsAndTools.gear.image.withRenderingMode(.alwaysTemplate), imageURL: nil ) return collectionView.dequeueConfiguredReusableCell(using: cellRegistration, for: indexPath, item: item) case .compose: let item = SidebarListContentView.Item( + isActive: false, title: L10n.Common.Controls.Actions.compose, - image: UIImage(systemName: "square.and.pencil")!, + image: Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate), + activeImage: Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate), imageURL: nil ) return collectionView.dequeueConfiguredReusableCell(using: cellRegistration, for: indexPath, item: item) @@ -192,15 +217,15 @@ extension SidebarViewModel { } let item = SidebarListContentView.Item( + isActive: false, title: L10n.Common.Controls.Actions.compose, - image: UIImage(systemName: "square.and.pencil")!, + image: Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate), + activeImage: Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate), imageURL: nil ) return collectionView.dequeueConfiguredReusableCell(using: cellRegistration, for: indexPath, item: item) } -// _secondaryDiffableDataSource.supplementaryViewProvider = { collectionView, elementKind, indexPath in -// return nil -// } + secondaryDiffableDataSource = _secondaryDiffableDataSource var secondarySnapshot = NSDiffableDataSourceSnapshot() diff --git a/Mastodon/Scene/Root/Sidebar/View/SidebarListContentView.swift b/Mastodon/Scene/Root/Sidebar/View/SidebarListContentView.swift index d6ae40e17..794563eaf 100644 --- a/Mastodon/Scene/Root/Sidebar/View/SidebarListContentView.swift +++ b/Mastodon/Scene/Root/Sidebar/View/SidebarListContentView.swift @@ -93,12 +93,14 @@ extension SidebarListContentView { // configure model imageView.isHidden = item.imageURL != nil avatarButton.isHidden = item.imageURL == nil - imageView.image = item.image.withRenderingMode(.alwaysTemplate) + imageView.image = item.isActive ? item.activeImage.withRenderingMode(.alwaysTemplate) : item.image.withRenderingMode(.alwaysTemplate) avatarButton.avatarImageView.setImage( url: item.imageURL, placeholder: avatarButton.avatarImageView.image ?? .placeholder(color: .systemFill), // reuse to avoid blink scaleToSize: nil ) + avatarButton.borderWidth = item.isActive ? 2 : 0 + avatarButton.setNeedsLayout() } } @@ -107,25 +109,32 @@ extension SidebarListContentView { // state var isSelected: Bool = false var isHighlighted: Bool = false + var isActive: Bool // model let title: String - let image: UIImage + var image: UIImage + var activeImage: UIImage let imageURL: URL? + static func == (lhs: SidebarListContentView.Item, rhs: SidebarListContentView.Item) -> Bool { return lhs.isSelected == rhs.isSelected && lhs.isHighlighted == rhs.isHighlighted + && lhs.isActive == rhs.isActive && lhs.title == rhs.title && lhs.image == rhs.image + && lhs.activeImage == rhs.activeImage && lhs.imageURL == rhs.imageURL } func hash(into hasher: inout Hasher) { hasher.combine(isSelected) hasher.combine(isHighlighted) + hasher.combine(isActive) hasher.combine(title) hasher.combine(image) + hasher.combine(activeImage) imageURL.flatMap { hasher.combine($0) } } } diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/Contents.json new file mode 100644 index 000000000..956d7c99c --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "bell.badge.fill.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/bell.badge.fill.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/bell.badge.fill.pdf new file mode 100644 index 000000000..10b05f319 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.fill.imageset/bell.badge.fill.pdf @@ -0,0 +1,94 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 4.000000 3.251190 cm +0.000000 0.000000 0.000000 scn +17.228973 14.106000 m +17.604315 14.106000 17.967243 14.159944 18.310644 14.260609 c +18.330521 14.022223 18.340664 13.781026 18.340664 13.537420 c +18.340664 9.025727 l +19.917404 5.460056 l +19.978443 5.322020 20.010000 5.172432 20.010000 5.021130 c +20.010000 4.429121 19.537165 3.949203 18.953897 3.949203 c +1.056364 3.949203 l +0.907638 3.949203 0.760588 3.981087 0.624843 4.042767 c +0.092485 4.284660 -0.145878 4.918783 0.092444 5.459118 c +1.665367 9.025314 l +1.665486 13.551995 l +1.670396 13.833986 l +1.824999 18.382032 5.507209 22.000000 10.003014 22.000000 c +11.607554 22.000000 13.106230 21.539965 14.378001 20.742750 c +13.732699 20.037863 13.338069 19.093309 13.338069 18.055204 c +13.338069 15.874119 15.080086 14.106000 17.228973 14.106000 c +h +13.291688 2.819208 m +13.026393 1.219061 11.654965 0.000000 10.003014 0.000000 c +8.351062 0.000000 6.979633 1.219061 6.714338 2.819208 c +13.291688 2.819208 l +h +17.228973 15.234344 m +18.763893 15.234344 20.008190 16.497286 20.008190 18.055204 c +20.008190 19.613121 18.763893 20.876064 17.228973 20.876064 c +15.694054 20.876064 14.449756 19.613121 14.449756 18.055204 c +14.449756 16.497286 15.694054 15.234344 17.228973 15.234344 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 1305 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001395 00000 n +0000001418 00000 n +0000001591 00000 n +0000001665 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1724 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/Contents.json new file mode 100644 index 000000000..7e5adf71d --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "bell.badge.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/bell.badge.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/bell.badge.pdf new file mode 100644 index 000000000..0aa1ebbd9 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.badge.imageset/bell.badge.pdf @@ -0,0 +1,112 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 4.000000 3.000000 cm +0.000000 0.000000 0.000000 scn +9.991263 22.000000 m +11.600367 22.000000 13.104079 21.540958 14.379686 20.742632 c +13.999659 20.330532 13.705750 19.835861 13.527027 19.288073 c +12.501425 19.935305 11.289410 20.308149 9.991263 20.308149 c +6.295337 20.308149 3.312736 17.291861 3.312205 13.540749 c +3.312205 8.567127 l +1.816118 5.077236 l +18.175934 5.077236 l +16.670322 8.566052 l +16.670446 13.526248 l +16.666271 13.780252 l +16.662128 13.902481 16.654818 14.023849 16.644423 14.144276 c +16.834492 14.115398 17.029049 14.100430 17.227058 14.100430 c +17.602913 14.100430 17.966335 14.154360 18.310204 14.254990 c +18.322084 14.112284 18.330519 13.968523 18.335421 13.823792 c +18.340088 13.540749 l +18.340088 8.919773 l +19.876272 5.360107 l +19.953144 5.181980 19.992825 4.989672 19.992825 4.795261 c +19.992825 4.016609 19.369843 3.385387 18.601355 3.385387 c +13.330793 3.383699 l +13.330793 1.514933 11.835634 -0.000002 9.991263 -0.000002 c +8.212763 -0.000002 6.758977 1.408655 6.657403 3.184881 c +6.651230 3.386263 l +1.391824 3.385387 l +1.201094 3.385387 1.012400 3.425116 0.837460 3.502110 c +0.132594 3.812326 -0.190615 4.642769 0.115552 5.356956 c +1.642440 8.918699 l +1.642440 13.540869 l +1.643104 18.227058 5.373904 22.000000 9.991263 22.000000 c +h +11.660524 3.386263 m +8.321499 3.383699 l +8.321499 2.449318 9.069077 1.691849 9.991263 1.691849 c +10.859203 1.691849 11.572474 2.362822 11.653385 3.220762 c +11.660524 3.386263 l +h +14.488358 18.551571 m +14.594155 19.146286 14.884010 19.676186 15.296021 20.078548 c +15.796463 20.567268 16.477119 20.867832 17.227058 20.867832 c +18.764036 20.867832 20.010000 19.605387 20.010000 18.048080 c +20.010000 16.815081 19.228939 15.766922 18.140787 15.383841 c +17.854582 15.283082 17.547131 15.228331 17.227058 15.228331 c +16.950932 15.228331 16.684196 15.269077 16.432392 15.344961 c +15.282606 15.691461 14.444118 16.770555 14.444118 18.048080 c +14.444118 18.219936 14.459294 18.388199 14.488358 18.551571 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 2038 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000002128 00000 n +0000002151 00000 n +0000002324 00000 n +0000002398 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +2457 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/Contents.json new file mode 100644 index 000000000..eea5ce48f --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "bell.fill.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/bell.fill.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/bell.fill.pdf new file mode 100644 index 000000000..b738813f8 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.fill.imageset/bell.fill.pdf @@ -0,0 +1,88 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 3.994385 2.997498 cm +0.000000 0.000000 0.000000 scn +13.471207 3.000130 m +13.228097 1.303843 11.769090 0.000013 10.005556 0.000013 c +8.242023 0.000013 6.783014 1.303843 6.539904 3.000130 c +13.471207 3.000130 l +h +10.005556 22.002502 m +14.615297 22.002502 18.368101 18.333513 18.503042 13.756456 c +18.503042 13.501259 l +18.506800 13.501259 l +18.506556 9.389503 l +19.920570 5.745182 l +19.958755 5.646759 19.984545 5.544180 19.997494 5.439810 c +20.007233 5.282207 l +20.007233 4.619465 19.503553 4.074364 18.858105 4.008816 c +18.727232 4.002207 l +1.280344 4.002207 l +1.121637 4.002207 0.964313 4.031721 0.816398 4.089247 c +0.198722 4.329462 -0.126749 4.996468 0.046107 5.621784 c +0.087384 5.746153 l +1.503556 9.390502 l +1.504312 13.501259 l +1.504312 18.196365 5.310449 22.002502 10.005556 22.002502 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 870 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000000960 00000 n +0000000982 00000 n +0000001155 00000 n +0000001229 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1288 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/Contents.json new file mode 100644 index 000000000..da621b2a4 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "bell.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/bell.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/bell.pdf new file mode 100644 index 000000000..52a4bea08 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/bell.imageset/bell.pdf @@ -0,0 +1,106 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 3.994385 2.997498 cm +0.000000 0.000000 0.000000 scn +10.005556 22.002502 m +14.615297 22.002502 18.368101 18.333513 18.503042 13.756456 c +18.506800 13.501259 l +18.506556 8.889502 l +19.920570 5.245478 l +19.958755 5.147055 19.984545 5.044476 19.997494 4.940105 c +20.007233 4.782503 l +20.007233 4.119761 19.503553 3.574659 18.858105 3.509111 c +18.727232 3.502502 l +13.506981 3.501438 l +13.506981 1.567654 11.939340 0.000013 10.005556 0.000013 c +8.136232 0.000013 6.609047 1.464890 6.509312 3.309326 c +6.504000 3.503502 l +1.280344 3.502502 l +1.121637 3.502502 0.964313 3.532017 0.816398 3.589542 c +0.198722 3.829758 -0.126749 4.496763 0.046107 5.122080 c +0.087384 5.246449 l +1.503556 8.890503 l +1.504312 13.501259 l +1.504312 18.196365 5.310449 22.002502 10.005556 22.002502 c +h +12.001492 3.352070 m +12.006001 3.503502 l +8.004131 3.501438 l +8.004131 2.396082 8.900200 1.500013 10.005556 1.500013 c +11.060669 1.500013 11.925088 2.316473 12.001492 3.352070 c +h +10.005556 20.502502 m +6.219432 20.502502 3.135237 17.497185 3.008372 13.741951 c +3.004312 13.501259 l +3.004312 8.749136 l +3.004312 8.687140 2.996625 8.625507 2.981514 8.565626 c +2.953312 8.477293 l +1.601556 5.003502 l +18.405556 5.003502 l +17.057579 8.477861 l +17.035206 8.535532 17.020094 8.595635 17.012506 8.656790 c +17.006800 8.749136 l +17.006800 13.501259 l +17.006800 17.367939 13.872236 20.502502 10.005556 20.502502 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 1451 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001541 00000 n +0000001564 00000 n +0000001737 00000 n +0000001811 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1870 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/Contents.json new file mode 100644 index 000000000..8dfa77c79 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "gear.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/gear.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/gear.pdf new file mode 100644 index 000000000..d0e5607b9 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/gear.imageset/gear.pdf @@ -0,0 +1,155 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 4.639893 4.163849 cm +0.000000 0.000000 0.000000 scn +9.372525 19.586090 m +10.106503 19.577631 10.837610 19.492828 11.554037 19.333052 c +11.866778 19.263306 12.100667 19.002579 12.136167 18.684128 c +12.306372 17.157282 l +12.383412 16.456230 12.975316 15.925249 13.680974 15.924509 c +13.870646 15.924213 14.058271 15.963713 14.233541 16.041258 c +15.634164 16.656530 l +15.925470 16.784498 16.265816 16.714733 16.483282 16.482475 c +17.495462 15.401449 18.249289 14.104940 18.688040 12.690507 c +18.782648 12.385511 18.673761 12.054057 18.416712 11.864587 c +17.175230 10.949497 l +16.821091 10.689301 16.611935 10.276085 16.611935 9.836634 c +16.611935 9.397182 16.821091 8.983968 17.176010 8.723198 c +18.418562 7.807791 l +18.675699 7.618353 18.784660 7.286852 18.690054 6.981801 c +18.251465 5.567602 17.498068 4.271195 16.486473 3.189995 c +16.269207 2.957779 15.929114 2.887827 15.637836 3.015442 c +14.231503 3.631588 l +13.829185 3.807648 13.367112 3.781857 12.986887 3.562117 c +12.606662 3.342377 12.353621 2.954891 12.305302 2.518358 c +12.136227 0.991678 l +12.101363 0.676876 11.872503 0.417910 11.564378 0.344601 c +10.115929 -0.000013 8.606833 -0.000013 7.158383 0.344601 c +6.850258 0.417910 6.621398 0.676876 6.586535 0.991678 c +6.417712 2.516102 l +6.368124 2.951803 6.114693 3.338112 5.734776 3.557108 c +5.354860 3.776103 4.893555 3.801792 4.492552 3.626715 c +3.085926 3.010441 l +2.794572 2.882792 2.454386 2.952816 2.237134 3.185158 c +1.224976 4.267610 0.471545 5.565555 0.033552 6.981297 c +-0.060786 7.286231 0.048213 7.617466 0.305198 7.806790 c +1.548530 8.722771 l +1.902669 8.982967 2.111826 9.396182 2.111826 9.835633 c +2.111826 10.275084 1.902669 10.688300 1.548066 10.948837 c +0.305513 11.863244 l +0.048147 12.052642 -0.060952 12.384308 0.033719 12.689507 c +0.472470 14.103941 1.226297 15.400448 2.238477 16.481474 c +2.455943 16.713732 2.796290 16.783497 3.087596 16.655531 c +4.487972 16.040365 l +4.890913 15.863533 5.354152 15.890244 5.736122 16.113400 c +6.116442 16.334003 6.369638 16.721867 6.418519 17.158447 c +6.588595 18.684128 l +6.624113 19.002741 6.858214 19.263550 7.171155 19.333147 c +7.888429 19.492670 8.620303 19.577436 9.372525 19.586090 c +h +9.372712 18.086191 m +8.918673 18.080845 8.465910 18.041662 8.018175 17.969074 c +7.909245 16.991905 l +7.807416 16.082413 7.280385 15.275068 6.490771 14.817059 c +5.696323 14.352917 4.727715 14.297064 3.884934 14.666923 c +2.986644 15.061529 l +2.414711 14.367364 1.959492 13.584736 1.638873 12.744408 c +2.436671 12.157299 l +3.175481 11.614474 3.611826 10.752420 3.611826 9.835633 c +3.611826 8.918846 3.175481 8.056792 2.437450 7.514541 c +1.638397 6.925866 l +1.958737 6.084057 2.414029 5.299965 2.986352 4.604462 c +3.891485 5.001020 l +4.729578 5.366932 5.691594 5.313361 6.483880 4.856663 c +7.276166 4.399964 7.804679 3.594347 7.908344 2.683468 c +8.017305 1.699598 l +8.906950 1.548321 9.815811 1.548321 10.705456 1.699598 c +10.814412 2.683426 l +10.915205 3.594033 11.443104 4.402411 12.236333 4.860834 c +13.029562 5.319258 13.993543 5.373064 14.833156 5.005638 c +15.737573 4.609392 l +16.309378 5.303812 16.764484 6.086632 17.085032 6.927112 c +16.287088 7.514968 l +15.548278 8.057793 15.111936 8.919847 15.111936 9.836634 c +15.111936 10.753421 15.548280 11.615475 16.286161 12.157617 c +17.083044 12.744996 l +16.762415 13.585482 16.307142 14.368252 15.735116 15.062530 c +14.838643 14.668724 l +14.473309 14.507083 14.078127 14.423886 13.679017 14.424510 c +12.209332 14.426050 10.975889 15.532539 10.815476 16.992264 c +10.706551 17.969393 l +10.261019 18.041893 9.812987 18.080971 9.372712 18.086191 c +h +9.360047 13.586140 m +11.431115 13.586140 13.110047 11.907207 13.110047 9.836140 c +13.110047 7.765072 11.431115 6.086140 9.360047 6.086140 c +7.288980 6.086140 5.610047 7.765072 5.610047 9.836140 c +5.610047 11.907207 7.288980 13.586140 9.360047 13.586140 c +h +9.360047 12.086140 m +8.117407 12.086140 7.110047 11.078780 7.110047 9.836140 c +7.110047 8.593499 8.117407 7.586140 9.360047 7.586140 c +10.602688 7.586140 11.610047 8.593499 11.610047 9.836140 c +11.610047 11.078780 10.602688 12.086140 9.360047 12.086140 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 4141 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000004231 00000 n +0000004254 00000 n +0000004427 00000 n +0000004501 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +4560 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Contents.json new file mode 100644 index 000000000..b12998cbd --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "Home-fill.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Home-fill.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Home-fill.pdf new file mode 100644 index 000000000..e8e156e31 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.fill.imageset/Home-fill.pdf @@ -0,0 +1,85 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 4.000000 2.835022 cm +0.000000 0.000000 0.000000 scn +8.592125 21.667089 m +9.414732 22.326954 10.585270 22.326952 11.407875 21.667089 c +19.157869 15.450343 l +19.690231 15.023304 19.999994 14.377716 19.999994 13.695241 c +19.999994 2.414970 l +19.999994 1.172331 18.992638 0.164970 17.749996 0.164970 c +15.250000 0.164970 l +14.007360 0.164970 13.000000 1.172327 13.000000 2.414968 c +13.000000 8.914963 l +13.000000 9.329177 12.664214 9.664963 12.250000 9.664963 c +7.750000 9.664963 l +7.335785 9.664963 7.000000 9.329177 7.000000 8.914964 c +7.000000 2.414970 l +7.000000 1.172331 5.992641 0.164970 4.750000 0.164970 c +2.250000 0.164970 l +1.007360 0.164970 0.000000 1.172327 0.000000 2.414968 c +0.000000 13.695240 l +0.000000 14.377715 0.309763 15.023304 0.842125 15.450343 c +8.592125 21.667089 l +h +f +n +Q + +endstream +endobj + +3 0 obj + 862 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000000952 00000 n +0000000974 00000 n +0000001147 00000 n +0000001221 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1280 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Contents.json new file mode 100644 index 000000000..968281c21 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "Home.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Home.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Home.pdf new file mode 100644 index 000000000..1b5772ddd --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/house.imageset/Home.pdf @@ -0,0 +1,105 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 4.000000 2.834961 cm +0.000000 0.000000 0.000000 scn +8.591907 21.668686 m +9.414594 22.328781 10.585405 22.328781 11.408092 21.668686 c +19.158089 15.450356 l +19.690319 15.023312 19.999994 14.377806 19.999994 13.695429 c +19.999994 2.415045 l +19.999994 1.172405 18.992638 0.165045 17.749996 0.165045 c +14.750000 0.165045 l +13.507360 0.165045 12.500000 1.172403 12.500000 2.415045 c +12.500000 8.415037 l +12.500000 8.829250 12.164213 9.165037 11.750000 9.165037 c +8.250000 9.165037 l +7.835786 9.165037 7.500000 8.829250 7.500000 8.415037 c +7.500000 2.415045 l +7.500000 1.172403 6.492640 0.165045 5.250000 0.165045 c +2.250000 0.165045 l +1.007360 0.165045 0.000000 1.172401 0.000000 2.415043 c +0.000000 13.695428 l +0.000000 14.377805 0.309674 15.023312 0.841907 15.450356 c +8.591907 21.668686 l +h +10.469363 20.498734 m +10.195135 20.718765 9.804865 20.718765 9.530635 20.498734 c +1.780635 14.280403 l +1.603225 14.138056 1.500000 13.922887 1.500000 13.695428 c +1.500000 2.415043 l +1.500000 2.000832 1.835786 1.665045 2.250000 1.665045 c +5.250000 1.665045 l +5.664214 1.665045 6.000000 2.000832 6.000000 2.415045 c +6.000000 8.415037 l +6.000000 9.657678 7.007360 10.665037 8.250000 10.665037 c +11.750000 10.665037 l +12.992640 10.665037 14.000000 9.657678 14.000000 8.415037 c +14.000000 2.415045 l +14.000000 2.000832 14.335787 1.665045 14.750000 1.665045 c +17.749996 1.665045 l +18.164207 1.665045 18.499994 2.000830 18.499994 2.415045 c +18.499994 13.695429 l +18.499994 13.922888 18.396770 14.138056 18.219358 14.280403 c +10.469363 20.498734 l +h +f +n +Q + +endstream +endobj + +3 0 obj + 1604 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001694 00000 n +0000001717 00000 n +0000001890 00000 n +0000001964 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +2023 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Contents.json new file mode 100644 index 000000000..6986c762a --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "Search-Fill.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Search-Fill.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Search-Fill.pdf new file mode 100644 index 000000000..26e5a4576 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.fill.imageset/Search-Fill.pdf @@ -0,0 +1,83 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 2.000000 1.855835 cm +0.000000 0.000000 0.000000 scn +9.500000 24.144165 m +14.746705 24.144165 19.000000 19.890869 19.000000 14.644165 c +19.000000 12.562231 18.330292 10.636717 17.194551 9.071299 c +23.560659 2.704824 l +24.146446 2.119038 24.146446 1.169292 23.560659 0.583506 c +23.011484 0.034330 22.142424 0.000008 21.553263 0.480536 c +21.439341 0.583506 l +15.072866 6.949614 l +13.507448 5.813873 11.581934 5.144165 9.500000 5.144165 c +4.253295 5.144165 0.000000 9.397460 0.000000 14.644165 c +0.000000 19.890869 4.253295 24.144165 9.500000 24.144165 c +h +9.500000 21.144165 m +5.910149 21.144165 3.000000 18.234016 3.000000 14.644165 c +3.000000 11.054314 5.910149 8.144165 9.500000 8.144165 c +13.089851 8.144165 16.000000 11.054314 16.000000 14.644165 c +16.000000 18.234016 13.089851 21.144165 9.500000 21.144165 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 887 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000000977 00000 n +0000000999 00000 n +0000001172 00000 n +0000001246 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1305 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Contents.json new file mode 100644 index 000000000..e4ab2267b --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "Search.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Search.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Search.pdf new file mode 100644 index 000000000..7bd1758c7 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/magnifyingglass.imageset/Search.pdf @@ -0,0 +1,83 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 2.750000 2.679199 cm +0.000000 0.000000 0.000000 scn +8.750000 22.570801 m +13.582491 22.570801 17.500000 18.653292 17.500000 13.820801 c +17.500000 11.674633 16.727327 9.708933 15.444990 8.186705 c +22.280331 1.351131 l +22.573223 1.058239 22.573223 0.583363 22.280331 0.290470 c +22.014065 0.024204 21.597401 -0.000004 21.303789 0.217852 c +21.219669 0.290470 l +14.384096 7.125811 l +12.861868 5.843473 10.896168 5.070801 8.750000 5.070801 c +3.917509 5.070801 0.000000 8.988310 0.000000 13.820801 c +0.000000 18.653292 3.917509 22.570801 8.750000 22.570801 c +h +8.750000 21.070801 m +4.745935 21.070801 1.500000 17.824865 1.500000 13.820801 c +1.500000 9.816736 4.745935 6.570801 8.750000 6.570801 c +12.754065 6.570801 16.000000 9.816736 16.000000 13.820801 c +16.000000 17.824865 12.754065 21.070801 8.750000 21.070801 c +h +f +n +Q + +endstream +endobj + +3 0 obj + 885 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000000975 00000 n +0000000997 00000 n +0000001170 00000 n +0000001244 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1303 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/Contents.json new file mode 100644 index 000000000..18bb2201a --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "square.and.pencil.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/square.and.pencil.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/square.and.pencil.pdf new file mode 100644 index 000000000..8cb4a15c9 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/ObjectsAndTools/square.and.pencil.imageset/square.and.pencil.pdf @@ -0,0 +1,93 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 3.000000 2.926788 cm +0.000000 0.000000 0.000000 scn +18.780287 17.792883 m +19.073179 18.085777 19.073177 18.560650 18.780285 18.853542 c +18.487391 19.146435 18.012516 19.146435 17.719624 18.853540 c +7.719669 8.853540 l +7.250000 7.323212 l +8.780332 7.792883 l +18.780287 17.792883 l +h +3.249999 18.073212 m +1.455072 18.073212 0.000000 16.618137 0.000000 14.823212 c +0.000000 3.323212 l +0.000000 1.528286 1.455075 0.073212 3.250000 0.073212 c +14.750000 0.073212 l +16.544926 0.073212 18.000000 1.528286 18.000000 3.323212 c +18.000000 11.323212 l +18.000000 11.737425 17.664213 12.073212 17.250000 12.073212 c +16.835787 12.073212 16.500000 11.737425 16.500000 11.323212 c +16.500000 3.323212 l +16.500000 2.356712 15.716498 1.573212 14.750000 1.573212 c +3.250000 1.573212 l +2.283502 1.573212 1.500000 2.356712 1.500000 3.323212 c +1.500000 14.823212 l +1.500000 15.789711 2.283501 16.573212 3.249999 16.573212 c +11.249994 16.573212 l +11.664207 16.573212 11.999994 16.908998 11.999994 17.323212 c +11.999994 17.737425 11.664207 18.073212 11.249994 18.073212 c +3.249999 18.073212 l +h +f +n +Q + +endstream +endobj + +3 0 obj + 1142 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 24.000000 24.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001232 00000 n +0000001255 00000 n +0000001428 00000 n +0000001502 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +1561 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift b/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift index 3e7fa5c11..cf103a2f8 100644 --- a/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift +++ b/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift @@ -99,6 +99,16 @@ public enum Asset { public static let faceSmilingAdaptive = ImageAsset(name: "Human/face.smiling.adaptive") } public enum ObjectsAndTools { + public static let bellBadgeFill = ImageAsset(name: "ObjectsAndTools/bell.badge.fill") + public static let bellBadge = ImageAsset(name: "ObjectsAndTools/bell.badge") + public static let bellFill = ImageAsset(name: "ObjectsAndTools/bell.fill") + public static let bell = ImageAsset(name: "ObjectsAndTools/bell") + public static let gear = ImageAsset(name: "ObjectsAndTools/gear") + public static let houseFill = ImageAsset(name: "ObjectsAndTools/house.fill") + public static let house = ImageAsset(name: "ObjectsAndTools/house") + public static let magnifyingglassFill = ImageAsset(name: "ObjectsAndTools/magnifyingglass.fill") + public static let magnifyingglass = ImageAsset(name: "ObjectsAndTools/magnifyingglass") + public static let squareAndPencil = ImageAsset(name: "ObjectsAndTools/square.and.pencil") public static let starFill = ImageAsset(name: "ObjectsAndTools/star.fill") public static let star = ImageAsset(name: "ObjectsAndTools/star") } diff --git a/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift b/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift new file mode 100644 index 000000000..105b4c27d --- /dev/null +++ b/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift @@ -0,0 +1,17 @@ +// +// UIImage.swift +// +// +// Created by MainasuK on 2022-5-6. +// + +import UIKit + +extension UIImage { + + public func resized(size: CGSize) -> UIImage { + return UIGraphicsImageRenderer(size: size).image { context in + self.draw(in: CGRect(origin: .zero, size: size)) + } + } +} From 096ae1ad19b5d050364edcaf96075437ba6a1e5c Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 14:30:28 +0800 Subject: [PATCH 048/571] chore: update version to 1.4.1 (122) --- AppShared/Info.plist | 4 +-- Mastodon.xcodeproj/project.pbxproj | 36 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 ++-- Mastodon/Info.plist | 4 +-- MastodonIntent/Info.plist | 4 +-- MastodonTests/Info.plist | 4 +-- MastodonUITests/Info.plist | 4 +-- NotificationService/Info.plist | 4 +-- ShareActionExtension/Info.plist | 4 +-- 9 files changed, 35 insertions(+), 35 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index a1528e2c5..4078f08d8 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index fcba16b23..1da8f4d4e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4711,7 +4711,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4741,7 +4741,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4849,11 +4849,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 121; + DYLIB_CURRENT_VERSION = 122; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4880,11 +4880,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 121; + DYLIB_CURRENT_VERSION = 122; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4908,7 +4908,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4932,7 +4932,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4956,7 +4956,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4980,7 +4980,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5067,7 +5067,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5134,11 +5134,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 121; + DYLIB_CURRENT_VERSION = 122; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5162,7 +5162,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5185,7 +5185,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5209,7 +5209,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5233,7 +5233,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5256,7 +5256,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 121; + CURRENT_PROJECT_VERSION = 122; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 1ac4532e7..8e1d661f5 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 19 + 31 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 21 + 29 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 20 + 30 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 6dec562da..1c08032c5 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -30,7 +30,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleURLTypes @@ -43,7 +43,7 @@ CFBundleVersion - 121 + 122 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index d08d9c217..caf9a9e8c 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index a1528e2c5..4078f08d8 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index a1528e2c5..4078f08d8 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index 0029eea56..c030e8650 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 25fc34294..be4eded9a 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.0 + 1.4.1 CFBundleVersion - 121 + 122 NSExtension NSExtensionAttributes From 8d78f6586d0972249a3ab6d28d462070d017bbf8 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 14:47:15 +0800 Subject: [PATCH 049/571] chore: fix accessibility large content label text missing issue --- .../Scene/Root/MainTab/MainTabBarController.swift | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift index d6eea39da..b91435a56 100644 --- a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift +++ b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift @@ -174,11 +174,12 @@ extension MainTabBarController { } .store(in: &disposeBag) + // seealso: `ThemeService.apply(theme:)` let tabs = Tab.allCases let viewControllers: [UIViewController] = tabs.map { tab in let viewController = tab.viewController(context: context, coordinator: coordinator) viewController.tabBarItem.tag = tab.tag - viewController.tabBarItem.title = nil + viewController.tabBarItem.title = tab.title // needs for acessiblity large content label viewController.tabBarItem.image = tab.image.imageWithoutBaseline() viewController.tabBarItem.selectedImage = tab.selectedImage.imageWithoutBaseline() viewController.tabBarItem.largeContentSizeImage = tab.largeImage.imageWithoutBaseline() @@ -197,14 +198,6 @@ extension MainTabBarController { _viewControllers = viewControllers setViewControllers(viewControllers, animated: false) selectedIndex = 0 - - let tabBarItemAppearance = UITabBarItemAppearance() - tabBarItemAppearance.configureWithDefault(for: .stacked) - tabBarItemAppearance.normal.iconColor = Asset.Colors.Label.primary.color - tabBar.standardAppearance.stackedItemPositioning = .centered - tabBar.standardAppearance.stackedLayoutAppearance = tabBarItemAppearance - tabBar.standardAppearance.inlineLayoutAppearance = tabBarItemAppearance - tabBar.standardAppearance.compactInlineLayoutAppearance = tabBarItemAppearance context.apiService.error .receive(on: DispatchQueue.main) From c8e80139015b3cd56d1b9625e6d5d8cfe37c9823 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 14:47:49 +0800 Subject: [PATCH 050/571] chore: update version to 1.4.1 (123) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 36 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 ++-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 28 insertions(+), 28 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index 4078f08d8..0b876b035 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 1da8f4d4e..ca9400a6f 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4711,7 +4711,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4741,7 +4741,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4849,11 +4849,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 122; + DYLIB_CURRENT_VERSION = 123; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4880,11 +4880,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 122; + DYLIB_CURRENT_VERSION = 123; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4908,7 +4908,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4932,7 +4932,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4956,7 +4956,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4980,7 +4980,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5067,7 +5067,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5134,11 +5134,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 122; + DYLIB_CURRENT_VERSION = 123; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5162,7 +5162,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5185,7 +5185,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5209,7 +5209,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5233,7 +5233,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5256,7 +5256,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 122; + CURRENT_PROJECT_VERSION = 123; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 8e1d661f5..b4eb63998 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 31 + 33 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 29 + 32 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 30 + 34 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 1c08032c5..2eac130fd 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 122 + 123 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index caf9a9e8c..79b876e51 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index 4078f08d8..0b876b035 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index 4078f08d8..0b876b035 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index c030e8650..43a11fa79 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index be4eded9a..e8dc0cb3a 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 122 + 123 NSExtension NSExtensionAttributes From ca0a697cd085e5e280d1a0e137d85c496d0f1443 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 15:17:26 +0800 Subject: [PATCH 051/571] chore: update navigation bar button item assets --- .../HashtagTimelineViewController.swift | 2 +- .../HomeTimelineViewController.swift | 37 +----- .../HomeTimeline/HomeTimelineViewModel.swift | 1 - .../Scene/Profile/ProfileViewController.swift | 21 +++- .../Root/ContentSplitViewController.swift | 1 - .../Contents.json | 15 +++ .../Share iOS.pdf | 110 ++++++++++++++++++ .../MastodonAsset/Generated/Assets.swift | 1 + 8 files changed, 149 insertions(+), 39 deletions(-) create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Contents.json create mode 100644 MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Share iOS.pdf diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift index b3a8ca040..3b8db5d56 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift @@ -28,7 +28,7 @@ final class HashtagTimelineViewController: UIViewController, NeedsDependency, Me let composeBarButtonItem: UIBarButtonItem = { let barButtonItem = UIBarButtonItem() - barButtonItem.image = UIImage(systemName: "square.and.pencil")?.withRenderingMode(.alwaysTemplate) + barButtonItem.image = Asset.ObjectsAndTools.squareAndPencil.image.withRenderingMode(.alwaysTemplate) return barButtonItem }() diff --git a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift index 549552725..64d3d5941 100644 --- a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift +++ b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController.swift @@ -51,19 +51,11 @@ final class HomeTimelineViewController: UIViewController, NeedsDependency, Media let settingBarButtonItem: UIBarButtonItem = { let barButtonItem = UIBarButtonItem() barButtonItem.tintColor = ThemeService.tintColor - barButtonItem.image = UIImage(systemName: "gear")?.withRenderingMode(.alwaysTemplate) + barButtonItem.image = Asset.ObjectsAndTools.gear.image.withRenderingMode(.alwaysTemplate) barButtonItem.accessibilityLabel = L10n.Common.Controls.Actions.settings return barButtonItem }() - let composeBarButtonItem: UIBarButtonItem = { - let barButtonItem = UIBarButtonItem() - barButtonItem.tintColor = ThemeService.tintColor - barButtonItem.image = UIImage(systemName: "square.and.pencil")?.withRenderingMode(.alwaysTemplate) - barButtonItem.accessibilityLabel = L10n.Common.Controls.Actions.compose - return barButtonItem - }() - let tableView: UITableView = { let tableView = ControlContainableTableView() tableView.register(StatusTableViewCell.self, forCellReuseIdentifier: String(describing: StatusTableViewCell.self)) @@ -109,14 +101,14 @@ extension HomeTimelineViewController { guard let self = self else { return } #if DEBUG // display debug menu - self.navigationItem.leftBarButtonItem = { + self.navigationItem.rightBarButtonItem = { let barButtonItem = UIBarButtonItem() barButtonItem.image = UIImage(systemName: "ellipsis.circle") barButtonItem.menu = self.debugMenu return barButtonItem }() #else - self.navigationItem.leftBarButtonItem = displaySettingBarButtonItem ? self.settingBarButtonItem : nil + self.navigationItem.rightBarButtonItem = displaySettingBarButtonItem ? self.settingBarButtonItem : nil #endif } .store(in: &disposeBag) @@ -133,16 +125,6 @@ extension HomeTimelineViewController { titleView.button.menu = self.debugMenu #endif - viewModel.$displayComposeBarButtonItem - .receive(on: DispatchQueue.main) - .sink { [weak self] displayComposeBarButtonItem in - guard let self = self else { return } - self.navigationItem.rightBarButtonItem = displayComposeBarButtonItem ? self.composeBarButtonItem : nil - } - .store(in: &disposeBag) - composeBarButtonItem.target = self - composeBarButtonItem.action = #selector(HomeTimelineViewController.composeBarButtonItemPressed(_:)) - navigationItem.titleView = titleView titleView.delegate = self @@ -411,18 +393,7 @@ extension HomeTimelineViewController { let settingsViewModel = SettingsViewModel(context: context, setting: setting) coordinator.present(scene: .settings(viewModel: settingsViewModel), from: self, transition: .modal(animated: true, completion: nil)) } - - @objc private func composeBarButtonItemPressed(_ sender: UIBarButtonItem) { - os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) - guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { return } - let composeViewModel = ComposeViewModel( - context: context, - composeKind: .post, - authenticationBox: authenticationBox - ) - coordinator.present(scene: .compose(viewModel: composeViewModel), from: self, transition: .modal(animated: true, completion: nil)) - } - + @objc private func refreshControlValueChanged(_ sender: UIRefreshControl) { guard viewModel.loadLatestStateMachine.enter(HomeTimelineViewModel.LoadLatestState.Loading.self) else { sender.endRefreshing() diff --git a/Mastodon/Scene/HomeTimeline/HomeTimelineViewModel.swift b/Mastodon/Scene/HomeTimeline/HomeTimelineViewModel.swift index b2c280fb5..be7de3a5a 100644 --- a/Mastodon/Scene/HomeTimeline/HomeTimelineViewModel.swift +++ b/Mastodon/Scene/HomeTimeline/HomeTimelineViewModel.swift @@ -33,7 +33,6 @@ final class HomeTimelineViewModel: NSObject { @Published var lastAutomaticFetchTimestamp: Date? = nil @Published var scrollPositionRecord: ScrollPositionRecord? = nil @Published var displaySettingBarButtonItem = true - @Published var displayComposeBarButtonItem = true weak var tableView: UITableView? weak var timelineMiddleLoaderTableViewCellDelegate: TimelineMiddleLoaderTableViewCellDelegate? diff --git a/Mastodon/Scene/Profile/ProfileViewController.swift b/Mastodon/Scene/Profile/ProfileViewController.swift index 55a952b0e..d3de07cff 100644 --- a/Mastodon/Scene/Profile/ProfileViewController.swift +++ b/Mastodon/Scene/Profile/ProfileViewController.swift @@ -42,19 +42,34 @@ final class ProfileViewController: UIViewController, NeedsDependency, MediaPrevi }() private(set) lazy var settingBarButtonItem: UIBarButtonItem = { - let barButtonItem = UIBarButtonItem(image: UIImage(systemName: "gear"), style: .plain, target: self, action: #selector(ProfileViewController.settingBarButtonItemPressed(_:))) + let barButtonItem = UIBarButtonItem( + image: Asset.ObjectsAndTools.gear.image.withRenderingMode(.alwaysTemplate), + style: .plain, + target: self, + action: #selector(ProfileViewController.settingBarButtonItemPressed(_:)) + ) barButtonItem.tintColor = .white return barButtonItem }() private(set) lazy var shareBarButtonItem: UIBarButtonItem = { - let barButtonItem = UIBarButtonItem(image: UIImage(systemName: "square.and.arrow.up"), style: .plain, target: self, action: #selector(ProfileViewController.shareBarButtonItemPressed(_:))) + let barButtonItem = UIBarButtonItem( + image: Asset.Arrow.squareAndArrowUp.image.withRenderingMode(.alwaysTemplate), + style: .plain, + target: self, + action: #selector(ProfileViewController.shareBarButtonItemPressed(_:)) + ) barButtonItem.tintColor = .white return barButtonItem }() private(set) lazy var favoriteBarButtonItem: UIBarButtonItem = { - let barButtonItem = UIBarButtonItem(image: UIImage(systemName: "star"), style: .plain, target: self, action: #selector(ProfileViewController.favoriteBarButtonItemPressed(_:))) + let barButtonItem = UIBarButtonItem( + image: Asset.ObjectsAndTools.star.image.withRenderingMode(.alwaysTemplate), + style: .plain, + target: self, + action: #selector(ProfileViewController.favoriteBarButtonItemPressed(_:)) + ) barButtonItem.tintColor = .white return barButtonItem }() diff --git a/Mastodon/Scene/Root/ContentSplitViewController.swift b/Mastodon/Scene/Root/ContentSplitViewController.swift index e3a6952f8..03e203107 100644 --- a/Mastodon/Scene/Root/ContentSplitViewController.swift +++ b/Mastodon/Scene/Root/ContentSplitViewController.swift @@ -38,7 +38,6 @@ final class ContentSplitViewController: UIViewController, NeedsDependency { private(set) lazy var mainTabBarController: MainTabBarController = { let mainTabBarController = MainTabBarController(context: context, coordinator: coordinator) if let homeTimelineViewController = mainTabBarController.viewController(of: HomeTimelineViewController.self) { - homeTimelineViewController.viewModel.displayComposeBarButtonItem = false homeTimelineViewController.viewModel.displaySettingBarButtonItem = false } return mainTabBarController diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Contents.json b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Contents.json new file mode 100644 index 000000000..33c521feb --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images" : [ + { + "filename" : "Share iOS.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + }, + "properties" : { + "preserves-vector-representation" : true + } +} diff --git a/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Share iOS.pdf b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Share iOS.pdf new file mode 100644 index 000000000..99e7c6724 --- /dev/null +++ b/MastodonSDK/Sources/MastodonAsset/Assets.xcassets/Arrow/square.and.arrow.up.imageset/Share iOS.pdf @@ -0,0 +1,110 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 5.004150 3.928345 cm +0.000000 0.000000 0.000000 scn +16.750000 11.071655 m +17.129696 11.071655 17.443491 10.789501 17.493153 10.423426 c +17.500000 10.321655 l +17.500000 3.320786 l +17.500000 1.587753 16.143545 0.171539 14.434423 0.075930 c +14.250000 0.070786 l +3.250000 0.070786 l +1.516969 0.070786 0.100754 1.427240 0.005145 3.136362 c +0.000000 3.320786 l +0.000000 10.321655 l +0.000000 10.735868 0.335786 11.071655 0.750000 11.071655 c +1.129696 11.071655 1.443491 10.789501 1.493153 10.423426 c +1.500000 10.321655 l +1.500000 3.320786 l +1.500000 2.402613 2.207110 1.649591 3.106473 1.576586 c +3.250000 1.570786 l +14.250000 1.570786 l +15.168174 1.570786 15.921191 2.277895 15.994198 3.177258 c +16.000000 3.320786 l +16.000000 10.321655 l +16.000000 10.735868 16.335787 11.071655 16.750000 11.071655 c +h +3.215397 14.855352 m +8.211636 19.851965 l +8.477744 20.118093 8.894129 20.142456 9.187749 19.924934 c +9.271878 19.852423 l +14.276731 14.855809 l +14.569866 14.563158 14.570257 14.088284 14.277605 13.795150 c +14.011558 13.528664 13.594913 13.504115 13.301123 13.721727 c +13.216944 13.794276 l +9.493999 17.510654 l +9.494885 5.816710 l +9.494885 5.437014 9.212732 5.123218 8.846657 5.073555 c +8.744885 5.066710 l +8.365190 5.066710 8.051395 5.348864 8.001733 5.714939 c +7.994885 5.816710 l +7.993999 17.513655 l +4.276096 13.794732 l +4.009840 13.528456 3.593178 13.504234 3.299558 13.722077 c +3.215437 13.794693 l +2.949160 14.060949 2.924938 14.477612 3.142782 14.771232 c +3.215397 14.855352 l +8.211636 19.851965 l +3.215397 14.855352 l +h +f +n +Q + +endstream +endobj + +3 0 obj + 1600 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 28.000000 28.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000001690 00000 n +0000001713 00000 n +0000001886 00000 n +0000001960 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +2019 +%%EOF \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift b/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift index cf103a2f8..b594f9209 100644 --- a/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift +++ b/MastodonSDK/Sources/MastodonAsset/Generated/Assets.swift @@ -24,6 +24,7 @@ public enum Asset { public enum Arrow { public static let `repeat` = ImageAsset(name: "Arrow/repeat") public static let repeatSmall = ImageAsset(name: "Arrow/repeat.small") + public static let squareAndArrowUp = ImageAsset(name: "Arrow/square.and.arrow.up") } public enum Asset { public static let email = ImageAsset(name: "Asset/email") From bbb46e62fda1c6d60706d3b8f45d1944f4a2f6fa Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 15:17:46 +0800 Subject: [PATCH 052/571] fix: compose tabBar button layout raise crash on iPad issue --- Mastodon/Scene/Root/MainTab/MainTabBarController.swift | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift index b91435a56..8970e2f29 100644 --- a/Mastodon/Scene/Root/MainTab/MainTabBarController.swift +++ b/Mastodon/Scene/Root/MainTab/MainTabBarController.swift @@ -406,8 +406,10 @@ extension MainTabBarController { switch traitCollection.horizontalSizeClass { case .compact: tabBar.isHidden = false + composeButttonShadowBackgroundContainer.isHidden = false default: tabBar.isHidden = true + composeButttonShadowBackgroundContainer.isHidden = true } } @@ -428,7 +430,7 @@ extension MainTabBarController { anchorImageView.alpha = 0 composeButttonShadowBackgroundContainer.translatesAutoresizingMaskIntoConstraints = false - tabBar.addSubview(composeButttonShadowBackgroundContainer) + self.view.addSubview(composeButttonShadowBackgroundContainer) // add to tabBar will crash on iPad when size class changing NSLayoutConstraint.activate([ composeButttonShadowBackgroundContainer.centerXAnchor.constraint(equalTo: anchorImageView.centerXAnchor), composeButttonShadowBackgroundContainer.centerYAnchor.constraint(equalTo: anchorImageView.centerYAnchor), From 9054b4eae3cd010c81d44b57323a143e065646bf Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 6 May 2022 15:18:16 +0800 Subject: [PATCH 053/571] chore: update version to 1.4.1 (124) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 36 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 ++-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 28 insertions(+), 28 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index 0b876b035..1abe4cbf3 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index ca9400a6f..7ddc27ac5 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4711,7 +4711,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4741,7 +4741,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4849,11 +4849,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 123; + DYLIB_CURRENT_VERSION = 124; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4880,11 +4880,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 123; + DYLIB_CURRENT_VERSION = 124; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4908,7 +4908,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4932,7 +4932,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4956,7 +4956,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4980,7 +4980,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5067,7 +5067,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5134,11 +5134,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 123; + DYLIB_CURRENT_VERSION = 124; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5162,7 +5162,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5185,7 +5185,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5209,7 +5209,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5233,7 +5233,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5256,7 +5256,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 123; + CURRENT_PROJECT_VERSION = 124; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index b4eb63998..8853baadf 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 33 + 35 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 32 + 36 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 34 + 37 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 2eac130fd..07308a8ee 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 123 + 124 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 79b876e51..a1adcf83b 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index 0b876b035..1abe4cbf3 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index 0b876b035..1abe4cbf3 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index 43a11fa79..bb670f1db 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index e8dc0cb3a..57436f4d9 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 123 + 124 NSExtension NSExtensionAttributes From 045e0ddc1e9a549aa357b2ba41cbe42584bba637 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 15:08:28 +0200 Subject: [PATCH 054/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 29086122d..e19d7d5c7 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -224,7 +224,7 @@ "furry": "สัตว์ขนยาว", "games": "เกม", "general": "ทั่วไป", - "journalism": "การเขียนข่าว", + "journalism": "วารสารศาสตร์", "lgbt": "lgbt", "regional": "ภูมิภาค", "art": "ศิลปะ", From cfbf06b7bcd4910fb41043bb6885a1e78c1e877b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 16:03:42 +0200 Subject: [PATCH 055/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index e19d7d5c7..93d7154b8 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -218,7 +218,7 @@ "category": { "all": "ทั้งหมด", "all_accessiblity_description": "หมวดหมู่: ทั้งหมด", - "academia": "วิชาการ", + "academia": "สถาบันการศึกษา", "activism": "กิจกรรมเพื่อการเปลี่ยนแปลง", "food": "อาหาร", "furry": "สัตว์ขนยาว", From 5ad8ccd57acf880bf192801461a33ef004ff5ea4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 17:16:05 +0200 Subject: [PATCH 056/571] New translations app.json (Galician) --- Localization/StringsConvertor/input/gl_ES/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index 12881f0b6..16da9abe3 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -606,14 +606,14 @@ } }, "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" + "tab_bar_hint": "Perfil seleccionado: %s. Dobre toque e manter para mostrar o intercambiador de contas", + "dismiss_account_switcher": "Desbotar intercambiador de contas", + "add_account": "Engadir conta" }, "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" + "new_in_mastodon": "Novidade en Mastodon", + "multiple_account_switch_intro_description": "Cambia dunha conta a outra mantendo preso o botón do perfil.", + "accessibility_hint": "Dobre toque para desbotar este asistente" } } } \ No newline at end of file From 94b1e89030c15417562305278277c91c38468189 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 17:16:06 +0200 Subject: [PATCH 057/571] New translations ios-infoPlist.json (Galician) --- .../StringsConvertor/input/gl_ES/ios-infoPlist.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json b/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json index c6db73de0..e3ec3fb73 100644 --- a/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json @@ -1,6 +1,6 @@ { - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" + "NSCameraUsageDescription": "Utilizado para facer foto e publicar estado", + "NSPhotoLibraryAddUsageDescription": "Utilizado para gardar a foto na Biblioteca", + "NewPostShortcutItemTitle": "Nova publicación", + "SearchShortcutItemTitle": "Buscar" } From 0fa25dcfce12e8ac4817e5be73700c8cd9925ee8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 17:16:07 +0200 Subject: [PATCH 058/571] New translations Localizable.stringsdict (Galician) --- .../input/gl_ES/Localizable.stringsdict | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict index 503ff9dbd..e2fb1df95 100644 --- a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey ld one - 1 unread notification + 1 notificación non lida other - %ld unread notification + %ld notificacións non lidas a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + O límite supera %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -29,15 +29,15 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 caracter other - %ld characters + %ld caracteres a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + O límite de entrada mantense en %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -45,9 +45,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 caracter other - %ld characters + %ld caracteres plural.count.metric_formatted.post @@ -61,9 +61,9 @@ NSStringFormatValueTypeKey ld one - post + publicación other - posts + publicacións plural.count.post @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 post + 1 publicación other - %ld posts + %ld publicacións plural.count.favorite @@ -93,9 +93,9 @@ NSStringFormatValueTypeKey ld one - 1 favorite + 1 favorito other - %ld favorites + %ld favoritos plural.count.reblog @@ -109,9 +109,9 @@ NSStringFormatValueTypeKey ld one - 1 reblog + 1 promoción other - %ld reblogs + %ld promocións plural.count.reply @@ -125,9 +125,9 @@ NSStringFormatValueTypeKey ld one - 1 reply + 1 resposta other - %ld replies + %ld respostas plural.count.vote @@ -141,9 +141,9 @@ NSStringFormatValueTypeKey ld one - 1 vote + 1 voto other - %ld votes + %ld votos plural.count.voter From edee7fc91742d69da37bf8a75c0b0597c9c3a2a4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 18:11:08 +0200 Subject: [PATCH 059/571] New translations Localizable.stringsdict (Galician) --- .../input/gl_ES/Localizable.stringsdict | 64 +++++++++---------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict index e2fb1df95..a67c938ab 100644 --- a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 voter + 1 votante other - %ld voters + %ld votantes plural.people_talking @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 people talking + 1 persoa comentando other - %ld people talking + %ld persoas comentando plural.count.following @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 following + 1 seguimento other - %ld following + %ld seguimentos plural.count.follower @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 seguidora other - %ld followers + %ld seguidoras date.year.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + Queda 1 ano other - %ld years left + Quedan %ld anos date.month.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + Queda 1 mes other - %ld months left + Quedan %ld meses date.day.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + Queda 1 día other - %ld days left + Quedan %ld días date.hour.left @@ -269,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + Queda 1 hora other - %ld hours left + Quedan %ld horas date.minute.left @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + Queda 1 minuto other - %ld minutes left + Quedan %ld minutos date.second.left @@ -301,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1 second left + Queda 1 segundo other - %ld seconds left + Quedan %ld segundos date.year.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + hai 1 ano other - %ldy ago + hai %ld anos date.month.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1M ago + hai 1 mes other - %ldM ago + hai %ld meses date.day.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + hai 1 día other - %ldd ago + hai %ld días date.hour.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + fai 1 hora other - %ldh ago + fai %ld horas date.minute.ago.abbr @@ -381,9 +381,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + fai 1 minuto other - %ldm ago + fai %ld minutos date.second.ago.abbr @@ -397,9 +397,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + fai 1 seg. other - %lds ago + fai %ld seg. From ac3903d62cefe5f58e8324d39803b43c227aee60 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 18:11:09 +0200 Subject: [PATCH 060/571] New translations Intents.strings (Galician) --- .../Intents/input/gl_ES/Intents.strings | 46 +++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings index f2c1bd52c..2083cc701 100644 --- a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Publicar en Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Texto a incluír"; -"CsR7G2" = "Post on Mastodon"; +"CsR7G2" = "Publicar en Mastodon"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Cal é o contido a publicar?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Fallou a publicación"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Razón do fallo"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Enviar Publicación con texto"; -"RxSqsb" = "Post"; +"RxSqsb" = "Publicación"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Publicar ${content} en Mastodon"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Publicación"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Visibilidade"; "Zo4jgJ" = "Visibilidade da publicación"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Hai ${count} opcións que coinciden con ‘Público’."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Hai ${count} opcións que coinciden con 'Só seguidoras’."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, Público"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, Só seguidoras"; -"dUyuGg" = "Post on Mastodon"; +"dUyuGg" = "Publicar en Mastodon"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Público"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Só seguidoras"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Fallou a publicación. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Publicación correcta."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Só para confirmar, querías ’Público'?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Só para confirmar, querías ’Só para seguidoras'?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Publicación correcta. "; From d72f67f1ea49b9ec319c0380d185fce60b3918fb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 18:11:10 +0200 Subject: [PATCH 061/571] New translations Intents.stringsdict (Galician) --- .../Intents/input/gl_ES/Intents.stringsdict | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict index 18422c772..6e3a897f0 100644 --- a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict +++ b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict @@ -5,7 +5,7 @@ There are ${count} options matching ‘${content}’. - 2 NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. + Hai %#@count_option@ coincidencias con '${content}'. count_option NSStringFormatSpecTypeKey @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey %ld one - 1 option + 1 opción other - %ld options + %ld opcións There are ${count} options matching ‘${visibility}’. NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. + Hai %#@count_option@ coincidentes con '${visibility}'. count_option NSStringFormatSpecTypeKey @@ -29,9 +29,9 @@ NSStringFormatValueTypeKey %ld one - 1 option + 1 opción other - %ld options + %ld opcións From 03dc820771284b86909af229c61e5d65a5518e55 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 6 May 2022 21:06:42 +0200 Subject: [PATCH 062/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr_TR/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index 52dde00a6..efca992f1 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -240,7 +240,7 @@ "category": "BEŞ" }, "input": { - "placeholder": "Rajekarekî bibîne an jî beşdarî ya xwe bibe..." + "placeholder": "Li rajekaran bigere" }, "empty_state": { "finding_servers": "Peydakirina rajekarên berdest...", From 8aa8825269993fdca4eef5a05bdebbbcd08fb85c Mon Sep 17 00:00:00 2001 From: CMK Date: Sat, 7 May 2022 11:42:10 +0800 Subject: [PATCH 063/571] chore: suppress warnings --- Mastodon.xcodeproj/project.pbxproj | 4 ---- .../xcschemes/xcschememanagement.plist | 6 +++--- Mastodon/Coordinator/SceneCoordinator.swift | 2 +- .../Onboarding/PickServerSection.swift | 2 +- .../Diffiable/Settings/SettingsSection.swift | 2 +- .../MastodonSDK/Mastodon+Entity+Tag.swift | 19 +++++++++---------- .../Extension/UINavigationController.swift | 16 ---------------- .../DataSourceFacade+SearchHistory.swift | 2 +- ...er+NotificationTableViewCellDelegate.swift | 2 +- ...Provider+StatusTableViewCellDelegate.swift | 2 +- ...ider+TableViewControllerNavigateable.swift | 2 +- ...taSourceProvider+UITableViewDelegate.swift | 2 +- .../Scene/Account/AccountViewController.swift | 2 +- .../AutoCompleteViewModel+State.swift | 2 +- .../News/DiscoveryNewsViewModel+State.swift | 2 +- ...meTimelineViewController+DebugAction.swift | 2 +- .../Scene/Profile/ProfileViewController.swift | 4 ++-- .../Root/Sidebar/SidebarViewController.swift | 5 ++--- .../Settings/SettingsViewController.swift | 2 +- ...wViewControllerAnimatedTransitioning.swift | 2 ++ .../APIService/APIService+Thread.swift | 2 +- Mastodon/Service/InstanceService.swift | 2 +- .../MastodonUI/Extension/UIImage.swift | 1 + 23 files changed, 34 insertions(+), 53 deletions(-) delete mode 100644 Mastodon/Extension/UINavigationController.swift diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 7ddc27ac5..0f49a3f4e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -537,7 +537,6 @@ DBCBED1726132DB500B49291 /* UserTimelineViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCBED1626132DB500B49291 /* UserTimelineViewModel+Diffable.swift */; }; DBCBED1D26132E1A00B49291 /* StatusFetchedResultsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCBED1C26132E1A00B49291 /* StatusFetchedResultsController.swift */; }; DBCC3B30261440A50045B23D /* UITabBarController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC3B2F261440A50045B23D /* UITabBarController.swift */; }; - DBCC3B36261440BA0045B23D /* UINavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC3B35261440BA0045B23D /* UINavigationController.swift */; }; DBCC3B8F26148F7B0045B23D /* CachedProfileViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC3B8E26148F7B0045B23D /* CachedProfileViewModel.swift */; }; DBCC3B9526157E6E0045B23D /* APIService+Relationship.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC3B9426157E6E0045B23D /* APIService+Relationship.swift */; }; DBCCC71E25F73297007E1AB6 /* APIService+Reblog.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCCC71D25F73297007E1AB6 /* APIService+Reblog.swift */; }; @@ -1302,7 +1301,6 @@ DBCBED1626132DB500B49291 /* UserTimelineViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserTimelineViewModel+Diffable.swift"; sourceTree = ""; }; DBCBED1C26132E1A00B49291 /* StatusFetchedResultsController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusFetchedResultsController.swift; sourceTree = ""; }; DBCC3B2F261440A50045B23D /* UITabBarController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UITabBarController.swift; sourceTree = ""; }; - DBCC3B35261440BA0045B23D /* UINavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UINavigationController.swift; sourceTree = ""; }; DBCC3B8E26148F7B0045B23D /* CachedProfileViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CachedProfileViewModel.swift; sourceTree = ""; }; DBCC3B9426157E6E0045B23D /* APIService+Relationship.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Relationship.swift"; sourceTree = ""; }; DBCCC71D25F73297007E1AB6 /* APIService+Reblog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Reblog.swift"; sourceTree = ""; }; @@ -2792,7 +2790,6 @@ 2D84350425FF858100EECE90 /* UIScrollView.swift */, DB9E0D6E25EE008500CFDD76 /* UIInterpolatingMotionEffect.swift */, DBCC3B2F261440A50045B23D /* UITabBarController.swift */, - DBCC3B35261440BA0045B23D /* UINavigationController.swift */, DB73BF4827140BA300781945 /* UICollectionViewDiffableDataSource.swift */, DB73BF4A27140C0800781945 /* UITableViewDiffableDataSource.swift */, ); @@ -4029,7 +4026,6 @@ DB9D7C21269824B80054B3DF /* APIService+Filter.swift in Sources */, 2D38F1E525CD46C100561493 /* HomeTimelineViewModel.swift in Sources */, DB0FCB842796B2A2006C02E2 /* FavoriteViewController+DataSourceProvider.swift in Sources */, - DBCC3B36261440BA0045B23D /* UINavigationController.swift in Sources */, DB0FCB68279507EF006C02E2 /* DataSourceFacade+Meta.swift in Sources */, DB63F75C279956D000455B82 /* Persistence+Tag.swift in Sources */, 2D84350525FF858100EECE90 /* UIScrollView.swift in Sources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 8853baadf..7f54b9011 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 35 + 20 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 36 + 19 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 37 + 21 SuppressBuildableAutocreation diff --git a/Mastodon/Coordinator/SceneCoordinator.swift b/Mastodon/Coordinator/SceneCoordinator.swift index 819872c70..5e7fbf472 100644 --- a/Mastodon/Coordinator/SceneCoordinator.swift +++ b/Mastodon/Coordinator/SceneCoordinator.swift @@ -309,7 +309,7 @@ extension SceneCoordinator { if scene.isOnboarding { return OnboardingNavigationController(rootViewController: viewController) } else { - return UINavigationController(rootViewController: viewController) + return AdaptiveStatusBarStyleNavigationController(rootViewController: viewController) } }() modalNavigationController.modalPresentationCapturesStatusBarAppearance = true diff --git a/Mastodon/Diffiable/Onboarding/PickServerSection.swift b/Mastodon/Diffiable/Onboarding/PickServerSection.swift index 5faaefbcc..01a31f6f6 100644 --- a/Mastodon/Diffiable/Onboarding/PickServerSection.swift +++ b/Mastodon/Diffiable/Onboarding/PickServerSection.swift @@ -29,7 +29,7 @@ extension PickServerSection { weak dependency, weak pickServerCellDelegate ] tableView, indexPath, item -> UITableViewCell? in - guard let dependency = dependency else { return nil } + guard let _ = dependency else { return nil } switch item { case .header: let cell = tableView.dequeueReusableCell(withIdentifier: String(describing: OnboardingHeadlineTableViewCell.self), for: indexPath) as! OnboardingHeadlineTableViewCell diff --git a/Mastodon/Diffiable/Settings/SettingsSection.swift b/Mastodon/Diffiable/Settings/SettingsSection.swift index adc7140be..6925303d8 100644 --- a/Mastodon/Diffiable/Settings/SettingsSection.swift +++ b/Mastodon/Diffiable/Settings/SettingsSection.swift @@ -51,7 +51,7 @@ extension SettingsSection { } cell.delegate = settingsAppearanceTableViewCellDelegate return cell - case .appearancePreference(let record, let appearanceType): + case .appearancePreference(let record, _): let cell = tableView.dequeueReusableCell(withIdentifier: String(describing: SettingsToggleTableViewCell.self), for: indexPath) as! SettingsToggleTableViewCell cell.delegate = settingsToggleCellDelegate managedObjectContext.performAndWait { diff --git a/Mastodon/Extension/MastodonSDK/Mastodon+Entity+Tag.swift b/Mastodon/Extension/MastodonSDK/Mastodon+Entity+Tag.swift index e217d3a82..6251d1814 100644 --- a/Mastodon/Extension/MastodonSDK/Mastodon+Entity+Tag.swift +++ b/Mastodon/Extension/MastodonSDK/Mastodon+Entity+Tag.swift @@ -7,13 +7,12 @@ import MastodonSDK -extension Mastodon.Entity.Tag: Hashable { - public func hash(into hasher: inout Hasher) { - hasher.combine(name) - } - - public static func == (lhs: Mastodon.Entity.Tag, rhs: Mastodon.Entity.Tag) -> Bool { - return lhs.name == rhs.name - } -} - +//extension Mastodon.Entity.Tag: Hashable { +// public func hash(into hasher: inout Hasher) { +// hasher.combine(name) +// } +// +// public static func == (lhs: Mastodon.Entity.Tag, rhs: Mastodon.Entity.Tag) -> Bool { +// return lhs.name == rhs.name +// } +//} diff --git a/Mastodon/Extension/UINavigationController.swift b/Mastodon/Extension/UINavigationController.swift deleted file mode 100644 index 9a9c44ab3..000000000 --- a/Mastodon/Extension/UINavigationController.swift +++ /dev/null @@ -1,16 +0,0 @@ -// -// UINavigationController.swift -// Mastodon -// -// Created by MainasuK Cirno on 2021-3-31. -// - -import UIKit - -// This not works! -// SeeAlso: `AdaptiveStatusBarStyleNavigationController` -extension UINavigationController { - open override var childForStatusBarStyle: UIViewController? { - return visibleViewController - } -} diff --git a/Mastodon/Protocol/Provider/DataSourceFacade+SearchHistory.swift b/Mastodon/Protocol/Provider/DataSourceFacade+SearchHistory.swift index cbc6bf348..8beaabbae 100644 --- a/Mastodon/Protocol/Provider/DataSourceFacade+SearchHistory.swift +++ b/Mastodon/Protocol/Provider/DataSourceFacade+SearchHistory.swift @@ -99,7 +99,7 @@ extension DataSourceFacade { try await managedObjectContext.performChanges { guard let authenticationBox = _authenticationBox else { return } - guard let me = authenticationBox.authenticationRecord.object(in: managedObjectContext)?.user else { return } + guard let _ = authenticationBox.authenticationRecord.object(in: managedObjectContext)?.user else { return } let request = SearchHistory.sortedFetchRequest request.predicate = SearchHistory.predicate( domain: authenticationBox.domain, diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift b/Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift index f6e58673b..ca7fdeb18 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+NotificationTableViewCellDelegate.swift @@ -486,7 +486,7 @@ extension NotificationTableViewCellDelegate where Self: DataSourceProvider { provider: self, user: user ) - case .notification(let notification): + case .notification: assertionFailure("TODO") default: assertionFailure("TODO") diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift index 9e5838e77..f00e14840 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift @@ -494,7 +494,7 @@ extension StatusTableViewCellDelegate where Self: DataSourceProvider { provider: self, user: user ) - case .notification(let notification): + case .notification: assertionFailure("TODO") default: assertionFailure("TODO") diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+TableViewControllerNavigateable.swift b/Mastodon/Protocol/Provider/DataSourceProvider+TableViewControllerNavigateable.swift index f7e50cff8..50fa17866 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+TableViewControllerNavigateable.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+TableViewControllerNavigateable.swift @@ -138,7 +138,7 @@ extension TableViewControllerNavigateableCore where Self: DataSourceProvider { target: .status, status: record ) - case .notification(let record): + case .notification: assertionFailure() default: assertionFailure() diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+UITableViewDelegate.swift b/Mastodon/Protocol/Provider/DataSourceProvider+UITableViewDelegate.swift index 3968df110..c00c36971 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+UITableViewDelegate.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+UITableViewDelegate.swift @@ -93,7 +93,7 @@ extension UITableViewDelegate where Self: DataSourceProvider & MediaPreviewableV guard let image = mediaView.thumbnail(), let assetURLString = mediaView.configuration?.assetURL, let assetURL = URL(string: assetURLString), - let resourceType = mediaView.configuration?.resourceType + let _ = mediaView.configuration?.resourceType else { // not provide preview unless thumbnail ready return nil diff --git a/Mastodon/Scene/Account/AccountViewController.swift b/Mastodon/Scene/Account/AccountViewController.swift index 42c9e1d62..20d7b26a1 100644 --- a/Mastodon/Scene/Account/AccountViewController.swift +++ b/Mastodon/Scene/Account/AccountViewController.swift @@ -118,7 +118,7 @@ extension AccountListViewController { // the presentingViewController may deinit. // Hold it and check the window to prevent PanModel crash - guard let presentingViewController = presentingViewController else { return } + guard let _ = presentingViewController else { return } guard self.view.window != nil else { return } self.hasLoaded = true diff --git a/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel+State.swift b/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel+State.swift index ebda78a1e..632b57b66 100644 --- a/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel+State.swift +++ b/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel+State.swift @@ -77,7 +77,7 @@ extension AutoCompleteViewModel.State { override func didEnter(from previousState: GKState?) { super.didEnter(from: previousState) - guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + guard let viewModel = viewModel, let _ = stateMachine else { return } let searchText = viewModel.inputText.value let searchType = AutoCompleteViewModel.SearchType(inputText: searchText) ?? .default diff --git a/Mastodon/Scene/Discovery/News/DiscoveryNewsViewModel+State.swift b/Mastodon/Scene/Discovery/News/DiscoveryNewsViewModel+State.swift index 8da975de2..92b84d176 100644 --- a/Mastodon/Scene/Discovery/News/DiscoveryNewsViewModel+State.swift +++ b/Mastodon/Scene/Discovery/News/DiscoveryNewsViewModel+State.swift @@ -68,7 +68,7 @@ extension DiscoveryNewsViewModel.State { override func didEnter(from previousState: GKState?) { super.didEnter(from: previousState) - guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + guard let _ = viewModel, let stateMachine = stateMachine else { return } stateMachine.enter(Loading.self) } diff --git a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController+DebugAction.swift b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController+DebugAction.swift index 8b6eb9f42..4fae66d33 100644 --- a/Mastodon/Scene/HomeTimeline/HomeTimelineViewController+DebugAction.swift +++ b/Mastodon/Scene/HomeTimeline/HomeTimelineViewController+DebugAction.swift @@ -186,7 +186,7 @@ extension HomeTimelineViewController { } func match(item: StatusItem) -> Bool { - let authenticationBox = AppContext.shared.authenticationService.activeMastodonAuthenticationBox.value + // let authenticationBox = AppContext.shared.authenticationService.activeMastodonAuthenticationBox.value switch item { case .feed(let record): guard let feed = record.object(in: AppContext.shared.managedObjectContext) else { return false } diff --git a/Mastodon/Scene/Profile/ProfileViewController.swift b/Mastodon/Scene/Profile/ProfileViewController.swift index d3de07cff..021f62ede 100644 --- a/Mastodon/Scene/Profile/ProfileViewController.swift +++ b/Mastodon/Scene/Profile/ProfileViewController.swift @@ -634,7 +634,7 @@ extension ProfileViewController { return nil } let name = user.displayNameWithFallback - let record = ManagedObjectRecord(objectID: user.objectID) + let _ = ManagedObjectRecord(objectID: user.objectID) let menu = MastodonMenu.setupMenu( actions: [ .muteUser(.init(name: name, isMuting: self.viewModel.isMuting.value)), @@ -649,7 +649,7 @@ extension ProfileViewController { .sink { [weak self] completion in guard let self = self else { return } switch completion { - case .failure(let error): + case .failure: self.moreMenuBarButtonItem.menu = nil case .finished: break diff --git a/Mastodon/Scene/Root/Sidebar/SidebarViewController.swift b/Mastodon/Scene/Root/Sidebar/SidebarViewController.swift index 7ac0f6e54..c7cf3d49d 100644 --- a/Mastodon/Scene/Root/Sidebar/SidebarViewController.swift +++ b/Mastodon/Scene/Root/Sidebar/SidebarViewController.swift @@ -154,10 +154,9 @@ extension SidebarViewController { coordinator.animate { context in self.collectionView.collectionViewLayout.invalidateLayout() - } completion: { [weak self] context in -// guard let self = self else { return } + } completion: { context in + // do nothing } - } } diff --git a/Mastodon/Scene/Settings/SettingsViewController.swift b/Mastodon/Scene/Settings/SettingsViewController.swift index 4cf20cd09..8455ac7d9 100644 --- a/Mastodon/Scene/Settings/SettingsViewController.swift +++ b/Mastodon/Scene/Settings/SettingsViewController.swift @@ -448,7 +448,7 @@ extension SettingsViewController: SettingsAppearanceTableViewCellDelegate { guard let dataSource = viewModel.dataSource else { return } guard let indexPath = tableView.indexPath(for: cell) else { return } let item = dataSource.itemIdentifier(for: indexPath) - guard case let .appearance(record) = item else { return } + guard case .appearance = item else { return } Task { @MainActor in switch appearanceMode { diff --git a/Mastodon/Scene/Transition/MediaPreview/MediaHostToMediaPreviewViewControllerAnimatedTransitioning.swift b/Mastodon/Scene/Transition/MediaPreview/MediaHostToMediaPreviewViewControllerAnimatedTransitioning.swift index f730e0b8b..1b2d62211 100644 --- a/Mastodon/Scene/Transition/MediaPreview/MediaHostToMediaPreviewViewControllerAnimatedTransitioning.swift +++ b/Mastodon/Scene/Transition/MediaPreview/MediaHostToMediaPreviewViewControllerAnimatedTransitioning.swift @@ -255,6 +255,8 @@ extension MediaHostToMediaPreviewViewControllerAnimatedTransitioning { rect.size.height -= offset return rect }() + + // FIXME: let maskLayerToFinalPath = maskLayerToFinalRect.flatMap { UIBezierPath(rect: $0) }?.cgPath if let maskLayerToPath = maskLayerToPath { diff --git a/Mastodon/Service/APIService/APIService+Thread.swift b/Mastodon/Service/APIService/APIService+Thread.swift index 782da5886..f6c36e5b6 100644 --- a/Mastodon/Service/APIService/APIService+Thread.swift +++ b/Mastodon/Service/APIService/APIService+Thread.swift @@ -34,7 +34,7 @@ extension APIService { let value = response.value.ancestors + response.value.descendants for entity in value { - Persistence.Status.createOrMerge( + _ = Persistence.Status.createOrMerge( in: managedObjectContext, context: Persistence.Status.PersistContext( domain: domain, diff --git a/Mastodon/Service/InstanceService.swift b/Mastodon/Service/InstanceService.swift index 4fb6309fd..03b8dfd4e 100644 --- a/Mastodon/Service/InstanceService.swift +++ b/Mastodon/Service/InstanceService.swift @@ -95,7 +95,7 @@ extension InstanceService { self.logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): [Instance] update instance for domain: \(domain)") } } receiveValue: { [weak self] response in - guard let self = self else { return } + guard let _ = self else { return } // do nothing } .store(in: &disposeBag) diff --git a/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift b/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift index 105b4c27d..141b723bc 100644 --- a/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift +++ b/MastodonSDK/Sources/MastodonUI/Extension/UIImage.swift @@ -14,4 +14,5 @@ extension UIImage { self.draw(in: CGRect(origin: .zero, size: size)) } } + } From f0658f77f8289fe68bdba49fa71586d21ece09f7 Mon Sep 17 00:00:00 2001 From: CMK Date: Sat, 7 May 2022 11:43:37 +0800 Subject: [PATCH 064/571] feat: add navigation pan pop gesture. resolve #407 #419 --- ...veStatusBarStyleNavigationController.swift | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift b/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift index aac23285b..f4ad467da 100644 --- a/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift +++ b/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift @@ -10,7 +10,41 @@ import UIKit // Make status bar style adaptive for child view controller // SeeAlso: `modalPresentationCapturesStatusBarAppearance` class AdaptiveStatusBarStyleNavigationController: UINavigationController { + + private lazy var fullWidthBackGestureRecognizer = UIPanGestureRecognizer() + override var childForStatusBarStyle: UIViewController? { visibleViewController } } + +// ref: https://stackoverflow.com/a/60598558/3797903 +extension AdaptiveStatusBarStyleNavigationController { + + override func viewDidLoad() { + super.viewDidLoad() + setupFullWidthBackGesture() + } + + private func setupFullWidthBackGesture() { + // The trick here is to wire up our full-width `fullWidthBackGestureRecognizer` to execute the same handler as + // the system `interactivePopGestureRecognizer`. That's done by assigning the same "targets" (effectively + // object and selector) of the system one to our gesture recognizer. + guard let interactivePopGestureRecognizer = interactivePopGestureRecognizer, + let targets = interactivePopGestureRecognizer.value(forKey: "targets") + else { return } + + fullWidthBackGestureRecognizer.setValue(targets, forKey: "targets") + fullWidthBackGestureRecognizer.delegate = self + view.addGestureRecognizer(fullWidthBackGestureRecognizer) + } +} + +// MARK: - UIGestureRecognizerDelegate +extension AdaptiveStatusBarStyleNavigationController: UIGestureRecognizerDelegate { + func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool { + let isSystemSwipeToBackEnabled = interactivePopGestureRecognizer?.isEnabled == true + let isThereStackedViewControllers = viewControllers.count > 1 + return isSystemSwipeToBackEnabled && isThereStackedViewControllers + } +} From 716e8bf121d20ce56e3a1aae5d1c5237b32aa9ee Mon Sep 17 00:00:00 2001 From: CMK Date: Sat, 7 May 2022 11:45:44 +0800 Subject: [PATCH 065/571] chore: update version to 1.4.1 (125) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 36 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 ++-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 28 insertions(+), 28 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index 1abe4cbf3..973b24056 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 0f49a3f4e..c8a0a2bca 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4707,7 +4707,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4737,7 +4737,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4845,11 +4845,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 124; + DYLIB_CURRENT_VERSION = 125; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4876,11 +4876,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 124; + DYLIB_CURRENT_VERSION = 125; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4904,7 +4904,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4928,7 +4928,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4952,7 +4952,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4976,7 +4976,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5063,7 +5063,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5130,11 +5130,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 124; + DYLIB_CURRENT_VERSION = 125; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5158,7 +5158,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5181,7 +5181,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5205,7 +5205,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5229,7 +5229,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5252,7 +5252,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 124; + CURRENT_PROJECT_VERSION = 125; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 7f54b9011..75b20985b 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 20 + 26 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 19 + 28 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 21 + 27 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 07308a8ee..14588c758 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 124 + 125 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index a1adcf83b..58d21c7bb 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index 1abe4cbf3..973b24056 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index 1abe4cbf3..973b24056 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index bb670f1db..c65337a3d 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 57436f4d9..e1d9a940e 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 124 + 125 NSExtension NSExtensionAttributes From 7380d28d745ae16bb083c088ff41a551c625b362 Mon Sep 17 00:00:00 2001 From: CMK Date: Sat, 7 May 2022 15:12:00 +0800 Subject: [PATCH 066/571] fix: profile bio line break get trimmed issue. resolve #311 --- Mastodon/Scene/Profile/Header/ProfileHeaderViewModel.swift | 5 ++++- Mastodon/Scene/Profile/ProfileViewController.swift | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Mastodon/Scene/Profile/Header/ProfileHeaderViewModel.swift b/Mastodon/Scene/Profile/Header/ProfileHeaderViewModel.swift index 7f7b0dd00..8bdce2a6d 100644 --- a/Mastodon/Scene/Profile/Header/ProfileHeaderViewModel.swift +++ b/Mastodon/Scene/Profile/Header/ProfileHeaderViewModel.swift @@ -90,7 +90,10 @@ extension ProfileHeaderViewModel { extension ProfileHeaderViewModel { static func normalize(note: String?) -> String? { - guard let note = note?.trimmingCharacters(in: .whitespacesAndNewlines),!note.isEmpty else { + let _note = note?.replacingOccurrences(of: "
|
", with: "\u{2028}", options: .regularExpression, range: nil) + .replacingOccurrences(of: "

", with: "

\u{2029}", range: nil) + .trimmingCharacters(in: .whitespacesAndNewlines) + guard let note = _note, !note.isEmpty else { return nil } diff --git a/Mastodon/Scene/Profile/ProfileViewController.swift b/Mastodon/Scene/Profile/ProfileViewController.swift index 021f62ede..b376ebcf9 100644 --- a/Mastodon/Scene/Profile/ProfileViewController.swift +++ b/Mastodon/Scene/Profile/ProfileViewController.swift @@ -953,6 +953,7 @@ extension ProfileViewController: ProfileHeaderViewDelegate { viewModel.isUpdating.value = true Task { do { + // TODO: handle error _ = try await viewModel.updateProfileInfo( headerProfileInfo: profileHeaderViewModel.editProfileInfo, aboutProfileInfo: profileAboutViewModel.editProfileInfo From 238945d9b11fe8e8f675627c9cfdaa34f5a5837e Mon Sep 17 00:00:00 2001 From: CMK Date: Sat, 7 May 2022 15:13:07 +0800 Subject: [PATCH 067/571] chore: update version to 1.4.1 (126) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 36 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 ++-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 28 insertions(+), 28 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index 973b24056..92f442892 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126
diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index c8a0a2bca..d5f5cbd79 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4707,7 +4707,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4737,7 +4737,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4845,11 +4845,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 125; + DYLIB_CURRENT_VERSION = 126; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4876,11 +4876,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 125; + DYLIB_CURRENT_VERSION = 126; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4904,7 +4904,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4928,7 +4928,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4952,7 +4952,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4976,7 +4976,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5063,7 +5063,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5130,11 +5130,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 125; + DYLIB_CURRENT_VERSION = 126; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5158,7 +5158,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5181,7 +5181,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5205,7 +5205,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5229,7 +5229,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5252,7 +5252,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 125; + CURRENT_PROJECT_VERSION = 126; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 75b20985b..07a847a0c 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 26 + 28 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 28 + 27 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 27 + 26 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 14588c758..c93fd9a65 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@
CFBundleVersion - 125 + 126 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 58d21c7bb..3f1630945 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index 973b24056..92f442892 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index 973b24056..92f442892 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index c65337a3d..f074db82b 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index e1d9a940e..31c7447fe 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.1 CFBundleVersion - 125 + 126 NSExtension NSExtensionAttributes From e0f6940e28bc1b48c95f2da008c615b91e742f24 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 May 2022 18:02:23 +0800 Subject: [PATCH 068/571] feat: add i18n strings for report flow --- Localization/app.json | 44 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 2 deletions(-) diff --git a/Localization/app.json b/Localization/app.json index 90b9b0fd8..44ff04de4 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -600,7 +601,46 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "Block_domain": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 2ef6345d836c7d86d8485df3f521299a822a327f Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 May 2022 18:34:39 +0800 Subject: [PATCH 069/571] feat: add violates server rules report path --- Mastodon.xcodeproj/project.pbxproj | 78 ++++++-- .../xcschemes/xcschememanagement.plist | 6 +- Mastodon/Coordinator/SceneCoordinator.swift | 12 +- .../MastodonConfirmEmailViewController.swift | 5 + .../Register/MastodonRegisterView.swift | 3 - .../Report/Report/ReportViewController.swift | 165 ++++++++++++++++ .../Scene/Report/Report/ReportViewModel.swift | 176 ++++++++++++++++++ .../ReportReason/ReportReasonView.swift | 113 +++++++++++ .../ReportReasonViewController.swift | 116 ++++++++++++ .../ReportReason/ReportReasonViewModel.swift | 83 +++++++++ .../ReportResultViewController.swift | 16 ++ .../ReportServerRulesView.swift | 116 ++++++++++++ .../ReportServerRulesViewController.swift | 117 ++++++++++++ .../ReportServerRulesViewModel.swift | 35 ++++ ...swift => ReportStatusViewController.swift} | 76 ++++---- ...t => ReportStatusViewModel+Diffable.swift} | 6 +- ...wift => ReportStatusViewModel+State.swift} | 20 +- ...odel.swift => ReportStatusViewModel.swift} | 9 +- .../ReportSupplementaryViewController.swift | 65 +++---- ...eportSupplementaryViewModel+Diffable.swift | 4 +- .../ReportSupplementaryViewModel.swift | 50 +---- .../Cell/ReportCommentTableViewCell.swift | 17 +- .../ReportViewControllerAppearance.swift | 2 +- ...veStatusBarStyleNavigationController.swift | 8 +- 24 files changed, 1129 insertions(+), 169 deletions(-) create mode 100644 Mastodon/Scene/Report/Report/ReportViewController.swift create mode 100644 Mastodon/Scene/Report/Report/ReportViewModel.swift create mode 100644 Mastodon/Scene/Report/ReportReason/ReportReasonView.swift create mode 100644 Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift create mode 100644 Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift create mode 100644 Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift create mode 100644 Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift create mode 100644 Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift rename Mastodon/Scene/Report/ReportStatus/{ReportViewController.swift => ReportStatusViewController.swift} (75%) rename Mastodon/Scene/Report/ReportStatus/{ReportViewModel+Diffable.swift => ReportStatusViewModel+Diffable.swift} (93%) rename Mastodon/Scene/Report/ReportStatus/{ReportViewModel+State.swift => ReportStatusViewModel+State.swift} (92%) rename Mastodon/Scene/Report/ReportStatus/{ReportViewModel.swift => ReportStatusViewModel.swift} (91%) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index d5f5cbd79..400e4d73f 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -87,7 +87,7 @@ 2DF123A725C3B0210020F248 /* ActiveLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DF123A625C3B0210020F248 /* ActiveLabel.swift */; }; 2DF75BA725D10E1000694EC8 /* APIService+Favorite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2DF75BA625D10E1000694EC8 /* APIService+Favorite.swift */; }; 5B24BBDA262DB14800A9381B /* ReportViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B24BBD7262DB14800A9381B /* ReportViewModel.swift */; }; - 5B24BBDB262DB14800A9381B /* ReportViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B24BBD8262DB14800A9381B /* ReportViewModel+Diffable.swift */; }; + 5B24BBDB262DB14800A9381B /* ReportStatusViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B24BBD8262DB14800A9381B /* ReportStatusViewModel+Diffable.swift */; }; 5B24BBE2262DB19100A9381B /* APIService+Report.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B24BBE1262DB19100A9381B /* APIService+Report.swift */; }; 5B90C45E262599800002E742 /* SettingsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B90C456262599800002E742 /* SettingsViewModel.swift */; }; 5B90C45F262599800002E742 /* SettingsToggleTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B90C459262599800002E742 /* SettingsToggleTableViewCell.swift */; }; @@ -440,7 +440,7 @@ DB98337125C9443200AD9700 /* APIService+Authentication.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98337025C9443200AD9700 /* APIService+Authentication.swift */; }; DB98337F25C9452D00AD9700 /* APIService+APIError.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98337E25C9452D00AD9700 /* APIService+APIError.swift */; }; DB98339C25C96DE600AD9700 /* APIService+Account.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98339B25C96DE600AD9700 /* APIService+Account.swift */; }; - DB98EB4727B0DFAA0082E365 /* ReportViewModel+State.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB4627B0DFAA0082E365 /* ReportViewModel+State.swift */; }; + DB98EB4727B0DFAA0082E365 /* ReportStatusViewModel+State.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB4627B0DFAA0082E365 /* ReportStatusViewModel+State.swift */; }; DB98EB4927B0F0CD0082E365 /* ReportStatusTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB4827B0F0CD0082E365 /* ReportStatusTableViewCell.swift */; }; DB98EB4C27B0F2BC0082E365 /* ReportStatusTableViewCell+ViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB4B27B0F2BC0082E365 /* ReportStatusTableViewCell+ViewModel.swift */; }; DB98EB5327B0F9890082E365 /* ReportHeadlineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB5227B0F9890082E365 /* ReportHeadlineTableViewCell.swift */; }; @@ -566,6 +566,14 @@ DBE3CE07261D6A0E00430CC6 /* FavoriteViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBE3CE06261D6A0E00430CC6 /* FavoriteViewModel+Diffable.swift */; }; DBE54AC62636C89F004E7C0B /* NotificationPreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBE54AC52636C89F004E7C0B /* NotificationPreference.swift */; }; DBE54ACC2636C8FD004E7C0B /* NotificationPreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBE54AC52636C89F004E7C0B /* NotificationPreference.swift */; }; + DBEFCD71282A12B200C0ABEA /* ReportReasonViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD70282A12B200C0ABEA /* ReportReasonViewController.swift */; }; + DBEFCD74282A130400C0ABEA /* ReportReasonViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD73282A130400C0ABEA /* ReportReasonViewModel.swift */; }; + DBEFCD76282A143F00C0ABEA /* ReportStatusViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD75282A143F00C0ABEA /* ReportStatusViewController.swift */; }; + DBEFCD79282A147000C0ABEA /* ReportStatusViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD78282A147000C0ABEA /* ReportStatusViewModel.swift */; }; + DBEFCD7B282A162400C0ABEA /* ReportReasonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD7A282A162400C0ABEA /* ReportReasonView.swift */; }; + DBEFCD7D282A2A3B00C0ABEA /* ReportServerRulesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD7C282A2A3B00C0ABEA /* ReportServerRulesViewController.swift */; }; + DBEFCD80282A2AA900C0ABEA /* ReportServerRulesViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD7F282A2AA900C0ABEA /* ReportServerRulesViewModel.swift */; }; + DBEFCD82282A2AB100C0ABEA /* ReportServerRulesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBEFCD81282A2AB100C0ABEA /* ReportServerRulesView.swift */; }; DBF156DF2701B17600EC00B7 /* SidebarAddAccountCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBF156DE2701B17600EC00B7 /* SidebarAddAccountCollectionViewCell.swift */; }; DBF156E22702DA6900EC00B7 /* UIStatusBarManager+HandleTapAction.m in Sources */ = {isa = PBXBuildFile; fileRef = DBF156E12702DA6900EC00B7 /* UIStatusBarManager+HandleTapAction.m */; }; DBF156E42702DB3F00EC00B7 /* HandleTapAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBF156E32702DB3F00EC00B7 /* HandleTapAction.swift */; }; @@ -789,7 +797,7 @@ 459EA4F43058CAB47719E963 /* Pods-Mastodon-MastodonUITests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon-MastodonUITests.debug.xcconfig"; path = "Target Support Files/Pods-Mastodon-MastodonUITests/Pods-Mastodon-MastodonUITests.debug.xcconfig"; sourceTree = ""; }; 46DAB0EBDDFB678347CD96FF /* Pods-MastodonTests.asdk - release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MastodonTests.asdk - release.xcconfig"; path = "Target Support Files/Pods-MastodonTests/Pods-MastodonTests.asdk - release.xcconfig"; sourceTree = ""; }; 5B24BBD7262DB14800A9381B /* ReportViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ReportViewModel.swift; sourceTree = ""; }; - 5B24BBD8262DB14800A9381B /* ReportViewModel+Diffable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ReportViewModel+Diffable.swift"; sourceTree = ""; }; + 5B24BBD8262DB14800A9381B /* ReportStatusViewModel+Diffable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "ReportStatusViewModel+Diffable.swift"; sourceTree = ""; }; 5B24BBE1262DB19100A9381B /* APIService+Report.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "APIService+Report.swift"; sourceTree = ""; }; 5B90C456262599800002E742 /* SettingsViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsViewModel.swift; sourceTree = ""; }; 5B90C459262599800002E742 /* SettingsToggleTableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SettingsToggleTableViewCell.swift; sourceTree = ""; }; @@ -1199,7 +1207,7 @@ DB98337025C9443200AD9700 /* APIService+Authentication.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Authentication.swift"; sourceTree = ""; }; DB98337E25C9452D00AD9700 /* APIService+APIError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "APIService+APIError.swift"; sourceTree = ""; }; DB98339B25C96DE600AD9700 /* APIService+Account.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Account.swift"; sourceTree = ""; }; - DB98EB4627B0DFAA0082E365 /* ReportViewModel+State.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ReportViewModel+State.swift"; sourceTree = ""; }; + DB98EB4627B0DFAA0082E365 /* ReportStatusViewModel+State.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ReportStatusViewModel+State.swift"; sourceTree = ""; }; DB98EB4827B0F0CD0082E365 /* ReportStatusTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportStatusTableViewCell.swift; sourceTree = ""; }; DB98EB4B27B0F2BC0082E365 /* ReportStatusTableViewCell+ViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ReportStatusTableViewCell+ViewModel.swift"; sourceTree = ""; }; DB98EB5227B0F9890082E365 /* ReportHeadlineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportHeadlineTableViewCell.swift; sourceTree = ""; }; @@ -1329,6 +1337,14 @@ DBEB19E927E4F37B00B0E80E /* ku */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ku; path = ku.lproj/Intents.strings; sourceTree = ""; }; DBEB19EA27E4F37B00B0E80E /* ku */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ku; path = ku.lproj/InfoPlist.strings; sourceTree = ""; }; DBEB19EB27E4F37B00B0E80E /* ku */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ku; path = ku.lproj/Intents.stringsdict; sourceTree = ""; }; + DBEFCD70282A12B200C0ABEA /* ReportReasonViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportReasonViewController.swift; sourceTree = ""; }; + DBEFCD73282A130400C0ABEA /* ReportReasonViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportReasonViewModel.swift; sourceTree = ""; }; + DBEFCD75282A143F00C0ABEA /* ReportStatusViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportStatusViewController.swift; sourceTree = ""; }; + DBEFCD78282A147000C0ABEA /* ReportStatusViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportStatusViewModel.swift; sourceTree = ""; }; + DBEFCD7A282A162400C0ABEA /* ReportReasonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportReasonView.swift; sourceTree = ""; }; + DBEFCD7C282A2A3B00C0ABEA /* ReportServerRulesViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportServerRulesViewController.swift; sourceTree = ""; }; + DBEFCD7F282A2AA900C0ABEA /* ReportServerRulesViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportServerRulesViewModel.swift; sourceTree = ""; }; + DBEFCD81282A2AB100C0ABEA /* ReportServerRulesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportServerRulesView.swift; sourceTree = ""; }; DBF156DE2701B17600EC00B7 /* SidebarAddAccountCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SidebarAddAccountCollectionViewCell.swift; sourceTree = ""; }; DBF156E02702DA6800EC00B7 /* Mastodon-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Mastodon-Bridging-Header.h"; sourceTree = ""; }; DBF156E12702DA6900EC00B7 /* UIStatusBarManager+HandleTapAction.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIStatusBarManager+HandleTapAction.m"; sourceTree = ""; }; @@ -1842,6 +1858,9 @@ isa = PBXGroup; children = ( DB98EB5727B0FF1F0082E365 /* Share */, + DBEFCD77282A144D00C0ABEA /* Report */, + DBEFCD72282A12B900C0ABEA /* ReportReason */, + DBEFCD7E282A2A3D00C0ABEA /* ReportServerRules */, DB98EB4F27B0F9300082E365 /* ReportStatus */, DB98EB5A27B109900082E365 /* ReportSupplementary */, DB98EB6327B216490082E365 /* ReportResult */, @@ -2208,8 +2227,8 @@ DB427DD425BAA00100D1B89D /* Mastodon */ = { isa = PBXGroup; children = ( - DB427DE325BAA00100D1B89D /* Info.plist */, DB89BA1025C10FF5008580ED /* Mastodon.entitlements */, + DB427DE325BAA00100D1B89D /* Info.plist */, 2D76319C25C151DE00929FB9 /* Diffiable */, DB8AF52A25C13561002E6C99 /* State */, 2D61335525C1886800CAE157 /* Service */, @@ -2850,10 +2869,10 @@ DB98EB4F27B0F9300082E365 /* ReportStatus */ = { isa = PBXGroup; children = ( - 5BB04FD4262E7AFF0043BFF6 /* ReportViewController.swift */, - 5B24BBD7262DB14800A9381B /* ReportViewModel.swift */, - 5B24BBD8262DB14800A9381B /* ReportViewModel+Diffable.swift */, - DB98EB4627B0DFAA0082E365 /* ReportViewModel+State.swift */, + DBEFCD75282A143F00C0ABEA /* ReportStatusViewController.swift */, + DBEFCD78282A147000C0ABEA /* ReportStatusViewModel.swift */, + 5B24BBD8262DB14800A9381B /* ReportStatusViewModel+Diffable.swift */, + DB98EB4627B0DFAA0082E365 /* ReportStatusViewModel+State.swift */, ); path = ReportStatus; sourceTree = ""; @@ -3177,6 +3196,35 @@ path = Favorite; sourceTree = ""; }; + DBEFCD72282A12B900C0ABEA /* ReportReason */ = { + isa = PBXGroup; + children = ( + DBEFCD70282A12B200C0ABEA /* ReportReasonViewController.swift */, + DBEFCD73282A130400C0ABEA /* ReportReasonViewModel.swift */, + DBEFCD7A282A162400C0ABEA /* ReportReasonView.swift */, + ); + path = ReportReason; + sourceTree = ""; + }; + DBEFCD77282A144D00C0ABEA /* Report */ = { + isa = PBXGroup; + children = ( + 5BB04FD4262E7AFF0043BFF6 /* ReportViewController.swift */, + 5B24BBD7262DB14800A9381B /* ReportViewModel.swift */, + ); + path = Report; + sourceTree = ""; + }; + DBEFCD7E282A2A3D00C0ABEA /* ReportServerRules */ = { + isa = PBXGroup; + children = ( + DBEFCD7C282A2A3B00C0ABEA /* ReportServerRulesViewController.swift */, + DBEFCD7F282A2AA900C0ABEA /* ReportServerRulesViewModel.swift */, + DBEFCD81282A2AB100C0ABEA /* ReportServerRulesView.swift */, + ); + path = ReportServerRules; + sourceTree = ""; + }; DBF1D24F269DAF6100C1C08A /* SearchDetail */ = { isa = PBXGroup; children = ( @@ -3873,6 +3921,7 @@ 2D364F7225E66D7500204FDC /* MastodonResendEmailViewController.swift in Sources */, DB68A06325E905E000CFDF14 /* UIApplication.swift in Sources */, DB02CDAB26256A9500D0A2AF /* ThreadReplyLoaderTableViewCell.swift in Sources */, + DBEFCD80282A2AA900C0ABEA /* ReportServerRulesViewModel.swift in Sources */, DB0617FF27855D6C0030EE79 /* MastodonServerRulesViewModel+Diffable.swift in Sources */, DBB5255E2611F07A002F1F29 /* ProfileViewModel.swift in Sources */, DB0FCB982797F6BF006C02E2 /* UserTableViewCell+ViewModel.swift in Sources */, @@ -3900,6 +3949,7 @@ DB63F76F279A7D1100455B82 /* NotificationTableViewCell.swift in Sources */, DB297B1B2679FAE200704C90 /* PlaceholderImageCacheService.swift in Sources */, DB0FCB8C2796BF8D006C02E2 /* SearchViewModel+Diffable.swift in Sources */, + DBEFCD76282A143F00C0ABEA /* ReportStatusViewController.swift in Sources */, 2D8FCA082637EABB00137F46 /* APIService+FollowRequest.swift in Sources */, DBDFF1952805561700557A48 /* DiscoveryPostsViewModel+Diffable.swift in Sources */, DB03A795272A981400EE37C5 /* ContentSplitViewController.swift in Sources */, @@ -4030,7 +4080,7 @@ DB63F75C279956D000455B82 /* Persistence+Tag.swift in Sources */, 2D84350525FF858100EECE90 /* UIScrollView.swift in Sources */, DB49A61F25FF32AA00B98345 /* EmojiService+CustomEmojiViewModel.swift in Sources */, - 5B24BBDB262DB14800A9381B /* ReportViewModel+Diffable.swift in Sources */, + 5B24BBDB262DB14800A9381B /* ReportStatusViewModel+Diffable.swift in Sources */, DB4F0968269ED8AD00D62E92 /* SearchHistoryTableHeaderView.swift in Sources */, 0FB3D2FE25E4CB6400AAD544 /* OnboardingHeadlineTableViewCell.swift in Sources */, 5DA732CC2629CEF500A92342 /* UIView+Remove.swift in Sources */, @@ -4042,6 +4092,7 @@ DBBF1DC92652538500E5B703 /* AutoCompleteSection.swift in Sources */, DB3E6FE72806A7A200B035AE /* DiscoveryItem.swift in Sources */, DB8AF55D25C138B7002E6C99 /* UIViewController.swift in Sources */, + DBEFCD79282A147000C0ABEA /* ReportStatusViewModel.swift in Sources */, DB7F48452620241000796008 /* ProfileHeaderViewModel.swift in Sources */, DB647C5926F1EA2700F7F82C /* WizardPreference.swift in Sources */, DB0A322E280EE9FD001729D2 /* DiscoveryIntroBannerView.swift in Sources */, @@ -4092,7 +4143,7 @@ DBA94434265CBB5300C537E1 /* ProfileFieldSection.swift in Sources */, DB336F28278D6EC70031E64B /* MastodonFieldContainer.swift in Sources */, DBF156E42702DB3F00EC00B7 /* HandleTapAction.swift in Sources */, - DB98EB4727B0DFAA0082E365 /* ReportViewModel+State.swift in Sources */, + DB98EB4727B0DFAA0082E365 /* ReportStatusViewModel+State.swift in Sources */, 2D5981A125E4A593000FB903 /* MastodonConfirmEmailViewModel.swift in Sources */, DB6B74F6272FBCDB00C70B6E /* FollowerListViewModel+State.swift in Sources */, DB87D4452609BE0500D12C0D /* ComposeStatusPollOptionCollectionViewCell.swift in Sources */, @@ -4150,6 +4201,7 @@ DB6D9F8426358EEC008423CD /* SettingsItem.swift in Sources */, 2D364F7825E66D8300204FDC /* MastodonResendEmailViewModel.swift in Sources */, DBA465932696B495002B41DB /* APIService+WebFinger.swift in Sources */, + DBEFCD7B282A162400C0ABEA /* ReportReasonView.swift in Sources */, DB8AF54525C13647002E6C99 /* NeedsDependency.swift in Sources */, DB63F77B279ACAE500455B82 /* DataSourceFacade+Favorite.swift in Sources */, DB9D6BF825E4F5690051B173 /* NotificationViewController.swift in Sources */, @@ -4164,6 +4216,7 @@ DB4F097526A037F500D62E92 /* SearchHistoryViewModel.swift in Sources */, DB3EA8E9281B7A3700598866 /* DiscoveryCommunityViewModel.swift in Sources */, DB6180F826391D660018D199 /* MediaPreviewingViewController.swift in Sources */, + DBEFCD71282A12B200C0ABEA /* ReportReasonViewController.swift in Sources */, DB0140CF25C42AEE00F9F3CF /* OSLog.swift in Sources */, DB98EB5627B0FF1B0082E365 /* ReportViewControllerAppearance.swift in Sources */, DB938F1526241FDF00E5B6C1 /* APIService+Thread.swift in Sources */, @@ -4200,6 +4253,7 @@ 2D7867192625B77500211898 /* NotificationItem.swift in Sources */, DB45FAB625CA5485005A8AC7 /* UIAlertController.swift in Sources */, DBE0821525CD382600FD6BBD /* MastodonRegisterViewController.swift in Sources */, + DBEFCD74282A130400C0ABEA /* ReportReasonViewModel.swift in Sources */, 2D5A3D0325CF8742002347D6 /* ControlContainableScrollViews.swift in Sources */, DB36679D268AB91B0027D07F /* ComposeStatusAttachmentTableViewCell.swift in Sources */, DB98336B25C9420100AD9700 /* APIService+App.swift in Sources */, @@ -4287,6 +4341,7 @@ DB0617EB277EF3820030EE79 /* GradientBorderView.swift in Sources */, DB789A1225F9F2CC0071ACA0 /* ComposeViewModel.swift in Sources */, DB63F74B279914A000455B82 /* FollowingListViewController+DataSourceProvider.swift in Sources */, + DBEFCD7D282A2A3B00C0ABEA /* ReportServerRulesViewController.swift in Sources */, DBB525362611ECEB002F1F29 /* UserTimelineViewController.swift in Sources */, DB938F3326243D6200E5B6C1 /* TimelineTopLoaderTableViewCell.swift in Sources */, DB98EB4927B0F0CD0082E365 /* ReportStatusTableViewCell.swift in Sources */, @@ -4297,6 +4352,7 @@ DB98EB6527B216500082E365 /* ReportResultViewModel.swift in Sources */, DB4F096A269EDAD200D62E92 /* SearchResultViewModel+State.swift in Sources */, 5BB04FF5262F0E6D0043BFF6 /* ReportSection.swift in Sources */, + DBEFCD82282A2AB100C0ABEA /* ReportServerRulesView.swift in Sources */, DBA94436265CBB7400C537E1 /* ProfileFieldItem.swift in Sources */, DB023D2A27A0FE5C005AC798 /* DataSourceProvider+NotificationTableViewCellDelegate.swift in Sources */, DB98EB6027B10E150082E365 /* ReportCommentTableViewCell.swift in Sources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 07a847a0c..7f54b9011 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -109,7 +109,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 28 + 20 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +124,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 27 + 19 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 26 + 21 SuppressBuildableAutocreation diff --git a/Mastodon/Coordinator/SceneCoordinator.swift b/Mastodon/Coordinator/SceneCoordinator.swift index 5e7fbf472..d149e63a2 100644 --- a/Mastodon/Coordinator/SceneCoordinator.swift +++ b/Mastodon/Coordinator/SceneCoordinator.swift @@ -158,7 +158,7 @@ extension SceneCoordinator { case mastodonServerRules(viewModel: MastodonServerRulesViewModel) case mastodonConfirmEmail(viewModel: MastodonConfirmEmailViewModel) case mastodonResendEmail(viewModel: MastodonResendEmailViewModel) - case mastodonWebView(viewModel:WebViewModel) + case mastodonWebView(viewModel: WebViewModel) // search case searchDetail(viewModel: SearchDetailViewModel) @@ -184,6 +184,8 @@ extension SceneCoordinator { // report case report(viewModel: ReportViewModel) + case reportServerRules(viewModel: ReportServerRulesViewModel) + case reportStatus(viewModel: ReportStatusViewModel) case reportSupplementary(viewModel: ReportSupplementaryViewModel) case reportResult(viewModel: ReportResultViewModel) @@ -447,6 +449,14 @@ private extension SceneCoordinator { let _viewController = ReportViewController() _viewController.viewModel = viewModel viewController = _viewController + case .reportServerRules(let viewModel): + let _viewController = ReportServerRulesViewController() + _viewController.viewModel = viewModel + viewController = _viewController + case .reportStatus(let viewModel): + let _viewController = ReportStatusViewController() + _viewController.viewModel = viewModel + viewController = _viewController case .reportSupplementary(let viewModel): let _viewController = ReportSupplementaryViewController() _viewController.viewModel = viewModel diff --git a/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift b/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift index b1b2280d8..cb7a96f85 100644 --- a/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift +++ b/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift @@ -229,6 +229,11 @@ extension MastodonConfirmEmailViewController { } } +// MARK: - PanPopableViewController +extension MastodonConfirmEmailViewController: PanPopableViewController { + var isPanPopable: Bool { false } +} + // MARK: - OnboardingViewControllerAppearance extension MastodonConfirmEmailViewController: OnboardingViewControllerAppearance { } diff --git a/Mastodon/Scene/Onboarding/Register/MastodonRegisterView.swift b/Mastodon/Scene/Onboarding/Register/MastodonRegisterView.swift index 1a47de22f..2be7c61d7 100644 --- a/Mastodon/Scene/Onboarding/Register/MastodonRegisterView.swift +++ b/Mastodon/Scene/Onboarding/Register/MastodonRegisterView.swift @@ -197,9 +197,6 @@ struct MastodonRegisterView: View { } } - - - } struct WidthKey: PreferenceKey { diff --git a/Mastodon/Scene/Report/Report/ReportViewController.swift b/Mastodon/Scene/Report/Report/ReportViewController.swift new file mode 100644 index 000000000..6d3f6da06 --- /dev/null +++ b/Mastodon/Scene/Report/Report/ReportViewController.swift @@ -0,0 +1,165 @@ +// +// ReportViewController.swift +// Mastodon +// +// Created by ihugo on 2021/4/20. +// + +import os.log +import UIKit +import Combine +import CoreDataStack +import MastodonAsset +import MastodonLocalization + +class ReportViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { + + let logger = Logger(subsystem: "ReportViewController", category: "ViewController") + + var disposeBag = Set() + private var observations = Set() + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var viewModel: ReportViewModel! + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension ReportViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + setupAppearance() + defer { setupNavigationBarBackgroundView() } + + viewModel.reportReasonViewModel.delegate = self + viewModel.reportServerRulesViewModel.delegate = self + viewModel.reportStatusViewModel.delegate = self + viewModel.reportSupplementaryViewModel.delegate = self + + let reportReasonViewController = ReportReasonViewController() + reportReasonViewController.context = context + reportReasonViewController.coordinator = coordinator + reportReasonViewController.viewModel = viewModel.reportReasonViewModel + + addChild(reportReasonViewController) + reportReasonViewController.view.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(reportReasonViewController.view) + reportReasonViewController.didMove(toParent: self) + NSLayoutConstraint.activate([ + reportReasonViewController.view.topAnchor.constraint(equalTo: view.topAnchor), + reportReasonViewController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), + reportReasonViewController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor), + reportReasonViewController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + } + +} + +// MARK: - UIAdaptivePresentationControllerDelegate +extension ReportViewController: UIAdaptivePresentationControllerDelegate { + func presentationControllerShouldDismiss(_ presentationController: UIPresentationController) -> Bool { + return viewModel.isReportSuccess + } +} + +// MARK: - ReportReasonViewControllerDelegate +extension ReportViewController: ReportReasonViewControllerDelegate { + func reportReasonViewController(_ viewController: ReportReasonViewController, nextButtonPressed button: UIButton) { + guard let reason = viewController.viewModel.selectReason else { return } + switch reason { + case .violateRule: + coordinator.present( + scene: .reportServerRules(viewModel: viewModel.reportServerRulesViewModel), + from: self, + transition: .show + ) + default: + break + } + } +} + +// MARK: - ReportServerRulesViewControllerDelegate +extension ReportViewController: ReportServerRulesViewControllerDelegate { + func reportServerRulesViewController(_ viewController: ReportServerRulesViewController, nextButtonPressed button: UIButton) { + if viewController.viewModel.isDislike { + + } else if viewController.viewModel.selectRule != nil { + coordinator.present( + scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), + from: self, + transition: .show + ) + } else { + assertionFailure() + } + } +} + +// MARK: - ReportStatusViewControllerDelegate +extension ReportViewController: ReportStatusViewControllerDelegate { + func reportStatusViewController(_ viewController: ReportStatusViewController, skipButtonDidPressed button: UIButton) { + coordinateToReportSupplementary() + } + + func reportStatusViewController(_ viewController: ReportStatusViewController, nextButtonDidPressed button: UIButton) { + coordinateToReportSupplementary() + } + + private func coordinateToReportSupplementary() { + coordinator.present( + scene: .reportSupplementary(viewModel: viewModel.reportSupplementaryViewModel), + from: self, + transition: .show + ) + } +} + +// MARK: - ReportSupplementaryViewControllerDelegate +extension ReportViewController: ReportSupplementaryViewControllerDelegate { + func reportSupplementaryViewController(_ viewController: ReportSupplementaryViewController, skipButtonDidPressed button: UIButton) { + report() + } + + func reportSupplementaryViewController(_ viewController: ReportSupplementaryViewController, nextButtonDidPressed button: UIButton) { + report() + } + + private func report() { + Task { @MainActor in + do { + let _ = try await viewModel.report() + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): report success") + + let reportResultViewModel = ReportResultViewModel( + context: context, + user: viewModel.user + ) + + coordinator.present( + scene: .reportResult(viewModel: reportResultViewModel), + from: self, + transition: .show + ) + + } catch { + let alertController = UIAlertController(for: error, title: nil, preferredStyle: .alert) + let okAction = UIAlertAction(title: L10n.Common.Controls.Actions.ok, style: .default, handler: nil) + alertController.addAction(okAction) + self.coordinator.present( + scene: .alertController(alertController: alertController), + from: nil, + transition: .alertController(animated: true, completion: nil) + ) + } + } // end Task + } + +} diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift new file mode 100644 index 000000000..73bac19b0 --- /dev/null +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -0,0 +1,176 @@ +// +// ReportViewModel.swift +// Mastodon +// +// Created by ihugo on 2021/4/19. +// + +import Combine +import CoreData +import CoreDataStack +import Foundation +import GameplayKit +import MastodonSDK +import OrderedCollections +import os.log +import UIKit + +class ReportViewModel { + + var disposeBag = Set() + + let reportReasonViewModel: ReportReasonViewModel + let reportServerRulesViewModel: ReportServerRulesViewModel + let reportStatusViewModel: ReportStatusViewModel + let reportSupplementaryViewModel: ReportSupplementaryViewModel + + // input + let context: AppContext + let user: ManagedObjectRecord + let status: ManagedObjectRecord? + + // output + @Published var isReporting = false + @Published var isReportSuccess = false + + init( + context: AppContext, + user: ManagedObjectRecord, + status: ManagedObjectRecord? + ) { + self.context = context + self.user = user + self.status = status + self.reportReasonViewModel = ReportReasonViewModel(context: context) + self.reportServerRulesViewModel = ReportServerRulesViewModel(context: context) + self.reportStatusViewModel = ReportStatusViewModel(context: context, user: user, status: status) + self.reportSupplementaryViewModel = ReportSupplementaryViewModel(context: context, user: user) + // end init + + guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { + return + } + + // setup reason viewModel + if status != nil { + // TODO: i18n + reportReasonViewModel.headline = "What’s wrong with post?" + } else { + Task { @MainActor in + let managedObjectContext = context.managedObjectContext + let _username: String? = try? await managedObjectContext.perform { + let user = user.object(in: managedObjectContext) + return user?.acctWithDomain + } + if let username = _username { + reportReasonViewModel.headline = "What’s wrong with @\(username)?" + } else { + reportReasonViewModel.headline = "What’s wrong with this account?" + } + } // end Task + } + + // bind server rules + Task { @MainActor in + do { + let response = try await context.apiService.instance(domain: authenticationBox.domain) + .timeout(3, scheduler: DispatchQueue.main) + .singleOutput() + let rules = response.value.rules ?? [] + reportReasonViewModel.serverRules = rules + reportServerRulesViewModel.serverRules = rules + } catch { + reportReasonViewModel.serverRules = [] + reportServerRulesViewModel.serverRules = [] + } + } // end Task + + $isReporting + .assign(to: &reportSupplementaryViewModel.$isBusy) + } + +} + +extension ReportViewModel { + @MainActor + func report() async throws { + guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value, + !isReporting + else { + assertionFailure() + return + } + + let managedObjectContext = context.managedObjectContext + let _query: Mastodon.API.Reports.FileReportQuery? = try await managedObjectContext.perform { + guard let user = self.user.object(in: managedObjectContext) else { return nil } + let statusIDs: [Status.ID]? = { + if self.reportStatusViewModel.isSkip { + let _id: Status.ID? = self.reportStatusViewModel.status.flatMap { record -> Status.ID? in + guard let status = record.object(in: managedObjectContext) else { return nil } + return status.id + } + return _id.flatMap { [$0] } + } else { + return self.reportStatusViewModel.selectStatuses.compactMap { record -> Status.ID? in + guard let status = record.object(in: managedObjectContext) else { return nil } + return status.id + } + } + }() + let comment: String? = { + var suffixes: [String] = [] + let content: String? + + if let reason = self.reportReasonViewModel.selectReason { + switch reason { + case .spam: + suffixes.append(reason.rawValue) + case .violateRule: + suffixes.append(reason.rawValue) + if let rule = self.reportServerRulesViewModel.selectRule { + suffixes.append(rule.text) + } + + case .dislike, .other: + break + } + } + + content = self.reportSupplementaryViewModel.isSkip ? nil : self.reportSupplementaryViewModel.commentContext.comment + + let suffix: String? = { + let text = suffixes.joined(separator: ". ") + guard !text.isEmpty else { return nil } + return "<" + text + ">" + }() + + let comment = [content, suffix] + .compactMap { $0 } + .joined(separator: " ") + return comment.isEmpty ? nil : comment + }() + return Mastodon.API.Reports.FileReportQuery( + accountID: user.id, + statusIDs: statusIDs, + comment: comment, + forward: true + ) + } + + guard let query = _query else { return } + + do { + isReporting = true + try await Task.sleep(nanoseconds: .second * 3) +// let _ = try await context.apiService.report( +// query: query, +// authenticationBox: authenticationBox +// ) + isReportSuccess = true + } catch { + isReporting = false + throw error + } + } +} diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift new file mode 100644 index 000000000..3a8b4579f --- /dev/null +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift @@ -0,0 +1,113 @@ +// +// ReportReasonView.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import UIKit +import SwiftUI +import MastodonLocalization +import MastodonSDK +import MastodonAsset + +struct ReportReasonView: View { + + @ObservedObject var viewModel: ReportReasonViewModel + + // TODO: i18n + var body: some View { + ScrollView(.vertical) { + HStack { + VStack(alignment: .leading, spacing: 8) { + Text("Step 1 of 4") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + Text(viewModel.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) + Text("Select the best match") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + } + Spacer() + } + .padding() + + VStack(spacing: 16) { + if let serverRules = viewModel.serverRules { + ForEach(ReportReasonViewModel.Reason.allCases, id: \.self) { reason in + switch reason { + case .violateRule where serverRules.isEmpty: + EmptyView() + default: + ReportReasonRowView(reason: reason, isSelect: reason == viewModel.selectReason) + .background( + Color(viewModel.backgroundColor) + ) + .onTapGesture { + viewModel.selectReason = reason + } + } + } + } else { + ProgressView() + } + } + .padding() + .transition(.opacity) + .animation(.easeInOut) + + Spacer() + .frame(minHeight: viewModel.bottomPaddingHeight) + } + .background( + Color(viewModel.backgroundColor) + ) + } + +} + +struct ReportReasonRowView: View { + + var reason: ReportReasonViewModel.Reason + var isSelect: Bool + + var body: some View { + HStack(spacing: 14) { + Image(systemName: isSelect ? "checkmark.circle.fill" : "circle") + .resizable() + .frame(width: 28, height: 28, alignment: .center) + VStack(alignment: .leading, spacing: 4) { + Text(reason.title) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .font(.headline) + Text(reason.subtitle) + .font(.subheadline) + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + } + Spacer() + } + } + +} + +#if DEBUG +struct ReportReasonView_Previews: PreviewProvider { + static var previews: some View { + Group { + NavigationView { + ReportReasonView(viewModel: ReportReasonViewModel(context: .shared)) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + NavigationView { + ReportReasonView(viewModel: ReportReasonViewModel(context: .shared)) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + .preferredColorScheme(.dark) + } + } +} +#endif diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift new file mode 100644 index 000000000..b0651e42d --- /dev/null +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift @@ -0,0 +1,116 @@ +// +// ReportReasonViewController.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import os.log +import UIKit +import SwiftUI +import Combine +import MastodonUI +import MastodonAsset +import MastodonLocalization + +protocol ReportReasonViewControllerDelegate: AnyObject { + func reportReasonViewController(_ viewController: ReportReasonViewController, nextButtonPressed button: UIButton) +} + +final class ReportReasonViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { + + let logger = Logger(subsystem: "ReportReasonViewController", category: "ViewController") + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var disposeBag = Set() + private var observations = Set() + + var viewModel: ReportReasonViewModel! + private(set) lazy var reportReasonView = ReportReasonView(viewModel: viewModel) + + lazy var cancelBarButtonItem = UIBarButtonItem( + barButtonSystemItem: .cancel, + target: self, + action: #selector(ReportReasonViewController.cancelBarButtonItemDidPressed(_:)) + ) + + let navigationActionView: NavigationActionView = { + let navigationActionView = NavigationActionView() + navigationActionView.backgroundColor = Asset.Scene.Onboarding.background.color + navigationActionView.hidesBackButton = true + return navigationActionView + }() + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension ReportReasonViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + setupAppearance() + defer { setupNavigationBarBackgroundView() } + + navigationItem.rightBarButtonItem = cancelBarButtonItem + + let hostingViewController = UIHostingController(rootView: reportReasonView) + hostingViewController.view.preservesSuperviewLayoutMargins = true + addChild(hostingViewController) + hostingViewController.view.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(hostingViewController.view) + NSLayoutConstraint.activate([ + hostingViewController.view.topAnchor.constraint(equalTo: view.topAnchor), + hostingViewController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), + hostingViewController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor), + hostingViewController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + + navigationActionView.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(navigationActionView) + defer { + view.bringSubviewToFront(navigationActionView) + } + NSLayoutConstraint.activate([ + navigationActionView.leadingAnchor.constraint(equalTo: view.leadingAnchor), + navigationActionView.trailingAnchor.constraint(equalTo: view.trailingAnchor), + view.bottomAnchor.constraint(equalTo: navigationActionView.bottomAnchor), + ]) + + navigationActionView + .observe(\.bounds, options: [.initial, .new]) { [weak self] navigationActionView, _ in + guard let self = self else { return } + let inset = navigationActionView.frame.height + self.viewModel.bottomPaddingHeight = inset + } + .store(in: &observations) + + viewModel.$selectReason + .map { $0 != nil } + .assign(to: \.isEnabled, on: navigationActionView.nextButton) + .store(in: &disposeBag) + + navigationActionView.nextButton.addTarget(self, action: #selector(ReportReasonViewController.nextButtonPressed(_:)), for: .touchUpInside) + } + +} + +extension ReportReasonViewController { + + @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { + dismiss(animated: true, completion: nil) + } + + @objc private func nextButtonPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + + assert(viewModel.delegate != nil) + viewModel.delegate?.reportReasonViewController(self, nextButtonPressed: sender) + } + +} diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift new file mode 100644 index 000000000..b156ea311 --- /dev/null +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift @@ -0,0 +1,83 @@ +// +// ReportReasonViewModel.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import UIKit +import SwiftUI +import MastodonAsset +import MastodonSDK + +final class ReportReasonViewModel: ObservableObject { + + weak var delegate: ReportReasonViewControllerDelegate? + + // input + let context: AppContext + + @Published var headline = "What's wrong with this account?" + @Published var serverRules: [Mastodon.Entity.Instance.Rule]? + + @Published var bottomPaddingHeight: CGFloat = .zero + @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color + + // output + @Published var selectReason: Reason? + + init(context: AppContext) { + self.context = context + // end init + } + +} + +extension ReportReasonViewModel { + enum Reason: Hashable, CaseIterable { + case dislike + case spam + case violateRule + case other + + var title: String { + switch self { + case .dislike: + return "I don’t like it" + case .spam: + return "It’s spam" + case .violateRule: + return "It violates server rules" + case .other: + return "It’s something else" + } + } + + var subtitle: String { + switch self { + case .dislike: + return "It is not something you want to see" + case .spam: + return "Malicious links, fake engagement, or repetetive replies" + case .violateRule: + return "You are aware that it breaks specific rules" + case .other: + return "The issue does not fit into other categories" + } + } + + // do not i18n this + var rawValue: String { + switch self { + case .dislike: + return "I don’t like it" + case .spam: + return "It’s spam" + case .violateRule: + return "It violates server rules" + case .other: + return "It’s something else" + } + } + } +} diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift index 26f56b98d..1073c21a2 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift @@ -21,6 +21,12 @@ final class ReportResultViewController: UIViewController, NeedsDependency, Repor var viewModel: ReportResultViewModel! + lazy var doneBarButtonItem = UIBarButtonItem( + barButtonSystemItem: .done, + target: self, + action: #selector(ReportResultViewController.doneBarButtonItemDidPressed(_:)) + ) + let tableView: UITableView = { let tableView = ControlContainableTableView() tableView.backgroundColor = Asset.Scene.Report.background.color @@ -60,6 +66,7 @@ extension ReportResultViewController { defer { setupNavigationBarBackgroundView() } navigationItem.hidesBackButton = true + navigationItem.rightBarButtonItem = doneBarButtonItem tableView.translatesAutoresizingMaskIntoConstraints = false view.addSubview(tableView) @@ -102,6 +109,10 @@ extension ReportResultViewController { } extension ReportResultViewController { + + @objc func doneBarButtonItemDidPressed(_ sender: UIButton) { + dismiss(animated: true, completion: nil) + } @objc func nextButtonDidPressed(_ sender: UIButton) { dismiss(animated: true, completion: nil) @@ -111,3 +122,8 @@ extension ReportResultViewController { // MARK: - UITableViewDelegate extension ReportResultViewController: UITableViewDelegate { } + +// MARK: - PanPopableViewController +extension ReportResultViewController: PanPopableViewController { + var isPanPopable: Bool { false } +} diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift new file mode 100644 index 000000000..e8dcfa886 --- /dev/null +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift @@ -0,0 +1,116 @@ +// +// ReportServerRulesView.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import UIKit +import SwiftUI +import MastodonLocalization +import MastodonSDK +import MastodonAsset + +struct ReportServerRulesView: View { + + @ObservedObject var viewModel: ReportServerRulesViewModel + + // TODO: i18n + var body: some View { + ScrollView(.vertical) { + HStack { + VStack(alignment: .leading, spacing: 8) { + Text("Step 2 of 4") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + Text(viewModel.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) + Text("Select all that apply") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + } + Spacer() + } + .padding() + + VStack(spacing: 32) { + ForEach(viewModel.serverRules, id: \.self) { rule in + ReportServerRulesRowView( + title: rule.text, + isSelect: rule == viewModel.selectRule + ) + .background( + Color(viewModel.backgroundColor) + ) + .onTapGesture { + viewModel.selectRule = rule + viewModel.isDislike = false + } + } + ReportServerRulesRowView( + title: "I just don’t like it", + isSelect: viewModel.isDislike + ) + .background( + Color(viewModel.backgroundColor) + ) + .onTapGesture { + viewModel.selectRule = nil + viewModel.isDislike = true + } + } + .padding() + .transition(.opacity) + .animation(.easeInOut) + + Spacer() + .frame(minHeight: viewModel.bottomPaddingHeight) + } + .background( + Color(viewModel.backgroundColor) + ) + } + +} + +struct ReportServerRulesRowView: View { + + var title: String + var isSelect: Bool + + var body: some View { + HStack(spacing: 14) { + Image(systemName: isSelect ? "checkmark.circle.fill" : "circle") + .resizable() + .frame(width: 28, height: 28, alignment: .center) + VStack(alignment: .leading, spacing: 4) { + Text(title) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .font(.headline) + } + Spacer() + } + } + +} + +#if DEBUG +struct ReportServerRulesView_Previews: PreviewProvider { + static var previews: some View { + Group { + NavigationView { + ReportServerRulesView(viewModel: ReportServerRulesViewModel(context: .shared)) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + NavigationView { + ReportServerRulesView(viewModel: ReportServerRulesViewModel(context: .shared)) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + .preferredColorScheme(.dark) + } + } +} +#endif diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift new file mode 100644 index 000000000..330debbb8 --- /dev/null +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift @@ -0,0 +1,117 @@ +// +// ReportServerRulesViewController.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import os.log +import UIKit +import SwiftUI +import Combine +import MastodonUI +import MastodonAsset +import MastodonLocalization + +protocol ReportServerRulesViewControllerDelegate: AnyObject { + func reportServerRulesViewController(_ viewController: ReportServerRulesViewController, nextButtonPressed button: UIButton) +} + +final class ReportServerRulesViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { + + let logger = Logger(subsystem: "ReportReasonViewController", category: "ViewController") + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var disposeBag = Set() + private var observations = Set() + + var viewModel: ReportServerRulesViewModel! + private(set) lazy var reportServerRulesView = ReportServerRulesView(viewModel: viewModel) + + lazy var cancelBarButtonItem = UIBarButtonItem( + barButtonSystemItem: .cancel, + target: self, + action: #selector(ReportServerRulesViewController.cancelBarButtonItemDidPressed(_:)) + ) + + let navigationActionView: NavigationActionView = { + let navigationActionView = NavigationActionView() + navigationActionView.backgroundColor = Asset.Scene.Onboarding.background.color + navigationActionView.hidesBackButton = true + return navigationActionView + }() + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension ReportServerRulesViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + setupAppearance() + defer { setupNavigationBarBackgroundView() } + + let hostingViewController = UIHostingController(rootView: reportServerRulesView) + hostingViewController.view.preservesSuperviewLayoutMargins = true + addChild(hostingViewController) + hostingViewController.view.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(hostingViewController.view) + NSLayoutConstraint.activate([ + hostingViewController.view.topAnchor.constraint(equalTo: view.topAnchor), + hostingViewController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), + hostingViewController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor), + hostingViewController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + + navigationActionView.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(navigationActionView) + defer { + view.bringSubviewToFront(navigationActionView) + } + NSLayoutConstraint.activate([ + navigationActionView.leadingAnchor.constraint(equalTo: view.leadingAnchor), + navigationActionView.trailingAnchor.constraint(equalTo: view.trailingAnchor), + view.bottomAnchor.constraint(equalTo: navigationActionView.bottomAnchor), + ]) + + navigationActionView + .observe(\.bounds, options: [.initial, .new]) { [weak self] navigationActionView, _ in + guard let self = self else { return } + let inset = navigationActionView.frame.height + self.viewModel.bottomPaddingHeight = inset + } + .store(in: &observations) + + Publishers.CombineLatest( + viewModel.$selectRule, + viewModel.$isDislike + ) + .map { $0 != nil || $1 } + .assign(to: \.isEnabled, on: navigationActionView.nextButton) + .store(in: &disposeBag) + + navigationActionView.nextButton.addTarget(self, action: #selector(ReportServerRulesViewController.nextButtonPressed(_:)), for: .touchUpInside) + } + +} + +extension ReportServerRulesViewController { + + @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { + dismiss(animated: true, completion: nil) + } + + @objc private func nextButtonPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + + assert(viewModel.delegate != nil) + viewModel.delegate?.reportServerRulesViewController(self, nextButtonPressed: sender) + } + +} diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift new file mode 100644 index 000000000..1960899a9 --- /dev/null +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift @@ -0,0 +1,35 @@ +// +// ReportServerRulesViewModel.swift +// Mastodon +// +// Created by MainasuK on 2022-5-10. +// + +import UIKit +import SwiftUI +import MastodonAsset +import MastodonSDK + +final class ReportServerRulesViewModel: ObservableObject { + + weak var delegate: ReportServerRulesViewControllerDelegate? + + // input + let context: AppContext + + @Published var headline = "Which rules are being violated?" + @Published var serverRules: [Mastodon.Entity.Instance.Rule] = [] + + @Published var bottomPaddingHeight: CGFloat = .zero + @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color + + // output + @Published var selectRule: Mastodon.Entity.Instance.Rule? + @Published var isDislike: Bool = false + + init(context: AppContext) { + self.context = context + // end init + } + +} diff --git a/Mastodon/Scene/Report/ReportStatus/ReportViewController.swift b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewController.swift similarity index 75% rename from Mastodon/Scene/Report/ReportStatus/ReportViewController.swift rename to Mastodon/Scene/Report/ReportStatus/ReportStatusViewController.swift index 12291a964..d3844a3be 100644 --- a/Mastodon/Scene/Report/ReportStatus/ReportViewController.swift +++ b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewController.swift @@ -1,8 +1,8 @@ // -// ReportViewController.swift +// ReportStatusViewController.swift // Mastodon // -// Created by ihugo on 2021/4/20. +// Created by MainasuK on 2022-5-10. // import os.log @@ -12,21 +12,29 @@ import CoreDataStack import MastodonAsset import MastodonLocalization -class ReportViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { +protocol ReportStatusViewControllerDelegate: AnyObject { + func reportStatusViewController(_ viewController: ReportStatusViewController, skipButtonDidPressed button: UIButton) + func reportStatusViewController(_ viewController: ReportStatusViewController, nextButtonDidPressed button: UIButton) +} + +class ReportStatusViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { + + let logger = Logger(subsystem: "ReportStatusViewController", category: "ViewController") var disposeBag = Set() private var observations = Set() weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } - - var viewModel: ReportViewModel! + + var viewModel: ReportStatusViewModel! // MAKK: - UI + lazy var cancelBarButtonItem = UIBarButtonItem( barButtonSystemItem: .cancel, target: self, - action: #selector(ReportViewController.cancelBarButtonItemDidPressed(_:)) + action: #selector(ReportStatusViewController.cancelBarButtonItemDidPressed(_:)) ) let tableView: UITableView = { @@ -58,7 +66,7 @@ class ReportViewController: UIViewController, NeedsDependency, ReportViewControl } -extension ReportViewController { +extension ReportStatusViewController { override func viewDidLoad() { super.viewDidLoad() @@ -67,7 +75,7 @@ extension ReportViewController { defer { setupNavigationBarBackgroundView() } navigationItem.rightBarButtonItem = cancelBarButtonItem - + tableView.translatesAutoresizingMaskIntoConstraints = false view.addSubview(tableView) NSLayoutConstraint.activate([ @@ -109,7 +117,7 @@ extension ReportViewController { .sink { [weak self] _ in guard let self = self else { return } guard self.view.window != nil else { return } - self.viewModel.stateMachine.enter(ReportViewModel.State.Loading.self) + self.viewModel.stateMachine.enter(ReportStatusViewModel.State.Loading.self) } .store(in: &disposeBag) @@ -118,56 +126,38 @@ extension ReportViewController { .assign(to: \.isEnabled, on: navigationActionView.nextButton) .store(in: &disposeBag) - navigationActionView.backButton.addTarget(self, action: #selector(ReportViewController.skipButtonDidPressed(_:)), for: .touchUpInside) - navigationActionView.nextButton.addTarget(self, action: #selector(ReportViewController.nextButtonDidPressed(_:)), for: .touchUpInside) + navigationActionView.backButton.addTarget(self, action: #selector(ReportStatusViewController.skipButtonDidPressed(_:)), for: .touchUpInside) + navigationActionView.nextButton.addTarget(self, action: #selector(ReportStatusViewController.nextButtonDidPressed(_:)), for: .touchUpInside) } } -extension ReportViewController { - +extension ReportStatusViewController { + @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { dismiss(animated: true, completion: nil) } - @objc func skipButtonDidPressed(_ sender: UIButton) { - var selectStatuses: [ManagedObjectRecord] = [] - if let selectStatus = viewModel.status { - selectStatuses.append(selectStatus) - } + @objc private func skipButtonDidPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") - let reportSupplementaryViewModel = ReportSupplementaryViewModel( - context: context, - user: viewModel.user, - selectStatuses: selectStatuses - ) - coordinator.present( - scene: .reportSupplementary(viewModel: reportSupplementaryViewModel), - from: self, - transition: .show - ) + assert(viewModel.delegate != nil) + viewModel.isSkip = true + viewModel.delegate?.reportStatusViewController(self, skipButtonDidPressed: sender) } - @objc func nextButtonDidPressed(_ sender: UIButton) { - let selectStatuses = Array(viewModel.selectStatuses) - guard !selectStatuses.isEmpty else { return } + @objc private func nextButtonDidPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") - let reportSupplementaryViewModel = ReportSupplementaryViewModel( - context: context, - user: viewModel.user, - selectStatuses: selectStatuses - ) - coordinator.present( - scene: .reportSupplementary(viewModel: reportSupplementaryViewModel), - from: self, - transition: .show - ) + assert(viewModel.delegate != nil) + viewModel.isSkip = false + viewModel.delegate?.reportStatusViewController(self, nextButtonDidPressed: sender) } } // MARK: - UITableViewDelegate -extension ReportViewController: UITableViewDelegate { +extension ReportStatusViewController: UITableViewDelegate { func tableView(_ tableView: UITableView, willSelectRowAt indexPath: IndexPath) -> IndexPath? { guard let item = viewModel.diffableDataSource?.itemIdentifier(for: indexPath), case .status = item @@ -214,7 +204,7 @@ extension ReportViewController: UITableViewDelegate { } // MARK: - UIAdaptivePresentationControllerDelegate -extension ReportViewController: UIAdaptivePresentationControllerDelegate { +extension ReportStatusViewController: UIAdaptivePresentationControllerDelegate { func presentationControllerShouldDismiss(_ presentationController: UIPresentationController) -> Bool { return false } diff --git a/Mastodon/Scene/Report/ReportStatus/ReportViewModel+Diffable.swift b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift similarity index 93% rename from Mastodon/Scene/Report/ReportStatus/ReportViewModel+Diffable.swift rename to Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift index 30ec5d872..5bcc2f3d6 100644 --- a/Mastodon/Scene/Report/ReportStatus/ReportViewModel+Diffable.swift +++ b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift @@ -12,11 +12,11 @@ import CoreDataStack import MastodonAsset import MastodonLocalization -extension ReportViewModel { +extension ReportStatusViewModel { static let reportItemHeaderContext = ReportItem.HeaderContext( primaryLabelText: L10n.Scene.Report.content1, - secondaryLabelText: L10n.Scene.Report.step1 + secondaryLabelText: "Step 3 of 4" ) func setupDiffableDataSource( @@ -41,7 +41,7 @@ extension ReportViewModel { var snapshot = NSDiffableDataSourceSnapshot() snapshot.appendSections([.main]) - snapshot.appendItems([.header(context: ReportViewModel.reportItemHeaderContext)], toSection: .main) + snapshot.appendItems([.header(context: ReportStatusViewModel.reportItemHeaderContext)], toSection: .main) let items = records.map { ReportItem.status(record: $0) } snapshot.appendItems(items, toSection: .main) diff --git a/Mastodon/Scene/Report/ReportStatus/ReportViewModel+State.swift b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+State.swift similarity index 92% rename from Mastodon/Scene/Report/ReportStatus/ReportViewModel+State.swift rename to Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+State.swift index 1bc43830f..c653fc4ad 100644 --- a/Mastodon/Scene/Report/ReportStatus/ReportViewModel+State.swift +++ b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+State.swift @@ -12,7 +12,7 @@ import CoreData import CoreDataStack import GameplayKit -extension ReportViewModel { +extension ReportStatusViewModel { class State: GKState { let logger = Logger(subsystem: "ReportViewModel.State", category: "StateMachine") @@ -23,15 +23,15 @@ extension ReportViewModel { String(describing: Self.self) } - weak var viewModel: ReportViewModel? + weak var viewModel: ReportStatusViewModel? - init(viewModel: ReportViewModel) { + init(viewModel: ReportStatusViewModel) { self.viewModel = viewModel } override func didEnter(from previousState: GKState?) { super.didEnter(from: previousState) - let previousState = previousState as? ReportViewModel.State + let previousState = previousState as? ReportStatusViewModel.State logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): [\(self.id.uuidString)] enter \(self.name), previous: \(previousState?.name ?? "")") } @@ -46,8 +46,8 @@ extension ReportViewModel { } } -extension ReportViewModel.State { - class Initial: ReportViewModel.State { +extension ReportStatusViewModel.State { + class Initial: ReportStatusViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { guard let _ = viewModel else { return false } switch stateClass { @@ -59,7 +59,7 @@ extension ReportViewModel.State { } } - class Loading: ReportViewModel.State { + class Loading: ReportStatusViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { switch stateClass { case is Fail.Type: @@ -128,7 +128,7 @@ extension ReportViewModel.State { } } - class Fail: ReportViewModel.State { + class Fail: ReportStatusViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { switch stateClass { case is Loading.Type: @@ -139,7 +139,7 @@ extension ReportViewModel.State { } } - class Idle: ReportViewModel.State { + class Idle: ReportStatusViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { switch stateClass { case is Loading.Type: @@ -150,7 +150,7 @@ extension ReportViewModel.State { } } - class NoMore: ReportViewModel.State { + class NoMore: ReportStatusViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { return false } diff --git a/Mastodon/Scene/Report/ReportStatus/ReportViewModel.swift b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel.swift similarity index 91% rename from Mastodon/Scene/Report/ReportStatus/ReportViewModel.swift rename to Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel.swift index 46a475262..239960637 100644 --- a/Mastodon/Scene/Report/ReportStatus/ReportViewModel.swift +++ b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel.swift @@ -1,8 +1,8 @@ // -// ReportViewModel.swift +// ReportStatusViewModel.swift // Mastodon // -// Created by ihugo on 2021/4/19. +// Created by MainasuK on 2022-5-10. // import Combine @@ -15,10 +15,12 @@ import OrderedCollections import os.log import UIKit -class ReportViewModel { +class ReportStatusViewModel { var disposeBag = Set() + weak var delegate: ReportStatusViewControllerDelegate? + // input let context: AppContext let user: ManagedObjectRecord @@ -26,6 +28,7 @@ class ReportViewModel { let statusFetchedResultsController: StatusFetchedResultsController let listBatchFetchViewModel = ListBatchFetchViewModel() + @Published var isSkip = false @Published var selectStatuses = OrderedSet>() // output diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift index 4f6e102b2..10191f6ed 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift @@ -11,20 +11,25 @@ import Combine import MastodonAsset import MastodonLocalization +protocol ReportSupplementaryViewControllerDelegate: AnyObject { + func reportSupplementaryViewController(_ viewController: ReportSupplementaryViewController, skipButtonDidPressed button: UIButton) + func reportSupplementaryViewController(_ viewController: ReportSupplementaryViewController, nextButtonDidPressed button: UIButton) +} + final class ReportSupplementaryViewController: UIViewController, NeedsDependency, ReportViewControllerAppearance { let logger = Logger(subsystem: "ReportSupplementaryViewController", category: "ViewController") var disposeBag = Set() private var observations = Set() - + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } var viewModel: ReportSupplementaryViewModel! { willSet { precondition(!isViewLoaded) } } - // MAKK: - UI + lazy var cancelBarButtonItem = UIBarButtonItem( barButtonSystemItem: .cancel, target: self, @@ -74,16 +79,14 @@ extension ReportSupplementaryViewController { setupAppearance() defer { setupNavigationBarBackgroundView() } - navigationItem.rightBarButtonItem = cancelBarButtonItem - - viewModel.$isReporting + viewModel.$isBusy .receive(on: DispatchQueue.main) - .sink { [weak self] isReporting in + .sink { [weak self] isBusy in guard let self = self else { return } - self.navigationActionView.isUserInteractionEnabled = !isReporting + self.navigationItem.rightBarButtonItem = isBusy ? self.activityIndicatorBarButtonItem : self.cancelBarButtonItem } .store(in: &disposeBag) - + tableView.translatesAutoresizingMaskIntoConstraints = false view.addSubview(tableView) NSLayoutConstraint.activate([ @@ -130,49 +133,25 @@ extension ReportSupplementaryViewController { } extension ReportSupplementaryViewController { - private func report(withComment: Bool) { - Task { - do { - let _ = try await viewModel.report(withComment: withComment) - logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): report success") - - let reportResultViewModel = ReportResultViewModel( - context: context, - user: viewModel.user - ) - - coordinator.present( - scene: .reportResult(viewModel: reportResultViewModel), - from: self, - transition: .show - ) - - } catch { - let alertController = UIAlertController(for: error, title: nil, preferredStyle: .alert) - let okAction = UIAlertAction(title: L10n.Common.Controls.Actions.ok, style: .default, handler: nil) - alertController.addAction(okAction) - self.coordinator.present( - scene: .alertController(alertController: alertController), - from: nil, - transition: .alertController(animated: true, completion: nil) - ) - } - } // end Task - } -} - -extension ReportSupplementaryViewController { - + @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { dismiss(animated: true, completion: nil) } @objc func skipButtonDidPressed(_ sender: UIButton) { - report(withComment: false) + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + + assert(viewModel.delegate != nil) + viewModel.isSkip = true + viewModel.delegate?.reportSupplementaryViewController(self, skipButtonDidPressed: sender) } @objc func nextButtonDidPressed(_ sender: UIButton) { - report(withComment: true) + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + + assert(viewModel.delegate != nil) + viewModel.isSkip = false + viewModel.delegate?.reportSupplementaryViewController(self, nextButtonDidPressed: sender) } } diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift index 5fb9e7421..e59617c35 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift @@ -15,8 +15,8 @@ import MastodonLocalization extension ReportSupplementaryViewModel { static let reportItemHeaderContext = ReportItem.HeaderContext( - primaryLabelText: L10n.Scene.Report.content2, - secondaryLabelText: L10n.Scene.Report.step2 + primaryLabelText: "Is there anything else we should know?", + secondaryLabelText: "Step 4 of 4" ) func setupDiffableDataSource( diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift index e73e82dd6..4147d07d7 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift @@ -12,26 +12,26 @@ import MastodonSDK class ReportSupplementaryViewModel { + weak var delegate: ReportSupplementaryViewControllerDelegate? + // Input var context: AppContext let user: ManagedObjectRecord - let selectStatuses: [ManagedObjectRecord] let commentContext = ReportItem.CommentContext() + @Published var isSkip = false + @Published var isBusy = false + // output var diffableDataSource: UITableViewDiffableDataSource? @Published var isNextButtonEnabled = false - @Published var isReporting = false - @Published var isReportSuccess = false init( context: AppContext, - user: ManagedObjectRecord, - selectStatuses: [ManagedObjectRecord] + user: ManagedObjectRecord ) { self.context = context self.user = user - self.selectStatuses = selectStatuses // end init commentContext.$comment @@ -42,41 +42,3 @@ class ReportSupplementaryViewModel { } } - -extension ReportSupplementaryViewModel { - func report(withComment: Bool) async throws { - guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { - assertionFailure() - return - } - - let managedObjectContext = context.managedObjectContext - let _query: Mastodon.API.Reports.FileReportQuery? = try await managedObjectContext.perform { - guard let user = self.user.object(in: managedObjectContext) else { return nil } - let statusIDs = self.selectStatuses.compactMap { record -> Status.ID? in - guard let status = record.object(in: managedObjectContext) else { return nil } - return status.id - } - return Mastodon.API.Reports.FileReportQuery( - accountID: user.id, - statusIDs: statusIDs, - comment: withComment ? self.commentContext.comment : nil, - forward: nil - ) - } - - guard let query = _query else { return } - - do { - isReporting = true - let _ = try await context.apiService.report( - query: query, - authenticationBox: authenticationBox - ) - isReportSuccess = true - } catch { - isReporting = false - throw error - } - } -} diff --git a/Mastodon/Scene/Report/Share/Cell/ReportCommentTableViewCell.swift b/Mastodon/Scene/Report/Share/Cell/ReportCommentTableViewCell.swift index b982ee5ac..d735a094c 100644 --- a/Mastodon/Scene/Report/Share/Cell/ReportCommentTableViewCell.swift +++ b/Mastodon/Scene/Report/Share/Cell/ReportCommentTableViewCell.swift @@ -8,6 +8,7 @@ import UIKit import Combine import MastodonUI +import MastodonAsset import MastodonLocalization import UITextView_Placeholder @@ -27,7 +28,8 @@ final class ReportCommentTableViewCell: UITableViewCell { textView.attributedPlaceholder = NSAttributedString( string: L10n.Scene.Report.textPlaceholder, attributes: [ - .font: font + .font: font, + .foregroundColor: Asset.Colors.Label.secondary.color ] ) textView.textContainerInset = UIEdgeInsets(top: 16, left: 16, bottom: 16, right: 16) @@ -80,4 +82,17 @@ extension ReportCommentTableViewCell { commentTextView.heightAnchor.constraint(greaterThanOrEqualToConstant: 100).priority(.defaultHigh), ]) } + + override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) { + super.traitCollectionDidChange(previousTraitCollection) + + commentTextView.attributedPlaceholder = NSAttributedString( + string: L10n.Scene.Report.textPlaceholder, + attributes: [ + .font: UIFontMetrics(forTextStyle: .body).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)), + .foregroundColor: Asset.Colors.Label.secondary.color + ] + ) + } + } diff --git a/Mastodon/Scene/Report/Share/ReportViewControllerAppearance.swift b/Mastodon/Scene/Report/Share/ReportViewControllerAppearance.swift index 6b35f3d89..fb9bcd63f 100644 --- a/Mastodon/Scene/Report/Share/ReportViewControllerAppearance.swift +++ b/Mastodon/Scene/Report/Share/ReportViewControllerAppearance.swift @@ -19,7 +19,7 @@ extension ReportViewControllerAppearance { func setupAppearance() { - title = L10n.Scene.Report.titleReport + // title = L10n.Scene.Report.titleReport view.backgroundColor = Asset.Scene.Report.background.color setupNavigationBarAppearance() diff --git a/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift b/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift index f4ad467da..ec145f86d 100644 --- a/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift +++ b/Mastodon/Scene/Share/NavigationController/AdaptiveStatusBarStyleNavigationController.swift @@ -23,6 +23,7 @@ extension AdaptiveStatusBarStyleNavigationController { override func viewDidLoad() { super.viewDidLoad() + setupFullWidthBackGesture() } @@ -45,6 +46,11 @@ extension AdaptiveStatusBarStyleNavigationController: UIGestureRecognizerDelegat func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool { let isSystemSwipeToBackEnabled = interactivePopGestureRecognizer?.isEnabled == true let isThereStackedViewControllers = viewControllers.count > 1 - return isSystemSwipeToBackEnabled && isThereStackedViewControllers + let isPanPopable = (topViewController as? PanPopableViewController)?.isPanPopable ?? true + return isSystemSwipeToBackEnabled && isThereStackedViewControllers && isPanPopable } } + +protocol PanPopableViewController: UIViewController { + var isPanPopable: Bool { get } +} From a88bb763fbbaf5f26715cbae4fd50a97be034db1 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 May 2022 18:53:02 +0800 Subject: [PATCH 070/571] feat: add spam and other reason report flow path --- .../Report/Report/ReportViewController.swift | 29 +++++++++++++++++-- .../Scene/Report/Report/ReportViewModel.swift | 26 +++++++++++++---- .../ReportReasonViewController.swift | 12 -------- .../ReportSupplementaryViewController.swift | 2 ++ .../ReportSupplementaryViewModel.swift | 14 +++++---- 5 files changed, 57 insertions(+), 26 deletions(-) diff --git a/Mastodon/Scene/Report/Report/ReportViewController.swift b/Mastodon/Scene/Report/Report/ReportViewController.swift index 6d3f6da06..1fa8428e6 100644 --- a/Mastodon/Scene/Report/Report/ReportViewController.swift +++ b/Mastodon/Scene/Report/Report/ReportViewController.swift @@ -24,6 +24,12 @@ class ReportViewController: UIViewController, NeedsDependency, ReportViewControl var viewModel: ReportViewModel! + lazy var cancelBarButtonItem = UIBarButtonItem( + barButtonSystemItem: .cancel, + target: self, + action: #selector(ReportViewController.cancelBarButtonItemDidPressed(_:)) + ) + deinit { os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) } @@ -38,6 +44,8 @@ extension ReportViewController { setupAppearance() defer { setupNavigationBarBackgroundView() } + navigationItem.rightBarButtonItem = cancelBarButtonItem + viewModel.reportReasonViewModel.delegate = self viewModel.reportServerRulesViewModel.delegate = self viewModel.reportStatusViewModel.delegate = self @@ -62,6 +70,14 @@ extension ReportViewController { } +extension ReportViewController { + + @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { + dismiss(animated: true, completion: nil) + } + +} + // MARK: - UIAdaptivePresentationControllerDelegate extension ReportViewController: UIAdaptivePresentationControllerDelegate { func presentationControllerShouldDismiss(_ presentationController: UIPresentationController) -> Bool { @@ -74,14 +90,21 @@ extension ReportViewController: ReportReasonViewControllerDelegate { func reportReasonViewController(_ viewController: ReportReasonViewController, nextButtonPressed button: UIButton) { guard let reason = viewController.viewModel.selectReason else { return } switch reason { + case .dislike: + // TODO: + break case .violateRule: coordinator.present( scene: .reportServerRules(viewModel: viewModel.reportServerRulesViewModel), from: self, transition: .show ) - default: - break + case .spam, .other: + coordinator.present( + scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), + from: self, + transition: .show + ) } } } @@ -90,7 +113,7 @@ extension ReportViewController: ReportReasonViewControllerDelegate { extension ReportViewController: ReportServerRulesViewControllerDelegate { func reportServerRulesViewController(_ viewController: ReportServerRulesViewController, nextButtonPressed button: UIButton) { if viewController.viewModel.isDislike { - + // TODO: } else if viewController.viewModel.selectRule != nil { coordinator.present( scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift index 73bac19b0..590aed87d 100644 --- a/Mastodon/Scene/Report/Report/ReportViewModel.swift +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -104,6 +104,9 @@ extension ReportViewModel { let managedObjectContext = context.managedObjectContext let _query: Mastodon.API.Reports.FileReportQuery? = try await managedObjectContext.perform { guard let user = self.user.object(in: managedObjectContext) else { return nil } + + // the status picker is essential step in report flow + // only check isSkip or not let statusIDs: [Status.ID]? = { if self.reportStatusViewModel.isSkip { let _id: Status.ID? = self.reportStatusViewModel.status.flatMap { record -> Status.ID? in @@ -118,10 +121,15 @@ extension ReportViewModel { } } }() + + // the user comment is essential step in report flow + // only check isSkip or not let comment: String? = { var suffixes: [String] = [] let content: String? + // the server rules is NOT essential step in report flow + // append suffix depends which reason if let reason = self.reportReasonViewModel.selectReason { switch reason { case .spam: @@ -130,9 +138,12 @@ extension ReportViewModel { suffixes.append(reason.rawValue) if let rule = self.reportServerRulesViewModel.selectRule { suffixes.append(rule.text) + } else { + assertionFailure("should select valid rule") } - - case .dislike, .other: + case .dislike: + assertionFailure("should not enter the report flow") + case .other: break } } @@ -162,11 +173,14 @@ extension ReportViewModel { do { isReporting = true + #if DEBUG try await Task.sleep(nanoseconds: .second * 3) -// let _ = try await context.apiService.report( -// query: query, -// authenticationBox: authenticationBox -// ) + #else + let _ = try await context.apiService.report( + query: query, + authenticationBox: authenticationBox + ) + #endif isReportSuccess = true } catch { isReporting = false diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift index b0651e42d..ac5d9e797 100644 --- a/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonViewController.swift @@ -30,12 +30,6 @@ final class ReportReasonViewController: UIViewController, NeedsDependency, Repor var viewModel: ReportReasonViewModel! private(set) lazy var reportReasonView = ReportReasonView(viewModel: viewModel) - lazy var cancelBarButtonItem = UIBarButtonItem( - barButtonSystemItem: .cancel, - target: self, - action: #selector(ReportReasonViewController.cancelBarButtonItemDidPressed(_:)) - ) - let navigationActionView: NavigationActionView = { let navigationActionView = NavigationActionView() navigationActionView.backgroundColor = Asset.Scene.Onboarding.background.color @@ -57,8 +51,6 @@ extension ReportReasonViewController { setupAppearance() defer { setupNavigationBarBackgroundView() } - navigationItem.rightBarButtonItem = cancelBarButtonItem - let hostingViewController = UIHostingController(rootView: reportReasonView) hostingViewController.view.preservesSuperviewLayoutMargins = true addChild(hostingViewController) @@ -102,10 +94,6 @@ extension ReportReasonViewController { extension ReportReasonViewController { - @objc private func cancelBarButtonItemDidPressed(_ sender: UIBarButtonItem) { - dismiss(animated: true, completion: nil) - } - @objc private func nextButtonPressed(_ sender: UIButton) { logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift index 10191f6ed..fd7783170 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewController.swift @@ -84,6 +84,8 @@ extension ReportSupplementaryViewController { .sink { [weak self] isBusy in guard let self = self else { return } self.navigationItem.rightBarButtonItem = isBusy ? self.activityIndicatorBarButtonItem : self.cancelBarButtonItem + self.navigationItem.hidesBackButton = isBusy + self.navigationActionView.backButton.isUserInteractionEnabled = !isBusy } .store(in: &disposeBag) diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift index 4147d07d7..c07ee1f54 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel.swift @@ -34,11 +34,15 @@ class ReportSupplementaryViewModel { self.user = user // end init - commentContext.$comment - .map { comment -> Bool in - return !comment.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty - } - .assign(to: &$isNextButtonEnabled) + Publishers.CombineLatest( + commentContext.$comment, + $isBusy + ) + .map { comment, isBusy -> Bool in + guard !isBusy else { return false } + return !comment.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty + } + .assign(to: &$isNextButtonEnabled) } } From 18bd5d66d2181d46d6b66cb939490c2f2ef05184 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 11:04:48 +0800 Subject: [PATCH 071/571] chore: add profile scheme and build configuration --- Mastodon.xcodeproj/project.pbxproj | 347 +++++++++++++++--- .../xcschemes/xcschememanagement.plist | 29 +- Mastodon/Supporting Files/SceneDelegate.swift | 8 +- 3 files changed, 320 insertions(+), 64 deletions(-) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 400e4d73f..b9105dcda 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -818,7 +818,10 @@ 5DDDF1A82617489F00311060 /* Mastodon+Entity+History.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Mastodon+Entity+History.swift"; sourceTree = ""; }; 5DF1056325F887CB00D6C0D4 /* AVPlayer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AVPlayer.swift; sourceTree = ""; }; 6130CBE4B26E3C976ACC1688 /* Pods-ShareActionExtension.asdk - debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ShareActionExtension.asdk - debug.xcconfig"; path = "Target Support Files/Pods-ShareActionExtension/Pods-ShareActionExtension.asdk - debug.xcconfig"; sourceTree = ""; }; + 63EF9E6E5B575CD2A8B0475D /* Pods-AppShared.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AppShared.profile.xcconfig"; path = "Target Support Files/Pods-AppShared/Pods-AppShared.profile.xcconfig"; sourceTree = ""; }; + 728DE51ADA27C395C6E1BAB5 /* Pods-Mastodon-MastodonUITests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon-MastodonUITests.profile.xcconfig"; path = "Target Support Files/Pods-Mastodon-MastodonUITests/Pods-Mastodon-MastodonUITests.profile.xcconfig"; sourceTree = ""; }; 75E3471C898DDD9631729B6E /* Pods-Mastodon.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon.release.xcconfig"; path = "Target Support Files/Pods-Mastodon/Pods-Mastodon.release.xcconfig"; sourceTree = ""; }; + 7CB58D292DA7ACEF179A9050 /* Pods-Mastodon.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon.profile.xcconfig"; path = "Target Support Files/Pods-Mastodon/Pods-Mastodon.profile.xcconfig"; sourceTree = ""; }; 7CEFFAE9AF9284B13C0A758D /* Pods-MastodonTests.asdk - debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MastodonTests.asdk - debug.xcconfig"; path = "Target Support Files/Pods-MastodonTests/Pods-MastodonTests.asdk - debug.xcconfig"; sourceTree = ""; }; 819CEC9DCAD8E8E7BD85A7BB /* Pods-Mastodon.asdk.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon.asdk.xcconfig"; path = "Target Support Files/Pods-Mastodon/Pods-Mastodon.asdk.xcconfig"; sourceTree = ""; }; 8850E70A1D5FF51432E43653 /* Pods-Mastodon-MastodonUITests.asdk - release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon-MastodonUITests.asdk - release.xcconfig"; path = "Target Support Files/Pods-Mastodon-MastodonUITests/Pods-Mastodon-MastodonUITests.asdk - release.xcconfig"; sourceTree = ""; }; @@ -1385,6 +1388,7 @@ DBFEF07226A6913D006D7ED1 /* APIService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIService.swift; sourceTree = ""; }; DBFEF07A26A6BCE8006D7ED1 /* APIService+Status+Publish.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Status+Publish.swift"; sourceTree = ""; }; DDB1B139FA8EA26F510D58B6 /* Pods-AppShared.asdk - release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AppShared.asdk - release.xcconfig"; path = "Target Support Files/Pods-AppShared/Pods-AppShared.asdk - release.xcconfig"; sourceTree = ""; }; + DF65937EC1FF64462BC002EE /* Pods-MastodonTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MastodonTests.profile.xcconfig"; path = "Target Support Files/Pods-MastodonTests/Pods-MastodonTests.profile.xcconfig"; sourceTree = ""; }; E5C7236E58D14A0322FE00F2 /* Pods-Mastodon-MastodonUITests.asdk - debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon-MastodonUITests.asdk - debug.xcconfig"; path = "Target Support Files/Pods-Mastodon-MastodonUITests/Pods-Mastodon-MastodonUITests.asdk - debug.xcconfig"; sourceTree = ""; }; E9AABD3D26B64B8C00E237DA /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/Intents.strings; sourceTree = ""; }; E9AABD4026B64B8D00E237DA /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = ""; }; @@ -1587,6 +1591,10 @@ 0655B257371274BEB7EB1C19 /* Pods-Mastodon.release snapshot.xcconfig */, 0827D1674B2523503E8605F6 /* Pods-Mastodon-MastodonUITests.release snapshot.xcconfig */, 8E79CCBE51FBC3F7FE8CF49F /* Pods-MastodonTests.release snapshot.xcconfig */, + 63EF9E6E5B575CD2A8B0475D /* Pods-AppShared.profile.xcconfig */, + 7CB58D292DA7ACEF179A9050 /* Pods-Mastodon.profile.xcconfig */, + 728DE51ADA27C395C6E1BAB5 /* Pods-Mastodon-MastodonUITests.profile.xcconfig */, + DF65937EC1FF64462BC002EE /* Pods-MastodonTests.profile.xcconfig */, ); path = Pods; sourceTree = ""; @@ -3586,23 +3594,23 @@ ); mainGroup = DB427DC925BAA00100D1B89D; packageReferences = ( - DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */, + DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */, 2D61336725C18A4F00CAE157 /* XCRemoteSwiftPackageReference "AlamofireNetworkActivityIndicator" */, DB0140BB25C40D7500F9F3CF /* XCRemoteSwiftPackageReference "CommonOSLog" */, - 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */, - 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */, + 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */, + 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */, DBB525062611EAC0002F1F29 /* XCRemoteSwiftPackageReference "Tabman" */, - DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */, - DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */, - DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */, - DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */, - DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */, - DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin" */, - DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */, - DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */, - DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */, - DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */, - DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */, + DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */, + DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */, + DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */, + DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */, + DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */, + DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin.git" */, + DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */, + DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */, + DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */, + DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */, + DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */, ); productRefGroup = DB427DD325BAA00100D1B89D /* Products */; projectDirPath = ""; @@ -4668,7 +4676,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -4955,6 +4963,241 @@ }; name = Release; }; + DB848E2A282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "PROFILE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INTENTS_CODEGEN_LANGUAGE = Swift; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = PROFILE; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + DB848E2B282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7CB58D292DA7ACEF179A9050 /* Pods-Mastodon.profile.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 126; + DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = Mastodon/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0.7; + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app; + PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OBJC_BRIDGING_HEADER = "Mastodon/Vender/Mastodon-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + DB848E2C282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = DF65937EC1FF64462BC002EE /* Pods-MastodonTests.profile.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = MastodonTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.MastodonTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Mastodon.app/Mastodon"; + }; + name = Profile; + }; + DB848E2D282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 728DE51ADA27C395C6E1BAB5 /* Pods-Mastodon-MastodonUITests.profile.xcconfig */; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = MastodonUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.MastodonUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = Mastodon; + }; + name = Profile; + }; + DB848E2E282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 63EF9E6E5B575CD2A8B0475D /* Pods-AppShared.profile.xcconfig */; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 126; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 126; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = AppShared/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.AppShared; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Profile; + }; + DB848E2F282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 126; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = NotificationService/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@executable_path/../../Frameworks", + ); + MARKETING_VERSION = 1.0.7; + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.NotificationService; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + DB848E30282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 126; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = ShareActionExtension/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@executable_path/../../Frameworks", + ); + MARKETING_VERSION = 1.0.7; + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.ShareActionExtension; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "APP_EXTENSION $(inherited)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + DB848E31282B5E6300A302CC /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 126; + DEVELOPMENT_TEAM = 5Z4GVSS33P; + INFOPLIST_FILE = MastodonIntent/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@executable_path/../../Frameworks", + ); + MARKETING_VERSION = 1.0.7; + PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.MastodonIntent; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "APP_EXTENSION $(inherited)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; DB8FABD026AEC7B2008E5AF4 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -5333,6 +5576,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB427DFA25BAA00100D1B89D /* Debug */, + DB848E2A282B5E6300A302CC /* Profile */, DB427DFB25BAA00100D1B89D /* Release */, DBEB19E127E4658E00B0E80E /* Release Snapshot */, ); @@ -5343,6 +5587,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB427DFD25BAA00100D1B89D /* Debug */, + DB848E2B282B5E6300A302CC /* Profile */, DB427DFE25BAA00100D1B89D /* Release */, DBEB19E227E4658E00B0E80E /* Release Snapshot */, ); @@ -5353,6 +5598,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB427E0025BAA00100D1B89D /* Debug */, + DB848E2C282B5E6300A302CC /* Profile */, DB427E0125BAA00100D1B89D /* Release */, DBEB19E327E4658E00B0E80E /* Release Snapshot */, ); @@ -5363,6 +5609,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB427E0325BAA00100D1B89D /* Debug */, + DB848E2D282B5E6300A302CC /* Profile */, DB427E0425BAA00100D1B89D /* Release */, DBEB19E427E4658E00B0E80E /* Release Snapshot */, ); @@ -5373,6 +5620,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB6804892637CD4C00430867 /* Debug */, + DB848E2E282B5E6300A302CC /* Profile */, DB68048A2637CD4C00430867 /* Release */, DBEB19E527E4658E00B0E80E /* Release Snapshot */, ); @@ -5383,6 +5631,7 @@ isa = XCConfigurationList; buildConfigurations = ( DB8FABD026AEC7B2008E5AF4 /* Debug */, + DB848E31282B5E6300A302CC /* Profile */, DB8FABD326AEC7B2008E5AF4 /* Release */, DBEB19E827E4658E00B0E80E /* Release Snapshot */, ); @@ -5393,6 +5642,7 @@ isa = XCConfigurationList; buildConfigurations = ( DBC6461D26A170AB00B0E31B /* Debug */, + DB848E30282B5E6300A302CC /* Profile */, DBC6462026A170AB00B0E31B /* Release */, DBEB19E727E4658E00B0E80E /* Release Snapshot */, ); @@ -5403,6 +5653,7 @@ isa = XCConfigurationList; buildConfigurations = ( DBF8AE1C263293E400C9C23C /* Debug */, + DB848E2F282B5E6300A302CC /* Profile */, DBF8AE1D263293E400C9C23C /* Release */, DBEB19E627E4658E00B0E80E /* Release Snapshot */, ); @@ -5412,7 +5663,7 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */ = { + 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/vtourraine/ThirdPartyMailer.git"; requirement = { @@ -5428,7 +5679,7 @@ minimumVersion = 3.1.0; }; }; - 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */ = { + 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/TimOliver/TOCropViewController.git"; requirement = { @@ -5444,7 +5695,7 @@ minimumVersion = 0.1.1; }; }; - DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */ = { + DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/TwidereProject/MetaTextKit.git"; requirement = { @@ -5452,7 +5703,7 @@ version = 2.2.3; }; }; - DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin" */ = { + DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/kean/Nuke-FLAnimatedImage-Plugin.git"; requirement = { @@ -5460,7 +5711,7 @@ minimumVersion = 8.0.0; }; }; - DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */ = { + DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/Alamofire/AlamofireImage.git"; requirement = { @@ -5468,7 +5719,7 @@ minimumVersion = 4.1.0; }; }; - DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */ = { + DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/Alamofire/Alamofire.git"; requirement = { @@ -5476,7 +5727,7 @@ minimumVersion = 5.4.0; }; }; - DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */ = { + DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/apple/swift-collections.git"; requirement = { @@ -5484,7 +5735,7 @@ minimumVersion = 0.0.5; }; }; - DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */ = { + DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/kishikawakatsumi/KeychainAccess.git"; requirement = { @@ -5492,7 +5743,7 @@ minimumVersion = 4.2.2; }; }; - DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = { + DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/siteline/SwiftUI-Introspect.git"; requirement = { @@ -5500,7 +5751,7 @@ minimumVersion = 0.1.4; }; }; - DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */ = { + DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/slackhq/PanModal.git"; requirement = { @@ -5508,7 +5759,7 @@ minimumVersion = 1.2.7; }; }; - DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */ = { + DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/ra1028/DifferenceKit.git"; requirement = { @@ -5516,7 +5767,7 @@ version = 1.2.0; }; }; - DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */ = { + DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/MainasuK/DiffableDataSources.git"; requirement = { @@ -5524,7 +5775,7 @@ kind = branch; }; }; - DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */ = { + DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/cezheng/Fuzi.git"; requirement = { @@ -5540,7 +5791,7 @@ minimumVersion = 2.11.0; }; }; - DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */ = { + DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/MainasuK/FPSIndicator.git"; requirement = { @@ -5553,7 +5804,7 @@ /* Begin XCSwiftPackageProductDependency section */ 2D5981B925E4D7F8000FB903 /* ThirdPartyMailer */ = { isa = XCSwiftPackageProductDependency; - package = 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */; + package = 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */; productName = ThirdPartyMailer; }; 2D61336825C18A4F00CAE157 /* AlamofireNetworkActivityIndicator */ = { @@ -5563,12 +5814,12 @@ }; 2D939AC725EE14620076FA61 /* CropViewController */ = { isa = XCSwiftPackageProductDependency; - package = 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */; + package = 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */; productName = CropViewController; }; DB02EA0A280D180D00E751C5 /* KeychainAccess */ = { isa = XCSwiftPackageProductDependency; - package = DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */; + package = DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */; productName = KeychainAccess; }; DB3EA8F4281BB65200598866 /* MastodonSDK */ = { @@ -5577,17 +5828,17 @@ }; DB3EA8FB281BBAE100598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; productName = AlamofireImage; }; DB3EA8FD281BBAF200598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; productName = Alamofire; }; DB3EA8FF281BBB1D00598866 /* MetaTextKit */ = { isa = XCSwiftPackageProductDependency; - package = DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */; + package = DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */; productName = MetaTextKit; }; DB3EA901281BBD5D00598866 /* CommonOSLog */ = { @@ -5597,12 +5848,12 @@ }; DB3EA903281BBD9400598866 /* Introspect */ = { isa = XCSwiftPackageProductDependency; - package = DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */; + package = DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */; productName = Introspect; }; DB3EA905281BBE8200598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; productName = AlamofireImage; }; DB3EA907281BBE8200598866 /* AlamofireNetworkActivityIndicator */ = { @@ -5612,12 +5863,12 @@ }; DB3EA909281BBE8200598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; productName = Alamofire; }; DB3EA90B281BBE9600598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; productName = AlamofireImage; }; DB3EA90D281BBE9600598866 /* AlamofireNetworkActivityIndicator */ = { @@ -5627,42 +5878,42 @@ }; DB3EA90F281BBE9600598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; productName = Alamofire; }; DB3EA911281BBEA800598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; productName = AlamofireImage; }; DB3EA913281BBEA800598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; productName = Alamofire; }; DB552D4E26BBD10C00E481F6 /* OrderedCollections */ = { isa = XCSwiftPackageProductDependency; - package = DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */; + package = DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */; productName = OrderedCollections; }; DBA5A52E26F07ED800CACBAA /* PanModal */ = { isa = XCSwiftPackageProductDependency; - package = DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */; + package = DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */; productName = PanModal; }; DBAC6482267D0B21007FE9FD /* DifferenceKit */ = { isa = XCSwiftPackageProductDependency; - package = DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */; + package = DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */; productName = DifferenceKit; }; DBAC649D267DFE43007FE9FD /* DiffableDataSources */ = { isa = XCSwiftPackageProductDependency; - package = DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */; + package = DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */; productName = DiffableDataSources; }; DBAC64A0267E6D02007FE9FD /* Fuzi */ = { isa = XCSwiftPackageProductDependency; - package = DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */; + package = DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */; productName = Fuzi; }; DBB525072611EAC0002F1F29 /* Tabman */ = { @@ -5672,7 +5923,7 @@ }; DBF7A0FB26830C33004176A2 /* FPSIndicator */ = { isa = XCSwiftPackageProductDependency; - package = DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */; + package = DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */; productName = FPSIndicator; }; /* End XCSwiftPackageProductDependency section */ diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 7f54b9011..3d2d4b728 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -9,33 +9,38 @@ isShown orderHint - 4 + 5 CoreDataStack.xcscheme_^#shared#^_ orderHint 27 - Mastodon - RTL.xcscheme_^#shared#^_ - - orderHint - 6 - - Mastodon - Release.xcscheme_^#shared#^_ + Mastodon - Profile.xcscheme_^#shared#^_ orderHint 1 - Mastodon - Snapshot.xcscheme_^#shared#^_ + Mastodon - RTL.xcscheme_^#shared#^_ + + orderHint + 7 + + Mastodon - Release.xcscheme_^#shared#^_ orderHint 2 - Mastodon - ar.xcscheme + Mastodon - Snapshot.xcscheme_^#shared#^_ orderHint 3 + Mastodon - ar.xcscheme + + orderHint + 4 + Mastodon - ar.xcscheme_^#shared#^_ orderHint @@ -109,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 20 + 27 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 19 + 29 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 21 + 28 SuppressBuildableAutocreation diff --git a/Mastodon/Supporting Files/SceneDelegate.swift b/Mastodon/Supporting Files/SceneDelegate.swift index d178cd0d3..54b1fd57e 100644 --- a/Mastodon/Supporting Files/SceneDelegate.swift +++ b/Mastodon/Supporting Files/SceneDelegate.swift @@ -10,7 +10,7 @@ import UIKit import Combine import CoreDataStack -#if DEBUG +#if PROFILE import FPSIndicator #endif @@ -22,7 +22,7 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { var window: UIWindow? var coordinator: SceneCoordinator? - #if DEBUG + #if PROFILE var fpsIndicator: FPSIndicator? #endif @@ -87,8 +87,8 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { } .store(in: &observations) - #if DEBUG - // fpsIndicator = FPSIndicator(windowScene: windowScene) + #if PROFILE + fpsIndicator = FPSIndicator(windowScene: windowScene) #endif } From 590aa1336e381782bdb94dc42c7ff64007380aaf Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 15:02:47 +0800 Subject: [PATCH 072/571] chore: update i18n resources --- MastodonIntent/gl.lproj/Intents.strings | 48 ++-- .../Resources/ar.lproj/Localizable.strings | 10 +- .../ar.lproj/Localizable.stringsdict | 8 +- .../Resources/ca.lproj/Localizable.strings | 10 +- .../Resources/de.lproj/Localizable.strings | 6 +- .../es-419.lproj/Localizable.strings | 2 +- .../Resources/gd-GB.lproj/Localizable.strings | 2 +- .../Resources/gl.lproj/Localizable.strings | 224 +++++++++--------- .../gl.lproj/Localizable.stringsdict | 104 ++++---- .../Resources/ja.lproj/Localizable.strings | 48 ++-- .../ja.lproj/Localizable.stringsdict | 2 +- .../Resources/ku.lproj/Localizable.strings | 5 +- .../Resources/th.lproj/Localizable.strings | 22 +- .../Resources/tr.lproj/Localizable.strings | 4 +- 14 files changed, 247 insertions(+), 248 deletions(-) diff --git a/MastodonIntent/gl.lproj/Intents.strings b/MastodonIntent/gl.lproj/Intents.strings index 6877490ba..2083cc701 100644 --- a/MastodonIntent/gl.lproj/Intents.strings +++ b/MastodonIntent/gl.lproj/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Publicar en Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Texto a incluír"; -"CsR7G2" = "Post on Mastodon"; +"CsR7G2" = "Publicar en Mastodon"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Cal é o contido a publicar?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Fallou a publicación"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Razón do fallo"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Enviar Publicación con texto"; -"RxSqsb" = "Post"; +"RxSqsb" = "Publicación"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Publicar ${content} en Mastodon"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Publicación"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Visibilidade"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Visibilidade da publicación"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Hai ${count} opcións que coinciden con ‘Público’."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Hai ${count} opcións que coinciden con 'Só seguidoras’."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, Público"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, Só seguidoras"; -"dUyuGg" = "Post on Mastodon"; +"dUyuGg" = "Publicar en Mastodon"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Público"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Só seguidoras"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Fallou a publicación. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Publicación correcta."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Só para confirmar, querías ’Público'?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Só para confirmar, querías ’Só para seguidoras'?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Publicación correcta. "; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index 2ed1a8ad3..09ab59f78 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -58,7 +58,7 @@ "Common.Controls.Actions.SignIn" = "تسجيل الدخول"; "Common.Controls.Actions.SignUp" = "إنشاء حِساب"; "Common.Controls.Actions.Skip" = "تخطي"; -"Common.Controls.Actions.TakePhoto" = "التقاط صورة"; +"Common.Controls.Actions.TakePhoto" = "اِلتِقاطُ صُورَة"; "Common.Controls.Actions.TryAgain" = "المُحاولة مرة أُخرى"; "Common.Controls.Actions.UnblockDomain" = "رفع الحظر عن %@"; "Common.Controls.Friendship.Block" = "حظر"; @@ -164,7 +164,7 @@ "Scene.Compose.Attachment.Video" = "مقطع مرئي"; "Scene.Compose.AutoComplete.SpaceToAdd" = "انقر على مساحة لإضافتِها"; "Scene.Compose.ComposeAction" = "نَشر"; -"Scene.Compose.ContentInputPlaceholder" = "أخبِرنا بِما يَجُولُ فِي ذِهنَك"; +"Scene.Compose.ContentInputPlaceholder" = "عَبِّر عَمَّ يَجُولُ فِي ذِهنِك"; "Scene.Compose.ContentWarning.Placeholder" = "اكتب تَحذيرًا دَقيقًا هُنا..."; "Scene.Compose.Keyboard.AppendAttachmentEntry" = "إضافة مُرفَق - %@"; "Scene.Compose.Keyboard.DiscardPost" = "تجاهُل المنشور"; @@ -172,9 +172,9 @@ "Scene.Compose.Keyboard.SelectVisibilityEntry" = "اختر مدى الظهور - %@"; "Scene.Compose.Keyboard.ToggleContentWarning" = "تبديل تحذير المُحتَوى"; "Scene.Compose.Keyboard.TogglePoll" = "تبديل الاستطلاع"; -"Scene.Compose.MediaSelection.Browse" = "تصفح"; -"Scene.Compose.MediaSelection.Camera" = "إلتقاط صورة"; -"Scene.Compose.MediaSelection.PhotoLibrary" = "مكتبة الصور"; +"Scene.Compose.MediaSelection.Browse" = "تَصَفَّح"; +"Scene.Compose.MediaSelection.Camera" = "اِلتِقاطُ صُورَة"; +"Scene.Compose.MediaSelection.PhotoLibrary" = "مَكتَبَةُ الصُّوَر"; "Scene.Compose.Poll.DurationTime" = "المُدَّة: %@"; "Scene.Compose.Poll.OneDay" = "يومٌ واحِد"; "Scene.Compose.Poll.OneHour" = "ساعةٌ واحدة"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict index c2f641720..dddba5132 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict @@ -109,7 +109,7 @@ NSStringFormatValueTypeKey ld zero - لا منشور + لا مَنشورات one منشورٌ واحِد two @@ -447,13 +447,13 @@ zero تتبقى لَحظة one - تتبقى ثانية + تتبقى ثانية واحِدة two - تتبقى ثانيتين + تتبقى ثانيتان few تتبقى %ld ثوان many - تتبقى %ld ثانيةً + تتبقى %ld ثانية other تتبقى %ld ثانية diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index f22a0ff74..3c02a5010 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -283,7 +283,7 @@ carregat a Mastodon."; "Scene.Register.Input.Password.Require" = "La teva contrasenya com a mínim necessita:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Aquest nom d'usuari ja està en ús."; "Scene.Register.Input.Username.Placeholder" = "nom d'usuari"; -"Scene.Register.Title" = "Parla'ns de tu."; +"Scene.Register.Title" = "Anem a configurar-te a %@"; "Scene.Report.Content1" = "Hi ha alguna altre publicació que vulguis afegir a l'informe?"; "Scene.Report.Content2" = "Hi ha alguna cosa que els moderadors hagin de saber sobre aquest informe?"; "Scene.Report.ReportSentTitle" = "Gràcies per informar, ho investigarem."; @@ -328,10 +328,10 @@ carregat a Mastodon."; "Scene.ServerPicker.Button.Category.Tech" = "tecnologia"; "Scene.ServerPicker.Button.SeeLess" = "Veure Menys"; "Scene.ServerPicker.Button.SeeMore" = "Veure Més"; -"Scene.ServerPicker.EmptyState.BadNetwork" = "S'ha produït un error en carregar les dades. Comprova la teva connexió a Internet."; +"Scene.ServerPicker.EmptyState.BadNetwork" = "Alguna cosa no ha anat bé en carregar les dades. Comprova la teva connexió a Internet."; "Scene.ServerPicker.EmptyState.FindingServers" = "Cercant els servidors disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "No hi ha resultats"; -"Scene.ServerPicker.Input.Placeholder" = "Troba un servidor o uneix-te al teu..."; +"Scene.ServerPicker.Input.Placeholder" = "Cerca servidors"; "Scene.ServerPicker.Label.Category" = "CATEGORIA"; "Scene.ServerPicker.Label.Language" = "LLENGUATGE"; "Scene.ServerPicker.Label.Users" = "USUARIS"; @@ -341,7 +341,7 @@ carregat a Mastodon."; "Scene.ServerRules.Button.Confirm" = "Hi estic d'acord"; "Scene.ServerRules.PrivacyPolicy" = "política de privadesa"; "Scene.ServerRules.Prompt" = "Al continuar, estàs subjecte als termes de servei i a la política de privacitat de %@."; -"Scene.ServerRules.Subtitle" = "Aquestes regles estan establertes per els administradors de %@."; +"Scene.ServerRules.Subtitle" = "Aquestes regles estan establertes i aplicades per els moderadors de %@."; "Scene.ServerRules.TermsOfService" = "termes del servei"; "Scene.ServerRules.Title" = "Algunes regles bàsiques."; "Scene.Settings.Footer.MastodonDescription" = "Mastodon és un programari de codi obert. Pots informar de problemes a GitHub a %@ (%@)"; @@ -380,7 +380,7 @@ carregat a Mastodon."; "Scene.Settings.Section.SpicyZone.Title" = "La Zona Picant"; "Scene.Settings.Title" = "Configuració"; "Scene.SuggestionAccount.FollowExplain" = "Quan segueixes algú, veuràs les seves publicacions a Inici."; -"Scene.SuggestionAccount.Title" = "Cerca Persones per Seguir"; +"Scene.SuggestionAccount.Title" = "Cerca Persones a Seguir"; "Scene.Thread.BackTitle" = "Publicació"; "Scene.Thread.Title" = "Publicació de %@"; "Scene.Welcome.GetStarted" = "Comença"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index 29845981c..7c3e16ec5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -108,7 +108,7 @@ Bitte überprüfe deine Internetverbindung."; "Common.Controls.Status.MediaContentWarning" = "Tippe irgendwo zum Anzeigen"; "Common.Controls.Status.Poll.Closed" = "Beendet"; "Common.Controls.Status.Poll.Vote" = "Abstimmen"; -"Common.Controls.Status.SensitiveContent" = "Sensitive Content"; +"Common.Controls.Status.SensitiveContent" = "NSFW-Inhalt"; "Common.Controls.Status.ShowPost" = "Beitrag anzeigen"; "Common.Controls.Status.ShowUserProfile" = "Benutzerprofil anzeigen"; "Common.Controls.Status.Tag.Email" = "E-Mail"; @@ -202,7 +202,7 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.ConfirmEmail.Subtitle" = "Wir haben gerade eine E-Mail an %@ gesendet, tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.ConfirmEmail.Title" = "Noch eine letzte Sache."; -"Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; +"Scene.Discovery.Intro" = "Dies sind die Beiträge, die in deiner Umgebung auf Mastodon beliebter werden."; "Scene.Discovery.Tabs.Community" = "Community"; "Scene.Discovery.Tabs.ForYou" = "Für dich"; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; @@ -389,5 +389,5 @@ beliebigen Server."; "Scene.Welcome.LogIn" = "Anmelden"; "Scene.Welcome.Slogan" = "Soziale Netzwerke wieder in deinen Händen."; "Scene.Wizard.AccessibilityHint" = "Doppeltippen, um diesen Assistenten zu schließen"; -"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Wechsel zwischen mehreren Konten durch drücken der Profil-Schaltfläche."; +"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Wechsel zwischen mehreren Konten durch Drücken der Profil-Schaltfläche."; "Scene.Wizard.NewInMastodon" = "Neu in Mastodon"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings index db6cacc37..af5d453b7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings @@ -203,7 +203,7 @@ y no se puede subir a Mastodon."; pulsá en el enlace para confirmar tu cuenta."; "Scene.ConfirmEmail.Title" = "Una última cosa."; "Scene.Discovery.Intro" = "Estos son los mensajes que están ganando tracción en tu rincón de Mastodon."; -"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Tabs.Community" = "Comunidad"; "Scene.Discovery.Tabs.ForYou" = "Para vos"; "Scene.Discovery.Tabs.Hashtags" = "Etiquetas"; "Scene.Discovery.Tabs.News" = "Novedades"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings index 586258e5a..d14d7acd3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings @@ -203,7 +203,7 @@ a luchdadh suas gu Mastodon."; thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.ConfirmEmail.Title" = "Aon rud eile."; "Scene.Discovery.Intro" = "Seo na postaichean fèillmhor ’nad cheàrnaidh de Mhastodon."; -"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Tabs.Community" = "Coimhearsnachd"; "Scene.Discovery.Tabs.ForYou" = "Dhut-sa"; "Scene.Discovery.Tabs.Hashtags" = "Tagaichean hais"; "Scene.Discovery.Tabs.News" = "Naidheachdan"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings index a0a33a58f..35fe4066d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings @@ -129,26 +129,26 @@ Comproba a conexión a internet."; "Common.Controls.Tabs.Profile" = "Perfil"; "Common.Controls.Tabs.Search" = "Busca"; "Common.Controls.Timeline.Filtered" = "Filtrado"; -"Common.Controls.Timeline.Header.BlockedWarning" = "You can’t view this user’s profile -until they unblock you."; +"Common.Controls.Timeline.Header.BlockedWarning" = "Non podes ver o perfil desta usuaria +ata que te desbloquee."; "Common.Controls.Timeline.Header.BlockingWarning" = "Non podes ver o perfil da usuaria ata que a desbloquees. Así ven outras o teu perfil."; "Common.Controls.Timeline.Header.NoStatusFound" = "Non se atopa a publicación"; -"Common.Controls.Timeline.Header.SuspendedWarning" = "This user has been suspended."; -"Common.Controls.Timeline.Header.UserBlockedWarning" = "You can’t view %@’s profile -until they unblock you."; -"Common.Controls.Timeline.Header.UserBlockingWarning" = "You can’t view %@’s profile -until you unblock them. -Your profile looks like this to them."; -"Common.Controls.Timeline.Header.UserSuspendedWarning" = "%@’s account has been suspended."; +"Common.Controls.Timeline.Header.SuspendedWarning" = "Esta usuaria foi suspendida."; +"Common.Controls.Timeline.Header.UserBlockedWarning" = "Non podes ver o perfil de %@ +ata que te desbloquee."; +"Common.Controls.Timeline.Header.UserBlockingWarning" = "Non podes ver o perfil de %@ +ata que o desbloquees. +Así se ve o teu perfil."; +"Common.Controls.Timeline.Header.UserSuspendedWarning" = "A conta de %@ foi suspendida."; "Common.Controls.Timeline.Loader.LoadMissingPosts" = "Cargar publicacións que faltan"; "Common.Controls.Timeline.Loader.LoadingMissingPosts" = "Cargando as publicacións que faltan..."; "Common.Controls.Timeline.Loader.ShowMoreReplies" = "Mostrar máis respostas"; "Common.Controls.Timeline.Timestamp.Now" = "Agora"; -"Scene.AccountList.AddAccount" = "Add Account"; -"Scene.AccountList.DismissAccountSwitcher" = "Dismiss Account Switcher"; -"Scene.AccountList.TabBarHint" = "Current selected profile: %@. Double tap then hold to show account switcher"; +"Scene.AccountList.AddAccount" = "Engadir conta"; +"Scene.AccountList.DismissAccountSwitcher" = "Desbotar intercambiador de contas"; +"Scene.AccountList.TabBarHint" = "Perfil seleccionado: %@. Dobre toque e manter para mostrar o intercambiador de contas"; "Scene.Compose.Accessibility.AppendAttachment" = "Engadir anexo"; "Scene.Compose.Accessibility.AppendPoll" = "Engadir enquisa"; "Scene.Compose.Accessibility.CustomEmojiPicker" = "Selector emoji personalizado"; @@ -156,15 +156,15 @@ Your profile looks like this to them."; "Scene.Compose.Accessibility.EnableContentWarning" = "Marcar con Aviso sobre o contido"; "Scene.Compose.Accessibility.PostVisibilityMenu" = "Visibilidade da publicación"; "Scene.Compose.Accessibility.RemovePoll" = "Eliminar enquisa"; -"Scene.Compose.Attachment.AttachmentBroken" = "This %@ is broken and can’t be -uploaded to Mastodon."; -"Scene.Compose.Attachment.DescriptionPhoto" = "Describe the photo for the visually-impaired..."; -"Scene.Compose.Attachment.DescriptionVideo" = "Describe the video for the visually-impaired..."; -"Scene.Compose.Attachment.Photo" = "photo"; -"Scene.Compose.Attachment.Video" = "video"; +"Scene.Compose.Attachment.AttachmentBroken" = "Este %@ está estragado e non pode +ser subido a Mastodon."; +"Scene.Compose.Attachment.DescriptionPhoto" = "Describe a foto para persoas con problemas visuais..."; +"Scene.Compose.Attachment.DescriptionVideo" = "Describe o vídeo para persoas con problemas visuais..."; +"Scene.Compose.Attachment.Photo" = "foto"; +"Scene.Compose.Attachment.Video" = "vídeo"; "Scene.Compose.AutoComplete.SpaceToAdd" = "Barra de espazo engade"; -"Scene.Compose.ComposeAction" = "Publish"; -"Scene.Compose.ContentInputPlaceholder" = "Type or paste what’s on your mind"; +"Scene.Compose.ComposeAction" = "Publicar"; +"Scene.Compose.ContentInputPlaceholder" = "Escribe o que che apeteza"; "Scene.Compose.ContentWarning.Placeholder" = "Escribe o teu aviso aquí..."; "Scene.Compose.Keyboard.AppendAttachmentEntry" = "Engadir anexo - %@"; "Scene.Compose.Keyboard.DiscardPost" = "Descartar publicación"; @@ -172,59 +172,59 @@ uploaded to Mastodon."; "Scene.Compose.Keyboard.SelectVisibilityEntry" = "Elexir visibilidade - %@"; "Scene.Compose.Keyboard.ToggleContentWarning" = "Marcar con Aviso sobre o contido"; "Scene.Compose.Keyboard.TogglePoll" = "Activar enquisa"; -"Scene.Compose.MediaSelection.Browse" = "Browse"; -"Scene.Compose.MediaSelection.Camera" = "Take Photo"; -"Scene.Compose.MediaSelection.PhotoLibrary" = "Photo Library"; -"Scene.Compose.Poll.DurationTime" = "Duration: %@"; +"Scene.Compose.MediaSelection.Browse" = "Explorar"; +"Scene.Compose.MediaSelection.Camera" = "Facer foto"; +"Scene.Compose.MediaSelection.PhotoLibrary" = "Biblioteca de fotos"; +"Scene.Compose.Poll.DurationTime" = "Duración: %@"; "Scene.Compose.Poll.OneDay" = "1 Día"; -"Scene.Compose.Poll.OneHour" = "1 Hour"; +"Scene.Compose.Poll.OneHour" = "1 Hora"; "Scene.Compose.Poll.OptionNumber" = "Opción %ld"; "Scene.Compose.Poll.SevenDays" = "7 Días"; -"Scene.Compose.Poll.SixHours" = "6 Hours"; -"Scene.Compose.Poll.ThirtyMinutes" = "30 minutes"; +"Scene.Compose.Poll.SixHours" = "6 Horas"; +"Scene.Compose.Poll.ThirtyMinutes" = "30 minutos"; "Scene.Compose.Poll.ThreeDays" = "3 Días"; -"Scene.Compose.ReplyingToUser" = "replying to %@"; -"Scene.Compose.Title.NewPost" = "New Post"; -"Scene.Compose.Title.NewReply" = "New Reply"; +"Scene.Compose.ReplyingToUser" = "en resposta a %@"; +"Scene.Compose.Title.NewPost" = "Nova publicación"; +"Scene.Compose.Title.NewReply" = "Nova resposta"; "Scene.Compose.Visibility.Direct" = "Só para persoas mencionadas"; "Scene.Compose.Visibility.Private" = "Só para seguidoras"; "Scene.Compose.Visibility.Public" = "Público"; "Scene.Compose.Visibility.Unlisted" = "Non listado"; -"Scene.ConfirmEmail.Button.OpenEmailApp" = "Open Email App"; -"Scene.ConfirmEmail.Button.Resend" = "Resend"; -"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Check if your email address is correct as well as your junk folder if you haven’t."; -"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Resend Email"; -"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Check your email"; -"Scene.ConfirmEmail.OpenEmailApp.Description" = "We just sent you an email. Check your junk folder if you haven’t."; -"Scene.ConfirmEmail.OpenEmailApp.Mail" = "Mail"; -"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Open Email Client"; -"Scene.ConfirmEmail.OpenEmailApp.Title" = "Check your inbox."; -"Scene.ConfirmEmail.Subtitle" = "Tap the link we emailed to you to verify your account."; -"Scene.ConfirmEmail.Title" = "One last thing."; -"Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; +"Scene.ConfirmEmail.Button.OpenEmailApp" = "Abrir app de email"; +"Scene.ConfirmEmail.Button.Resend" = "Reenviar"; +"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Comproba que o enderezo de email é correcto e que non vaia directo ao cartafol de spam."; +"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Volver enviar o correo"; +"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Revisa o teu correo"; +"Scene.ConfirmEmail.OpenEmailApp.Description" = "Enviámosche un email. Se non aparece, mira no cartafol do lixo."; +"Scene.ConfirmEmail.OpenEmailApp.Mail" = "Correo"; +"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Abrir cliente de email"; +"Scene.ConfirmEmail.OpenEmailApp.Title" = "Mira na caixa de correo."; +"Scene.ConfirmEmail.Subtitle" = "Preme na ligazón que che enviamos ao email para verificar a conta."; +"Scene.ConfirmEmail.Title" = "O último detalle."; +"Scene.Discovery.Intro" = "Estas son as publicacións en voga no teu recuncho de Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunidade"; -"Scene.Discovery.Tabs.ForYou" = "For You"; +"Scene.Discovery.Tabs.ForYou" = "Para ti"; "Scene.Discovery.Tabs.Hashtags" = "Cancelos"; "Scene.Discovery.Tabs.News" = "Novas"; "Scene.Discovery.Tabs.Posts" = "Publicacións"; -"Scene.Favorite.Title" = "Your Favorites"; +"Scene.Favorite.Title" = "Publicacións Favoritas"; "Scene.Follower.Footer" = "Non se mostran seguidoras desde outros servidores."; "Scene.Following.Footer" = "Non se mostran os seguimentos desde outros servidores."; -"Scene.HomeTimeline.NavigationBarState.NewPosts" = "See new posts"; -"Scene.HomeTimeline.NavigationBarState.Offline" = "Offline"; -"Scene.HomeTimeline.NavigationBarState.Published" = "Published!"; -"Scene.HomeTimeline.NavigationBarState.Publishing" = "Publishing post..."; -"Scene.HomeTimeline.Title" = "Home"; -"Scene.Notification.Keyobard.ShowEverything" = "Show Everything"; -"Scene.Notification.Keyobard.ShowMentions" = "Show Mentions"; -"Scene.Notification.NotificationDescription.FavoritedYourPost" = "favorited your post"; -"Scene.Notification.NotificationDescription.FollowedYou" = "followed you"; -"Scene.Notification.NotificationDescription.MentionedYou" = "mentioned you"; -"Scene.Notification.NotificationDescription.PollHasEnded" = "poll has ended"; -"Scene.Notification.NotificationDescription.RebloggedYourPost" = "reblogged your post"; -"Scene.Notification.NotificationDescription.RequestToFollowYou" = "request to follow you"; -"Scene.Notification.Title.Everything" = "Everything"; -"Scene.Notification.Title.Mentions" = "Mentions"; +"Scene.HomeTimeline.NavigationBarState.NewPosts" = "Novas publicacións"; +"Scene.HomeTimeline.NavigationBarState.Offline" = "Sen conexión"; +"Scene.HomeTimeline.NavigationBarState.Published" = "Publicado!"; +"Scene.HomeTimeline.NavigationBarState.Publishing" = "Publicando..."; +"Scene.HomeTimeline.Title" = "Inicio"; +"Scene.Notification.Keyobard.ShowEverything" = "Mostrar Todo"; +"Scene.Notification.Keyobard.ShowMentions" = "Mostrar mencións"; +"Scene.Notification.NotificationDescription.FavoritedYourPost" = "marcou a túa publicación como favorita"; +"Scene.Notification.NotificationDescription.FollowedYou" = "séguete"; +"Scene.Notification.NotificationDescription.MentionedYou" = "mencionoute"; +"Scene.Notification.NotificationDescription.PollHasEnded" = "a enquisa rematou"; +"Scene.Notification.NotificationDescription.RebloggedYourPost" = "compartiu a túa publicación"; +"Scene.Notification.NotificationDescription.RequestToFollowYou" = "solicitou seguirte"; +"Scene.Notification.Title.Everything" = "Todo"; +"Scene.Notification.Title.Mentions" = "Mencións"; "Scene.Preview.Keyboard.ClosePreview" = "Pechar vista previa"; "Scene.Preview.Keyboard.ShowNext" = "Mostrar Seguinte"; "Scene.Preview.Keyboard.ShowPrevious" = "Mostar Anterior"; @@ -267,10 +267,10 @@ uploaded to Mastodon."; "Scene.Register.Error.Reason.TooLong" = "%@ é demasiado longo"; "Scene.Register.Error.Reason.TooShort" = "%@ é demasiado curto"; "Scene.Register.Error.Reason.Unreachable" = "%@ semella que non existe"; -"Scene.Register.Error.Special.EmailInvalid" = "This is not a valid email address"; -"Scene.Register.Error.Special.PasswordTooShort" = "Password is too short (must be at least 8 characters)"; +"Scene.Register.Error.Special.EmailInvalid" = "Este non é un enderezo válido de email"; +"Scene.Register.Error.Special.PasswordTooShort" = "O contrasinal é demasiado curto (debe ter 8 caracteres como mínimo)"; "Scene.Register.Error.Special.UsernameInvalid" = "O nome de usuaria só pode ter caracteres alfanuméricos e trazos baixos"; -"Scene.Register.Error.Special.UsernameTooLong" = "Username is too long (can’t be longer than 30 characters)"; +"Scene.Register.Error.Special.UsernameTooLong" = "O nome de usuaria é demasiado longo (maior de 30 caracteres)"; "Scene.Register.Input.Avatar.Delete" = "Eliminar"; "Scene.Register.Input.DisplayName.Placeholder" = "nome público"; "Scene.Register.Input.Email.Placeholder" = "email"; @@ -338,55 +338,55 @@ uploaded to Mastodon."; "Scene.ServerPicker.Subtitle" = "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral."; "Scene.ServerPicker.SubtitleExtend" = "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral. Cada comunidade está xestionada por unha organización totalmente independente ou unha única persoa."; "Scene.ServerPicker.Title" = "Mastodon fórmano as persoas das diferentes comunidades."; -"Scene.ServerRules.Button.Confirm" = "I Agree"; -"Scene.ServerRules.PrivacyPolicy" = "privacy policy"; -"Scene.ServerRules.Prompt" = "By continuing, you’re subject to the terms of service and privacy policy for %@."; -"Scene.ServerRules.Subtitle" = "These are set and enforced by the %@ moderators."; -"Scene.ServerRules.TermsOfService" = "terms of service"; -"Scene.ServerRules.Title" = "Some ground rules."; -"Scene.Settings.Footer.MastodonDescription" = "Mastodon is open source software. You can report issues on GitHub at %@ (%@)"; -"Scene.Settings.Keyboard.CloseSettingsWindow" = "Close Settings Window"; -"Scene.Settings.Section.Appearance.Automatic" = "Automatic"; -"Scene.Settings.Section.Appearance.Dark" = "Always Dark"; -"Scene.Settings.Section.Appearance.Light" = "Always Light"; -"Scene.Settings.Section.Appearance.Title" = "Appearance"; -"Scene.Settings.Section.BoringZone.AccountSettings" = "Account Settings"; -"Scene.Settings.Section.BoringZone.Privacy" = "Privacy Policy"; -"Scene.Settings.Section.BoringZone.Terms" = "Terms of Service"; -"Scene.Settings.Section.BoringZone.Title" = "The Boring Zone"; -"Scene.Settings.Section.LookAndFeel.Light" = "Light"; -"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Really Dark"; -"Scene.Settings.Section.LookAndFeel.SortaDark" = "Sorta Dark"; -"Scene.Settings.Section.LookAndFeel.Title" = "Look and Feel"; -"Scene.Settings.Section.LookAndFeel.UseSystem" = "Use System"; -"Scene.Settings.Section.Notifications.Boosts" = "Reblogs my post"; -"Scene.Settings.Section.Notifications.Favorites" = "Favorites my post"; -"Scene.Settings.Section.Notifications.Follows" = "Follows me"; -"Scene.Settings.Section.Notifications.Mentions" = "Mentions me"; -"Scene.Settings.Section.Notifications.Title" = "Notifications"; -"Scene.Settings.Section.Notifications.Trigger.Anyone" = "anyone"; -"Scene.Settings.Section.Notifications.Trigger.Follow" = "anyone I follow"; -"Scene.Settings.Section.Notifications.Trigger.Follower" = "a follower"; -"Scene.Settings.Section.Notifications.Trigger.Noone" = "no one"; -"Scene.Settings.Section.Notifications.Trigger.Title" = "Notify me when"; -"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Disable animated avatars"; -"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Disable animated emojis"; -"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Open links in Mastodon"; -"Scene.Settings.Section.Preference.Title" = "Preferences"; -"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "True black dark mode"; -"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Use default browser to open links"; -"Scene.Settings.Section.SpicyZone.Clear" = "Clear Media Cache"; -"Scene.Settings.Section.SpicyZone.Signout" = "Sign Out"; -"Scene.Settings.Section.SpicyZone.Title" = "The Spicy Zone"; -"Scene.Settings.Title" = "Settings"; -"Scene.SuggestionAccount.FollowExplain" = "When you follow someone, you’ll see their posts in your home feed."; -"Scene.SuggestionAccount.Title" = "Find People to Follow"; -"Scene.Thread.BackTitle" = "Post"; -"Scene.Thread.Title" = "Post from %@"; +"Scene.ServerRules.Button.Confirm" = "Acepto"; +"Scene.ServerRules.PrivacyPolicy" = "polícica de privacidade"; +"Scene.ServerRules.Prompt" = "Ao continuar, acatas os termos do servizo e a política de privacidade para %@."; +"Scene.ServerRules.Subtitle" = "Son establecidas e aplicadas pola moderación de %@."; +"Scene.ServerRules.TermsOfService" = "termos do servizo"; +"Scene.ServerRules.Title" = "Algunhas regras básicas."; +"Scene.Settings.Footer.MastodonDescription" = "Mastodon é software de código aberto. Podes informar de fallos en GitHub en %@ (%@)"; +"Scene.Settings.Keyboard.CloseSettingsWindow" = "Pechar ventá de axustes"; +"Scene.Settings.Section.Appearance.Automatic" = "Automático"; +"Scene.Settings.Section.Appearance.Dark" = "Sempre escuro"; +"Scene.Settings.Section.Appearance.Light" = "Sempre claro"; +"Scene.Settings.Section.Appearance.Title" = "Aparencia"; +"Scene.Settings.Section.BoringZone.AccountSettings" = "Axustes da conta"; +"Scene.Settings.Section.BoringZone.Privacy" = "Política de Privacidade"; +"Scene.Settings.Section.BoringZone.Terms" = "Termos do Servizo"; +"Scene.Settings.Section.BoringZone.Title" = "A zona aburrida"; +"Scene.Settings.Section.LookAndFeel.Light" = "Claro"; +"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Realmente escuro"; +"Scene.Settings.Section.LookAndFeel.SortaDark" = "Algo escuro"; +"Scene.Settings.Section.LookAndFeel.Title" = "Aparencia"; +"Scene.Settings.Section.LookAndFeel.UseSystem" = "Seguir o sistema"; +"Scene.Settings.Section.Notifications.Boosts" = "Promove a miña publicación"; +"Scene.Settings.Section.Notifications.Favorites" = "Favorece a miña publicación"; +"Scene.Settings.Section.Notifications.Follows" = "Me segue"; +"Scene.Settings.Section.Notifications.Mentions" = "Me menciona"; +"Scene.Settings.Section.Notifications.Title" = "Notificacións"; +"Scene.Settings.Section.Notifications.Trigger.Anyone" = "calquera"; +"Scene.Settings.Section.Notifications.Trigger.Follow" = "alguén a quen sigo"; +"Scene.Settings.Section.Notifications.Trigger.Follower" = "unha seguidora"; +"Scene.Settings.Section.Notifications.Trigger.Noone" = "ninguén"; +"Scene.Settings.Section.Notifications.Trigger.Title" = "Avisarme cando"; +"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Desactivar avatares animados"; +"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Desactivar emojis animados"; +"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Abrir ligazóns en Mastodon"; +"Scene.Settings.Section.Preference.Title" = "Preferencias"; +"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "Modo negro verdadeiro"; +"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Usar navegador por defecto para as ligazóns"; +"Scene.Settings.Section.SpicyZone.Clear" = "Limpar caché multimedia"; +"Scene.Settings.Section.SpicyZone.Signout" = "Pechar sesión"; +"Scene.Settings.Section.SpicyZone.Title" = "A zona picante"; +"Scene.Settings.Title" = "Axustes"; +"Scene.SuggestionAccount.FollowExplain" = "Cando sigas a alguén verás as súas publicacións na cronoloxía de inicio."; +"Scene.SuggestionAccount.Title" = "Atopar persoas para seguir"; +"Scene.Thread.BackTitle" = "Publicación"; +"Scene.Thread.Title" = "Publicación de %@"; "Scene.Welcome.GetStarted" = "Comezar"; "Scene.Welcome.LogIn" = "Acceder"; -"Scene.Welcome.Slogan" = "Social networking -back in your hands."; -"Scene.Wizard.AccessibilityHint" = "Double tap to dismiss this wizard"; -"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Switch between multiple accounts by holding the profile button."; -"Scene.Wizard.NewInMastodon" = "New in Mastodon"; \ No newline at end of file +"Scene.Welcome.Slogan" = "Comunicación social +de volta ás túas mans."; +"Scene.Wizard.AccessibilityHint" = "Dobre toque para desbotar este asistente"; +"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Cambia dunha conta a outra mantendo preso o botón do perfil."; +"Scene.Wizard.NewInMastodon" = "Novidade en Mastodon"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict index 503ff9dbd..a67c938ab 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey ld one - 1 unread notification + 1 notificación non lida other - %ld unread notification + %ld notificacións non lidas a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + O límite supera %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -29,15 +29,15 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 caracter other - %ld characters + %ld caracteres a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + O límite de entrada mantense en %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -45,9 +45,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 caracter other - %ld characters + %ld caracteres plural.count.metric_formatted.post @@ -61,9 +61,9 @@ NSStringFormatValueTypeKey ld one - post + publicación other - posts + publicacións plural.count.post @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 post + 1 publicación other - %ld posts + %ld publicacións plural.count.favorite @@ -93,9 +93,9 @@ NSStringFormatValueTypeKey ld one - 1 favorite + 1 favorito other - %ld favorites + %ld favoritos plural.count.reblog @@ -109,9 +109,9 @@ NSStringFormatValueTypeKey ld one - 1 reblog + 1 promoción other - %ld reblogs + %ld promocións plural.count.reply @@ -125,9 +125,9 @@ NSStringFormatValueTypeKey ld one - 1 reply + 1 resposta other - %ld replies + %ld respostas plural.count.vote @@ -141,9 +141,9 @@ NSStringFormatValueTypeKey ld one - 1 vote + 1 voto other - %ld votes + %ld votos plural.count.voter @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 voter + 1 votante other - %ld voters + %ld votantes plural.people_talking @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 people talking + 1 persoa comentando other - %ld people talking + %ld persoas comentando plural.count.following @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 following + 1 seguimento other - %ld following + %ld seguimentos plural.count.follower @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 seguidora other - %ld followers + %ld seguidoras date.year.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + Queda 1 ano other - %ld years left + Quedan %ld anos date.month.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + Queda 1 mes other - %ld months left + Quedan %ld meses date.day.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + Queda 1 día other - %ld days left + Quedan %ld días date.hour.left @@ -269,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + Queda 1 hora other - %ld hours left + Quedan %ld horas date.minute.left @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + Queda 1 minuto other - %ld minutes left + Quedan %ld minutos date.second.left @@ -301,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1 second left + Queda 1 segundo other - %ld seconds left + Quedan %ld segundos date.year.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + hai 1 ano other - %ldy ago + hai %ld anos date.month.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1M ago + hai 1 mes other - %ldM ago + hai %ld meses date.day.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + hai 1 día other - %ldd ago + hai %ld días date.hour.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + fai 1 hora other - %ldh ago + fai %ld horas date.minute.ago.abbr @@ -381,9 +381,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + fai 1 minuto other - %ldm ago + fai %ld minutos date.second.ago.abbr @@ -397,9 +397,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + fai 1 seg. other - %lds ago + fai %ld seg. diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings index 19056cf5a..015a88551 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings @@ -4,8 +4,8 @@ "Common.Alerts.CleanCache.Title" = "キャッシュを消去"; "Common.Alerts.Common.PleaseTryAgain" = "もう一度お試しください。"; "Common.Alerts.Common.PleaseTryAgainLater" = "後でもう一度お試しください。"; -"Common.Alerts.DeletePost.Message" = "本当に削除しますか?"; -"Common.Alerts.DeletePost.Title" = "この投稿を消去しますか?"; +"Common.Alerts.DeletePost.Message" = "本当にこの投稿を削除しますか?"; +"Common.Alerts.DeletePost.Title" = "投稿を削除"; "Common.Alerts.DiscardPostContent.Message" = "この操作は取り消しできません。下書きは失われます。"; "Common.Alerts.DiscardPostContent.Title" = "投稿を破棄しますか?"; "Common.Alerts.EditProfileFailure.Message" = "プロフィールを編集できません。もう一度お試しください。"; @@ -32,13 +32,13 @@ "Common.Controls.Actions.Confirm" = "確認"; "Common.Controls.Actions.Continue" = "続ける"; "Common.Controls.Actions.CopyPhoto" = "写真をコピー"; -"Common.Controls.Actions.Delete" = "消去"; +"Common.Controls.Actions.Delete" = "削除"; "Common.Controls.Actions.Discard" = "破棄"; "Common.Controls.Actions.Done" = "完了"; "Common.Controls.Actions.Edit" = "編集"; "Common.Controls.Actions.FindPeople" = "フォローする人を見つける"; "Common.Controls.Actions.ManuallySearch" = "手動で検索する"; -"Common.Controls.Actions.Next" = "次"; +"Common.Controls.Actions.Next" = "次へ"; "Common.Controls.Actions.Ok" = "OK"; "Common.Controls.Actions.Open" = "開く"; "Common.Controls.Actions.OpenInBrowser" = "ブラウザで開く"; @@ -98,8 +98,8 @@ "Common.Controls.Status.Actions.Menu" = "メニュー"; "Common.Controls.Status.Actions.Reblog" = "ブースト"; "Common.Controls.Status.Actions.Reply" = "返信"; -"Common.Controls.Status.Actions.ShowGif" = "Show GIF"; -"Common.Controls.Status.Actions.ShowImage" = "Show image"; +"Common.Controls.Status.Actions.ShowGif" = "GIFを表示"; +"Common.Controls.Status.Actions.ShowImage" = "画像を表示"; "Common.Controls.Status.Actions.ShowVideoPlayer" = "Show video player"; "Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tap then hold to show menu"; "Common.Controls.Status.Actions.Unfavorite" = "お気に入り登録を取り消す"; @@ -117,7 +117,7 @@ "Common.Controls.Status.Tag.Link" = "リンク"; "Common.Controls.Status.Tag.Mention" = "メンション"; "Common.Controls.Status.Tag.Url" = "URL"; -"Common.Controls.Status.TapToReveal" = "Tap to reveal"; +"Common.Controls.Status.TapToReveal" = "タップして表示"; "Common.Controls.Status.UserReblogged" = "%@がブースト"; "Common.Controls.Status.UserRepliedTo" = "%@に返信"; "Common.Controls.Status.Visibility.Direct" = "この投稿はメンションされたユーザーに限り見ることができます。"; @@ -196,9 +196,9 @@ "Scene.ConfirmEmail.OpenEmailApp.Title" = "メールを確認"; "Scene.ConfirmEmail.Subtitle" = "先程 %@ にメールを送信しました。リンクをタップしてアカウントを確認してください。"; "Scene.ConfirmEmail.Title" = "さいごにもうひとつ。"; -"Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; -"Scene.Discovery.Tabs.Community" = "Community"; -"Scene.Discovery.Tabs.ForYou" = "For You"; +"Scene.Discovery.Intro" = "あなたのMastodonサーバーで注目を集めている投稿がここに表示されます。"; +"Scene.Discovery.Tabs.Community" = "コミュニティ"; +"Scene.Discovery.Tabs.ForYou" = "おすすめ"; "Scene.Discovery.Tabs.Hashtags" = "ハッシュタグ"; "Scene.Discovery.Tabs.News" = "ニュース"; "Scene.Discovery.Tabs.Posts" = "投稿"; @@ -212,12 +212,12 @@ "Scene.HomeTimeline.Title" = "ホーム"; "Scene.Notification.Keyobard.ShowEverything" = "すべて見る"; "Scene.Notification.Keyobard.ShowMentions" = "メンションを見る"; -"Scene.Notification.NotificationDescription.FavoritedYourPost" = "favorited your post"; -"Scene.Notification.NotificationDescription.FollowedYou" = "followed you"; -"Scene.Notification.NotificationDescription.MentionedYou" = "mentioned you"; -"Scene.Notification.NotificationDescription.PollHasEnded" = "poll has ended"; -"Scene.Notification.NotificationDescription.RebloggedYourPost" = "reblogged your post"; -"Scene.Notification.NotificationDescription.RequestToFollowYou" = "request to follow you"; +"Scene.Notification.NotificationDescription.FavoritedYourPost" = "さんがあなたの投稿をお気に入りに登録しました"; +"Scene.Notification.NotificationDescription.FollowedYou" = "さんにフォローされました"; +"Scene.Notification.NotificationDescription.MentionedYou" = "さんがあなたに返信しました"; +"Scene.Notification.NotificationDescription.PollHasEnded" = "アンケートが終了しました"; +"Scene.Notification.NotificationDescription.RebloggedYourPost" = "さんがあなたの投稿をブーストしました"; +"Scene.Notification.NotificationDescription.RequestToFollowYou" = "さんがあなたにフォローリクエストしました"; "Scene.Notification.Title.Everything" = "すべて"; "Scene.Notification.Title.Mentions" = "メンション"; "Scene.Preview.Keyboard.ClosePreview" = "プレビューを閉じる"; @@ -266,7 +266,7 @@ "Scene.Register.Error.Special.PasswordTooShort" = "パスワードが短すぎます(8文字以上)"; "Scene.Register.Error.Special.UsernameInvalid" = "ユーザーネームには、英数字とアンダースコアのみを使用してください。"; "Scene.Register.Error.Special.UsernameTooLong" = "ユーザー名が長すぎます(30文字以内)"; -"Scene.Register.Input.Avatar.Delete" = "消去"; +"Scene.Register.Input.Avatar.Delete" = "削除"; "Scene.Register.Input.DisplayName.Placeholder" = "表示名"; "Scene.Register.Input.Email.Placeholder" = "メール"; "Scene.Register.Input.Invite.RegistrationUserInviteRequest" = "なぜ参加したいと思ったのですか?"; @@ -349,11 +349,11 @@ "Scene.Settings.Section.BoringZone.Privacy" = "プライバシーポリシー"; "Scene.Settings.Section.BoringZone.Terms" = "利用規約"; "Scene.Settings.Section.BoringZone.Title" = "アプリについて"; -"Scene.Settings.Section.LookAndFeel.Light" = "Light"; -"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Really Dark"; -"Scene.Settings.Section.LookAndFeel.SortaDark" = "Sorta Dark"; -"Scene.Settings.Section.LookAndFeel.Title" = "Look and Feel"; -"Scene.Settings.Section.LookAndFeel.UseSystem" = "Use System"; +"Scene.Settings.Section.LookAndFeel.Light" = "ライト"; +"Scene.Settings.Section.LookAndFeel.ReallyDark" = "ブラック"; +"Scene.Settings.Section.LookAndFeel.SortaDark" = "ダーク"; +"Scene.Settings.Section.LookAndFeel.Title" = "テーマ"; +"Scene.Settings.Section.LookAndFeel.UseSystem" = "端末の設定を使う"; "Scene.Settings.Section.Notifications.Boosts" = "ブースト"; "Scene.Settings.Section.Notifications.Favorites" = "お気に入り登録"; "Scene.Settings.Section.Notifications.Follows" = "フォロー"; @@ -366,7 +366,7 @@ "Scene.Settings.Section.Notifications.Trigger.Title" = "通知を受け取る"; "Scene.Settings.Section.Preference.DisableAvatarAnimation" = "アバターのアニメーションを無効化する"; "Scene.Settings.Section.Preference.DisableEmojiAnimation" = "絵文字のアニメーションを無効化する"; -"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Open links in Mastodon"; +"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Mastodonでリンクを開く"; "Scene.Settings.Section.Preference.Title" = "環境設定"; "Scene.Settings.Section.Preference.TrueBlackDarkMode" = "真っ黒なダークテーマを使用する"; "Scene.Settings.Section.Preference.UsingDefaultBrowser" = "既定のブラウザでリンクを開く"; @@ -378,7 +378,7 @@ "Scene.SuggestionAccount.Title" = "フォローする人を探す"; "Scene.Thread.BackTitle" = "投稿"; "Scene.Thread.Title" = "%@の投稿"; -"Scene.Welcome.GetStarted" = "Get Started"; +"Scene.Welcome.GetStarted" = "はじめる"; "Scene.Welcome.LogIn" = "ログイン"; "Scene.Welcome.Slogan" = "ソーシャルネットワーキングを、あなたの手の中に."; "Scene.Wizard.AccessibilityHint" = "チュートリアルを閉じるには、ダブルタップしてください"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict index 8dfc95079..95c35172e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict @@ -153,7 +153,7 @@ NSStringFormatValueTypeKey ld other - %ld people talking + %ld人が投稿 plural.count.following diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings index 7f2e7ef48..f9c237770 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings @@ -332,14 +332,13 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.ServerPicker.EmptyState.BadNetwork" = "Di dema barkirina daneyan da çewtî derket. Girêdana xwe ya înternetê kontrol bike."; "Scene.ServerPicker.EmptyState.FindingServers" = "Peydakirina rajekarên berdest..."; "Scene.ServerPicker.EmptyState.NoResults" = "Encam tune"; -"Scene.ServerPicker.Input.Placeholder" = "Rajekarekî bibîne an jî beşdarî ya xwe bibe..."; +"Scene.ServerPicker.Input.Placeholder" = "Li rajekaran bigere"; "Scene.ServerPicker.Label.Category" = "BEŞ"; "Scene.ServerPicker.Label.Language" = "ZIMAN"; "Scene.ServerPicker.Label.Users" = "BIKARHÊNER"; "Scene.ServerPicker.Subtitle" = "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre."; "Scene.ServerPicker.SubtitleExtend" = "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre. Her civakek ji hêla rêxistinek an kesek bi tevahî serbixwe ve tê xebitandin."; -"Scene.ServerPicker.Title" = "Rajekarekê hilbijêre, -Her kîjan rajekar be."; +"Scene.ServerPicker.Title" = "Mastodon ji bikarhênerên di civakên cuda de pêk tê."; "Scene.ServerRules.Button.Confirm" = "Ez dipejirînim"; "Scene.ServerRules.PrivacyPolicy" = "polîtikaya nihêniyê"; "Scene.ServerRules.Prompt" = "Bi domandinê, tu ji bo %@ di bin mercên bikaranînê û polîtîkaya nepenîtiyê dipejirînî."; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index 1ceff03a2..ef723027d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -202,7 +202,7 @@ "Scene.ConfirmEmail.Subtitle" = "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ"; "Scene.ConfirmEmail.Title" = "หนึ่งสิ่งสุดท้าย"; "Scene.Discovery.Intro" = "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ"; -"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Tabs.Community" = "ชุมชน"; "Scene.Discovery.Tabs.ForYou" = "สำหรับคุณ"; "Scene.Discovery.Tabs.Hashtags" = "แฮชแท็ก"; "Scene.Discovery.Tabs.News" = "ข่าว"; @@ -258,7 +258,7 @@ "Scene.Register.Error.Item.Reason" = "เหตุผล"; "Scene.Register.Error.Item.Username" = "ชื่อผู้ใช้"; "Scene.Register.Error.Reason.Accepted" = "ต้องยอมรับ %@"; -"Scene.Register.Error.Reason.Blank" = "ต้องมี %@"; +"Scene.Register.Error.Reason.Blank" = "ต้องการ %@"; "Scene.Register.Error.Reason.Blocked" = "%@ มีผู้ให้บริการอีเมลที่ไม่ได้รับอนุญาต"; "Scene.Register.Error.Reason.Inclusion" = "%@ ไม่ใช่ค่าที่รองรับ"; "Scene.Register.Error.Reason.Invalid" = "%@ ไม่ถูกต้อง"; @@ -278,9 +278,9 @@ "Scene.Register.Input.Password.Accessibility.Checked" = "กาเครื่องหมายแล้ว"; "Scene.Register.Input.Password.Accessibility.Unchecked" = "ไม่ได้กาเครื่องหมาย"; "Scene.Register.Input.Password.CharacterLimit" = "8 ตัวอักษร"; -"Scene.Register.Input.Password.Hint" = "รหัสผ่านของคุณต้องมีอย่างน้อยแปดตัวอักษร"; +"Scene.Register.Input.Password.Hint" = "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อยแปดตัวอักษร"; "Scene.Register.Input.Password.Placeholder" = "รหัสผ่าน"; -"Scene.Register.Input.Password.Require" = "รหัสผ่านของคุณต้องมีอย่างน้อย:"; +"Scene.Register.Input.Password.Require" = "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:"; "Scene.Register.Input.Username.DuplicatePrompt" = "ชื่อผู้ใช้นี้ถูกใช้ไปแล้ว"; "Scene.Register.Input.Username.Placeholder" = "ชื่อผู้ใช้"; "Scene.Register.Title" = "มาตั้งค่าของคุณใน %@ กันเลย"; @@ -312,16 +312,16 @@ "Scene.Search.Searching.Segment.People" = "ผู้คน"; "Scene.Search.Searching.Segment.Posts" = "โพสต์"; "Scene.Search.Title" = "ค้นหา"; -"Scene.ServerPicker.Button.Category.Academia" = "วิชาการ"; +"Scene.ServerPicker.Button.Category.Academia" = "สถาบันการศึกษา"; "Scene.ServerPicker.Button.Category.Activism" = "กิจกรรมเพื่อการเปลี่ยนแปลง"; "Scene.ServerPicker.Button.Category.All" = "ทั้งหมด"; "Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "หมวดหมู่: ทั้งหมด"; "Scene.ServerPicker.Button.Category.Art" = "ศิลปะ"; "Scene.ServerPicker.Button.Category.Food" = "อาหาร"; -"Scene.ServerPicker.Button.Category.Furry" = "furry"; +"Scene.ServerPicker.Button.Category.Furry" = "สัตว์ขนยาว"; "Scene.ServerPicker.Button.Category.Games" = "เกม"; "Scene.ServerPicker.Button.Category.General" = "ทั่วไป"; -"Scene.ServerPicker.Button.Category.Journalism" = "การเขียนข่าว"; +"Scene.ServerPicker.Button.Category.Journalism" = "วารสารศาสตร์"; "Scene.ServerPicker.Button.Category.Lgbt" = "lgbt"; "Scene.ServerPicker.Button.Category.Music" = "ดนตรี"; "Scene.ServerPicker.Button.Category.Regional" = "ภูมิภาค"; @@ -331,13 +331,13 @@ "Scene.ServerPicker.EmptyState.BadNetwork" = "มีบางอย่างผิดพลาดขณะโหลดข้อมูล ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ"; "Scene.ServerPicker.EmptyState.FindingServers" = "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน..."; "Scene.ServerPicker.EmptyState.NoResults" = "ไม่มีผลลัพธ์"; -"Scene.ServerPicker.Input.Placeholder" = "ค้นหาชุมชน"; +"Scene.ServerPicker.Input.Placeholder" = "ค้นหาเซิร์ฟเวอร์"; "Scene.ServerPicker.Label.Category" = "หมวดหมู่"; "Scene.ServerPicker.Label.Language" = "ภาษา"; "Scene.ServerPicker.Label.Users" = "ผู้ใช้"; -"Scene.ServerPicker.Subtitle" = "เลือกชุมชนตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ"; -"Scene.ServerPicker.SubtitleExtend" = "เลือกชุมชนตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละชุมชนดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง"; -"Scene.ServerPicker.Title" = "Mastodon ประกอบด้วยผู้ใช้ในชุมชนต่าง ๆ"; +"Scene.ServerPicker.Subtitle" = "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ"; +"Scene.ServerPicker.SubtitleExtend" = "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละเซิร์ฟเวอร์ดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง"; +"Scene.ServerPicker.Title" = "Mastodon ประกอบด้วยผู้ใช้ในเซิร์ฟเวอร์ต่าง ๆ"; "Scene.ServerRules.Button.Confirm" = "ฉันเห็นด้วย"; "Scene.ServerRules.PrivacyPolicy" = "นโยบายความเป็นส่วนตัว"; "Scene.ServerRules.Prompt" = "เมื่อคุณดำเนินการต่อ คุณอยู่ภายใต้เงื่อนไขการให้บริการและนโยบายความเป็นส่วนตัวสำหรับ %@"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings index 9bee4db1a..887fa0641 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings @@ -201,7 +201,7 @@ yüklenemiyor."; "Scene.ConfirmEmail.Subtitle" = "Hesabınızı doğrulamak için size e-postayla gönderdiğimiz bağlantıya dokunun."; "Scene.ConfirmEmail.Title" = "Son bir şey."; "Scene.Discovery.Intro" = "Bunlar, Mastodon'un köşesinde ilgi çeken gönderilerdir."; -"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Tabs.Community" = "Topluluk"; "Scene.Discovery.Tabs.ForYou" = "Senin İçin"; "Scene.Discovery.Tabs.Hashtags" = "Etiketler"; "Scene.Discovery.Tabs.News" = "Haberler"; @@ -356,7 +356,7 @@ yüklenemiyor."; "Scene.Settings.Section.LookAndFeel.Light" = "Açık"; "Scene.Settings.Section.LookAndFeel.ReallyDark" = "Gerçek Koyu"; "Scene.Settings.Section.LookAndFeel.SortaDark" = "Hafif Koyu"; -"Scene.Settings.Section.LookAndFeel.Title" = "Look and Feel"; +"Scene.Settings.Section.LookAndFeel.Title" = "Görünüm"; "Scene.Settings.Section.LookAndFeel.UseSystem" = "Sistem İle Aynı"; "Scene.Settings.Section.Notifications.Boosts" = "Gönderimi yeniden paylaştığında"; "Scene.Settings.Section.Notifications.Favorites" = "Gönderimi favorilerine eklediğinde"; From 7f1b3188de8e3d4b9165ea4fea290185da8a1178 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:09:52 +0800 Subject: [PATCH 073/571] feat: add report actions --- Mastodon.xcodeproj/project.pbxproj | 102 ++++----- .../xcschemes/xcschememanagement.plist | 6 +- .../ReportResult/ReportResultView.swift | 206 ++++++++++++++++++ .../ReportResultViewController.swift | 118 +++++++--- .../ReportResultViewModel+Diffable.swift | 37 ---- .../ReportResult/ReportResultViewModel.swift | 33 ++- 6 files changed, 376 insertions(+), 126 deletions(-) create mode 100644 Mastodon/Scene/Report/ReportResult/ReportResultView.swift delete mode 100644 Mastodon/Scene/Report/ReportResult/ReportResultViewModel+Diffable.swift diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index b9105dcda..59b29381e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -410,6 +410,7 @@ DB7A9F932818F33C0016AF98 /* MastodonServerRulesViewController+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB7A9F922818F33C0016AF98 /* MastodonServerRulesViewController+Debug.swift */; }; DB7F48452620241000796008 /* ProfileHeaderViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB7F48442620241000796008 /* ProfileHeaderViewModel.swift */; }; DB8190C62601FF0400020C08 /* AttachmentContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB8190C52601FF0400020C08 /* AttachmentContainerView.swift */; }; + DB848E33282B62A800A302CC /* ReportResultView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB848E32282B62A800A302CC /* ReportResultView.swift */; }; DB852D1926FAEB6B00FC9D81 /* SidebarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB852D1826FAEB6B00FC9D81 /* SidebarViewController.swift */; }; DB852D1C26FB021500FC9D81 /* RootSplitViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB852D1B26FB021500FC9D81 /* RootSplitViewController.swift */; }; DB852D1F26FB037800FC9D81 /* SidebarViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB852D1E26FB037800FC9D81 /* SidebarViewModel.swift */; }; @@ -451,7 +452,6 @@ DB98EB6027B10E150082E365 /* ReportCommentTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB5F27B10E150082E365 /* ReportCommentTableViewCell.swift */; }; DB98EB6227B215EB0082E365 /* ReportResultViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB6127B215EB0082E365 /* ReportResultViewController.swift */; }; DB98EB6527B216500082E365 /* ReportResultViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB6427B216500082E365 /* ReportResultViewModel.swift */; }; - DB98EB6727B216560082E365 /* ReportResultViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB6627B216560082E365 /* ReportResultViewModel+Diffable.swift */; }; DB98EB6927B21A7C0082E365 /* ReportResultActionTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB6827B21A7C0082E365 /* ReportResultActionTableViewCell.swift */; }; DB98EB6B27B243470082E365 /* SettingsAppearanceTableViewCell+ViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB98EB6A27B243470082E365 /* SettingsAppearanceTableViewCell+ViewModel.swift */; }; DB9A486C26032AC1008B817C /* AttachmentContainerView+EmptyStateView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB9A486B26032AC1008B817C /* AttachmentContainerView+EmptyStateView.swift */; }; @@ -1173,6 +1173,7 @@ DB8190C52601FF0400020C08 /* AttachmentContainerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentContainerView.swift; sourceTree = ""; }; DB8481142788121200BBEABA /* MastodonRegisterTextFieldTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MastodonRegisterTextFieldTableViewCell.swift; sourceTree = ""; }; DB84811627883C2600BBEABA /* MastodonRegisterPasswordHintTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MastodonRegisterPasswordHintTableViewCell.swift; sourceTree = ""; }; + DB848E32282B62A800A302CC /* ReportResultView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportResultView.swift; sourceTree = ""; }; DB852D1826FAEB6B00FC9D81 /* SidebarViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SidebarViewController.swift; sourceTree = ""; }; DB852D1B26FB021500FC9D81 /* RootSplitViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RootSplitViewController.swift; sourceTree = ""; }; DB852D1E26FB037800FC9D81 /* SidebarViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SidebarViewModel.swift; sourceTree = ""; }; @@ -1221,7 +1222,6 @@ DB98EB5F27B10E150082E365 /* ReportCommentTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportCommentTableViewCell.swift; sourceTree = ""; }; DB98EB6127B215EB0082E365 /* ReportResultViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportResultViewController.swift; sourceTree = ""; }; DB98EB6427B216500082E365 /* ReportResultViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportResultViewModel.swift; sourceTree = ""; }; - DB98EB6627B216560082E365 /* ReportResultViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ReportResultViewModel+Diffable.swift"; sourceTree = ""; }; DB98EB6827B21A7C0082E365 /* ReportResultActionTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportResultActionTableViewCell.swift; sourceTree = ""; }; DB98EB6A27B243470082E365 /* SettingsAppearanceTableViewCell+ViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SettingsAppearanceTableViewCell+ViewModel.swift"; sourceTree = ""; }; DB9A486B26032AC1008B817C /* AttachmentContainerView+EmptyStateView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AttachmentContainerView+EmptyStateView.swift"; sourceTree = ""; }; @@ -2909,7 +2909,7 @@ children = ( DB98EB6127B215EB0082E365 /* ReportResultViewController.swift */, DB98EB6427B216500082E365 /* ReportResultViewModel.swift */, - DB98EB6627B216560082E365 /* ReportResultViewModel+Diffable.swift */, + DB848E32282B62A800A302CC /* ReportResultView.swift */, ); path = ReportResult; sourceTree = ""; @@ -3594,23 +3594,23 @@ ); mainGroup = DB427DC925BAA00100D1B89D; packageReferences = ( - DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */, + DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */, 2D61336725C18A4F00CAE157 /* XCRemoteSwiftPackageReference "AlamofireNetworkActivityIndicator" */, DB0140BB25C40D7500F9F3CF /* XCRemoteSwiftPackageReference "CommonOSLog" */, - 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */, - 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */, + 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */, + 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */, DBB525062611EAC0002F1F29 /* XCRemoteSwiftPackageReference "Tabman" */, - DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */, - DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */, - DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */, - DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */, - DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */, - DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin.git" */, - DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */, - DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */, - DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */, - DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */, - DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */, + DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */, + DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */, + DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */, + DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */, + DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */, + DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin" */, + DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */, + DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */, + DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */, + DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */, + DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */, ); productRefGroup = DB427DD325BAA00100D1B89D /* Products */; projectDirPath = ""; @@ -3951,6 +3951,7 @@ 5DDDF1932617442700311060 /* Mastodon+Entity+Account.swift in Sources */, DB63F767279A5EB300455B82 /* NotificationTimelineViewModel.swift in Sources */, 2D607AD826242FC500B70763 /* NotificationViewModel.swift in Sources */, + DB848E33282B62A800A302CC /* ReportResultView.swift in Sources */, DBABE3EC25ECAC4B00879EE5 /* WelcomeIllustrationView.swift in Sources */, DB564BD3269F3B35001E39A7 /* StatusFilterService.swift in Sources */, DB0FCB9C27980AB6006C02E2 /* HashtagTimelineViewController+DataSourceProvider.swift in Sources */, @@ -4126,7 +4127,6 @@ DB3E6FEF2806D82600B035AE /* DiscoveryNewsViewModel.swift in Sources */, DBBF1DCB2652539E00E5B703 /* AutoCompleteItem.swift in Sources */, 2DA6054725F716A2006356F9 /* PlaybackState.swift in Sources */, - DB98EB6727B216560082E365 /* ReportResultViewModel+Diffable.swift in Sources */, DBC7A672260C897100E57475 /* StatusContentWarningEditorView.swift in Sources */, DB025B95278D6530002F581E /* Persistence+MastodonUser.swift in Sources */, DB3667A6268AE2620027D07F /* ComposeStatusPollSection.swift in Sources */, @@ -5663,7 +5663,7 @@ /* End XCConfigurationList section */ /* Begin XCRemoteSwiftPackageReference section */ - 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */ = { + 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/vtourraine/ThirdPartyMailer.git"; requirement = { @@ -5679,7 +5679,7 @@ minimumVersion = 3.1.0; }; }; - 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */ = { + 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/TimOliver/TOCropViewController.git"; requirement = { @@ -5695,7 +5695,7 @@ minimumVersion = 0.1.1; }; }; - DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */ = { + DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/TwidereProject/MetaTextKit.git"; requirement = { @@ -5703,7 +5703,7 @@ version = 2.2.3; }; }; - DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin.git" */ = { + DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/kean/Nuke-FLAnimatedImage-Plugin.git"; requirement = { @@ -5711,7 +5711,7 @@ minimumVersion = 8.0.0; }; }; - DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */ = { + DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/Alamofire/AlamofireImage.git"; requirement = { @@ -5719,7 +5719,7 @@ minimumVersion = 4.1.0; }; }; - DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */ = { + DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/Alamofire/Alamofire.git"; requirement = { @@ -5727,7 +5727,7 @@ minimumVersion = 5.4.0; }; }; - DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */ = { + DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/apple/swift-collections.git"; requirement = { @@ -5735,7 +5735,7 @@ minimumVersion = 0.0.5; }; }; - DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */ = { + DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/kishikawakatsumi/KeychainAccess.git"; requirement = { @@ -5743,7 +5743,7 @@ minimumVersion = 4.2.2; }; }; - DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */ = { + DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/siteline/SwiftUI-Introspect.git"; requirement = { @@ -5751,7 +5751,7 @@ minimumVersion = 0.1.4; }; }; - DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */ = { + DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/slackhq/PanModal.git"; requirement = { @@ -5759,7 +5759,7 @@ minimumVersion = 1.2.7; }; }; - DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */ = { + DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/ra1028/DifferenceKit.git"; requirement = { @@ -5767,7 +5767,7 @@ version = 1.2.0; }; }; - DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */ = { + DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/MainasuK/DiffableDataSources.git"; requirement = { @@ -5775,7 +5775,7 @@ kind = branch; }; }; - DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */ = { + DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/cezheng/Fuzi.git"; requirement = { @@ -5791,7 +5791,7 @@ minimumVersion = 2.11.0; }; }; - DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */ = { + DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */ = { isa = XCRemoteSwiftPackageReference; repositoryURL = "https://github.com/MainasuK/FPSIndicator.git"; requirement = { @@ -5804,7 +5804,7 @@ /* Begin XCSwiftPackageProductDependency section */ 2D5981B925E4D7F8000FB903 /* ThirdPartyMailer */ = { isa = XCSwiftPackageProductDependency; - package = 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer.git" */; + package = 2D5981B825E4D7F8000FB903 /* XCRemoteSwiftPackageReference "ThirdPartyMailer" */; productName = ThirdPartyMailer; }; 2D61336825C18A4F00CAE157 /* AlamofireNetworkActivityIndicator */ = { @@ -5814,12 +5814,12 @@ }; 2D939AC725EE14620076FA61 /* CropViewController */ = { isa = XCSwiftPackageProductDependency; - package = 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController.git" */; + package = 2D939AC625EE14620076FA61 /* XCRemoteSwiftPackageReference "TOCropViewController" */; productName = CropViewController; }; DB02EA0A280D180D00E751C5 /* KeychainAccess */ = { isa = XCSwiftPackageProductDependency; - package = DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess.git" */; + package = DB6804722637CC1200430867 /* XCRemoteSwiftPackageReference "KeychainAccess" */; productName = KeychainAccess; }; DB3EA8F4281BB65200598866 /* MastodonSDK */ = { @@ -5828,17 +5828,17 @@ }; DB3EA8FB281BBAE100598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; productName = AlamofireImage; }; DB3EA8FD281BBAF200598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; productName = Alamofire; }; DB3EA8FF281BBB1D00598866 /* MetaTextKit */ = { isa = XCSwiftPackageProductDependency; - package = DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit.git" */; + package = DB01E23126A98F0900C3965B /* XCRemoteSwiftPackageReference "MetaTextKit" */; productName = MetaTextKit; }; DB3EA901281BBD5D00598866 /* CommonOSLog */ = { @@ -5848,12 +5848,12 @@ }; DB3EA903281BBD9400598866 /* Introspect */ = { isa = XCSwiftPackageProductDependency; - package = DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect.git" */; + package = DB8D8E2D28192EED009FD90F /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */; productName = Introspect; }; DB3EA905281BBE8200598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; productName = AlamofireImage; }; DB3EA907281BBE8200598866 /* AlamofireNetworkActivityIndicator */ = { @@ -5863,12 +5863,12 @@ }; DB3EA909281BBE8200598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; productName = Alamofire; }; DB3EA90B281BBE9600598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; productName = AlamofireImage; }; DB3EA90D281BBE9600598866 /* AlamofireNetworkActivityIndicator */ = { @@ -5878,42 +5878,42 @@ }; DB3EA90F281BBE9600598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; productName = Alamofire; }; DB3EA911281BBEA800598866 /* AlamofireImage */ = { isa = XCSwiftPackageProductDependency; - package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage.git" */; + package = DB3D0FF125BAA61700EAA174 /* XCRemoteSwiftPackageReference "AlamofireImage" */; productName = AlamofireImage; }; DB3EA913281BBEA800598866 /* Alamofire */ = { isa = XCSwiftPackageProductDependency; - package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire.git" */; + package = DB3EA8F6281BBA4C00598866 /* XCRemoteSwiftPackageReference "Alamofire" */; productName = Alamofire; }; DB552D4E26BBD10C00E481F6 /* OrderedCollections */ = { isa = XCSwiftPackageProductDependency; - package = DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections.git" */; + package = DB552D4D26BBD10C00E481F6 /* XCRemoteSwiftPackageReference "swift-collections" */; productName = OrderedCollections; }; DBA5A52E26F07ED800CACBAA /* PanModal */ = { isa = XCSwiftPackageProductDependency; - package = DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal.git" */; + package = DBA5A52D26F07ED800CACBAA /* XCRemoteSwiftPackageReference "PanModal" */; productName = PanModal; }; DBAC6482267D0B21007FE9FD /* DifferenceKit */ = { isa = XCSwiftPackageProductDependency; - package = DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit.git" */; + package = DBAC6481267D0B21007FE9FD /* XCRemoteSwiftPackageReference "DifferenceKit" */; productName = DifferenceKit; }; DBAC649D267DFE43007FE9FD /* DiffableDataSources */ = { isa = XCSwiftPackageProductDependency; - package = DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources.git" */; + package = DBAC649C267DFE43007FE9FD /* XCRemoteSwiftPackageReference "DiffableDataSources" */; productName = DiffableDataSources; }; DBAC64A0267E6D02007FE9FD /* Fuzi */ = { isa = XCSwiftPackageProductDependency; - package = DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi.git" */; + package = DBAC649F267E6D01007FE9FD /* XCRemoteSwiftPackageReference "Fuzi" */; productName = Fuzi; }; DBB525072611EAC0002F1F29 /* Tabman */ = { @@ -5923,7 +5923,7 @@ }; DBF7A0FB26830C33004176A2 /* FPSIndicator */ = { isa = XCSwiftPackageProductDependency; - package = DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator.git" */; + package = DBF7A0FA26830C33004176A2 /* XCRemoteSwiftPackageReference "FPSIndicator" */; productName = FPSIndicator; }; /* End XCSwiftPackageProductDependency section */ diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 3d2d4b728..66a7b7bd6 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 27 + 22 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 29 + 20 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 28 + 21 SuppressBuildableAutocreation diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift new file mode 100644 index 000000000..aa063ac2d --- /dev/null +++ b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift @@ -0,0 +1,206 @@ +// +// ReportResultView.swift +// Mastodon +// +// Created by MainasuK on 2022-5-11. +// + +import UIKit +import SwiftUI +import MastodonLocalization +import MastodonSDK +import MastodonUI +import MastodonAsset +import CoreDataStack + +struct ReportResultView: View { + + @ObservedObject var viewModel: ReportResultViewModel + + var avatarView: some View { + HStack { + Spacer() + ZStack { + AnimatedImage(imageURL: viewModel.avatarURL) + .frame(width: 106, height: 106, alignment: .center) + .background(Color(UIColor.systemFill)) + .cornerRadius(27) + Text(L10n.Scene.Report.reported) + .font(Font(FontFamily.Staatliches.regular.font(size: 49) as CTFont)) + .foregroundColor(Color(Asset.Scene.Report.reportBanner.color)) + .padding(EdgeInsets(top: 0, leading: 10, bottom: -2, trailing: 10)) + .background(Color(viewModel.backgroundColor)) + .cornerRadius(7) + .padding(7) + .background(Color(Asset.Scene.Report.reportBanner.color)) + .cornerRadius(12) + .rotationEffect(.degrees(-8)) + .offset(x: 0, y: -5) + } + Spacer() + } + .padding() + } + + // TODO: i18n + var body: some View { + ScrollView(.vertical) { + HStack { + VStack(alignment: .leading, spacing: 8) { + Text(viewModel.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) + avatarView + Text(verbatim: "While we review this, you can take action against @\(viewModel.username)") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + } + Spacer() + } + .padding() + + VStack(spacing: 32) { + // Follow + VStack(alignment: .leading, spacing: 4) { + Text("Unfollow @\(viewModel.username)") + .font(.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + ReportActionButton( + action: { + viewModel.followActionPublisher.send() + }, + title: viewModel.relationshipViewModel.isFollowing ? "Unfollow" : "Unfollowed", + isBusy: viewModel.isRequestFollow + ) + } + + // Mute + VStack(alignment: .leading, spacing: 4) { + Text("Mute @\(viewModel.username)") + .font(.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + Text(verbatim: "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) as CTFont)) + ReportActionButton( + action: { + viewModel.muteActionPublisher.send() + }, + title: viewModel.relationshipViewModel.isMuting ? L10n.Common.Controls.Friendship.muted : L10n.Common.Controls.Friendship.mute, + isBusy: viewModel.isRequestMute + ) + } + + // Block + VStack(alignment: .leading, spacing: 4) { + Text("Block @\(viewModel.username)") + .font(.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + Text(verbatim: "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) as CTFont)) + ReportActionButton( + action: { + viewModel.blockActionPublisher.send() + }, + title: viewModel.relationshipViewModel.isBlocking ? L10n.Common.Controls.Friendship.blocked : L10n.Common.Controls.Friendship.block, + isBusy: viewModel.isRequestBlock + ) + } + } + .padding() + + Spacer() + .frame(minHeight: viewModel.bottomPaddingHeight) + } + .background( + Color(viewModel.backgroundColor) + ) + } + +} + +struct ReportActionButton: View { + + var action: () -> Void + var title: String + var isBusy: Bool + + var body: some View { + Button { + action() + } label: { + ZStack { + ProgressView() + .opacity(isBusy ? 1 : 0) + Text(title) + .font(.headline) + .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .opacity(isBusy ? 0 : 1) + } + .frame(maxWidth: .infinity) + .padding() + .background(Color(UIColor.systemBackground)) + .cornerRadius(10) + .shadow(color: .black.opacity(0.1), radius: 2, x: 0, y: 1) + } + } + +} + +#if DEBUG +struct ReportResultView_Previews: PreviewProvider { + + static var viewModel: ReportResultViewModel { + let context = AppContext.shared + let request = MastodonUser.sortedFetchRequest + request.fetchLimit = 1 + + let property = MastodonUser.Property( + identifier: "1", + domain: "domain.com", + id: "1", + acct: "@user@domain.com", + username: "user", + displayName: "User", + avatar: "", + avatarStatic: "", + header: "", + headerStatic: "", + note: "", + url: "", + statusesCount: Int64(100), + followingCount: Int64(100), + followersCount: Int64(100), + locked: false, + bot: false, + suspended: false, + createdAt: Date(), + updatedAt: Date(), + emojis: [], + fields: [] + ) + let user = try! context.managedObjectContext.fetch(request).first ?? MastodonUser.insert(into: context.managedObjectContext, property: property) + + return ReportResultViewModel( + context: context, + user: .init(objectID: user.objectID) + ) + } + static var previews: some View { + Group { + NavigationView { + ReportResultView(viewModel: viewModel) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + NavigationView { + ReportResultView(viewModel: viewModel) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + .preferredColorScheme(.dark) + } + } +} +#endif diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift index 1073c21a2..957760f38 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultViewController.swift @@ -7,6 +7,7 @@ import os.log import UIKit +import SwiftUI import Combine import MastodonAsset import MastodonLocalization @@ -20,29 +21,14 @@ final class ReportResultViewController: UIViewController, NeedsDependency, Repor weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } var viewModel: ReportResultViewModel! - + private(set) lazy var reportResultView = ReportResultView(viewModel: viewModel) + lazy var doneBarButtonItem = UIBarButtonItem( barButtonSystemItem: .done, target: self, action: #selector(ReportResultViewController.doneBarButtonItemDidPressed(_:)) ) - let tableView: UITableView = { - let tableView = ControlContainableTableView() - tableView.backgroundColor = Asset.Scene.Report.background.color - tableView.rowHeight = UITableView.automaticDimension - tableView.separatorStyle = .none - tableView.backgroundColor = .clear - tableView.keyboardDismissMode = .onDrag - tableView.allowsMultipleSelection = true - if #available(iOS 15.0, *) { - tableView.sectionHeaderTopPadding = .leastNonzeroMagnitude - } else { - // Fallback on earlier versions - } - return tableView - }() - let navigationActionView: NavigationActionView = { let navigationActionView = NavigationActionView() navigationActionView.backgroundColor = Asset.Scene.Onboarding.background.color @@ -68,20 +54,18 @@ extension ReportResultViewController { navigationItem.hidesBackButton = true navigationItem.rightBarButtonItem = doneBarButtonItem - tableView.translatesAutoresizingMaskIntoConstraints = false - view.addSubview(tableView) + let hostingViewController = UIHostingController(rootView: reportResultView) + hostingViewController.view.preservesSuperviewLayoutMargins = true + addChild(hostingViewController) + hostingViewController.view.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(hostingViewController.view) NSLayoutConstraint.activate([ - tableView.topAnchor.constraint(equalTo: view.topAnchor), - tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor), - tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor), - tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor), + hostingViewController.view.topAnchor.constraint(equalTo: view.topAnchor), + hostingViewController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor), + hostingViewController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor), + hostingViewController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), ]) - tableView.delegate = self - viewModel.setupDiffableDataSource( - tableView: tableView - ) - navigationActionView.translatesAutoresizingMaskIntoConstraints = false view.addSubview(navigationActionView) defer { @@ -97,13 +81,84 @@ extension ReportResultViewController { .observe(\.bounds, options: [.initial, .new]) { [weak self] navigationActionView, _ in guard let self = self else { return } let inset = navigationActionView.frame.height - self.tableView.contentInset.bottom = inset - self.tableView.verticalScrollIndicatorInsets.bottom = inset + self.viewModel.bottomPaddingHeight = inset } .store(in: &observations) navigationActionView.nextButton.addTarget(self, action: #selector(ReportSupplementaryViewController.nextButtonDidPressed(_:)), for: .touchUpInside) + + viewModel.followActionPublisher + .throttle(for: 0.3, scheduler: DispatchQueue.main, latest: false) + .sink { [weak self] in + guard let self = self else { return } + guard let authenticationBox = self.context.authenticationService.activeMastodonAuthenticationBox.value else { + return + } + Task { @MainActor in + guard !self.viewModel.isRequestFollow else { return } + self.viewModel.isRequestFollow = true + do { + try await DataSourceFacade.responseToUserFollowAction( + dependency: self, + user: self.viewModel.user, + authenticationBox: authenticationBox + ) + } catch { + // handle error + } + self.viewModel.isRequestFollow = false + } // end Task + } + .store(in: &disposeBag) + + viewModel.muteActionPublisher + .throttle(for: 0.3, scheduler: DispatchQueue.main, latest: false) + .sink { [weak self] in + guard let self = self else { return } + guard let authenticationBox = self.context.authenticationService.activeMastodonAuthenticationBox.value else { + return + } + Task { @MainActor in + guard !self.viewModel.isRequestMute else { return } + self.viewModel.isRequestMute = true + do { + try await DataSourceFacade.responseToUserMuteAction( + dependency: self, + user: self.viewModel.user, + authenticationBox: authenticationBox + ) + } catch { + // handle error + } + self.viewModel.isRequestMute = false + } // end Task + } + .store(in: &disposeBag) + + viewModel.blockActionPublisher + .throttle(for: 0.3, scheduler: DispatchQueue.main, latest: false) + .sink { [weak self] in + guard let self = self else { return } + guard let authenticationBox = self.context.authenticationService.activeMastodonAuthenticationBox.value else { + return + } + Task { @MainActor in + guard !self.viewModel.isRequestBlock else { return } + self.viewModel.isRequestBlock = true + do { + try await DataSourceFacade.responseToUserBlockAction( + dependency: self, + user: self.viewModel.user, + authenticationBox: authenticationBox + ) + } catch { + // handle error + } + self.viewModel.isRequestBlock = false + } // end Task + } + .store(in: &disposeBag) } } @@ -120,9 +175,6 @@ extension ReportResultViewController { } -// MARK: - UITableViewDelegate -extension ReportResultViewController: UITableViewDelegate { } - // MARK: - PanPopableViewController extension ReportResultViewController: PanPopableViewController { var isPanPopable: Bool { false } diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel+Diffable.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel+Diffable.swift deleted file mode 100644 index a9c1272df..000000000 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel+Diffable.swift +++ /dev/null @@ -1,37 +0,0 @@ -// -// ReportResultViewModel+Diffable.swift -// Mastodon -// -// Created by MainasuK on 2022-2-8. -// - -import UIKit -import Combine -import CoreData -import CoreDataStack -import MastodonAsset -import MastodonLocalization - -extension ReportResultViewModel { - - static let reportItemHeaderContext = ReportItem.HeaderContext( - primaryLabelText: "Thanks for reporting, we’ll look into this.", - secondaryLabelText: "" - ) - - func setupDiffableDataSource( - tableView: UITableView - ) { - diffableDataSource = ReportSection.diffableDataSource( - tableView: tableView, - context: context, - configuration: ReportSection.Configuration() - ) - - var snapshot = NSDiffableDataSourceSnapshot() - snapshot.appendSections([.main]) - snapshot.appendItems([.header(context: ReportResultViewModel.reportItemHeaderContext)], toSection: .main) - snapshot.appendItems([.result(record: user)], toSection: .main) - diffableDataSource?.apply(snapshot) - } -} diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift index 79fec4936..8617f26f9 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift @@ -12,8 +12,10 @@ import Foundation import MastodonSDK import os.log import UIKit +import MastodonAsset +import MastodonUI -class ReportResultViewModel { +class ReportResultViewModel: ObservableObject { var disposeBag = Set() @@ -21,8 +23,22 @@ class ReportResultViewModel { let context: AppContext let user: ManagedObjectRecord + @Published var headline = "Thanks for reporting, we’ll look into this." + @Published var bottomPaddingHeight: CGFloat = .zero + @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color + + @Published var isRequestFollow = false + @Published var isRequestMute = false + @Published var isRequestBlock = false + // output - var diffableDataSource: UITableViewDiffableDataSource? + @Published var avatarURL: URL? + @Published var username: String = "" + + let relationshipViewModel = RelationshipViewModel() + let muteActionPublisher = PassthroughSubject() + let followActionPublisher = PassthroughSubject() + let blockActionPublisher = PassthroughSubject() init( context: AppContext, @@ -31,6 +47,19 @@ class ReportResultViewModel { self.context = context self.user = user // end init + + Task { @MainActor in + guard let user = user.object(in: context.managedObjectContext) else { return } + guard let me = context.authenticationService.activeMastodonAuthenticationBox.value?.authenticationRecord.object(in: context.managedObjectContext)?.user else { return } + self.relationshipViewModel.user = user + self.relationshipViewModel.me = me + + self.avatarURL = user.avatarImageURL() + self.username = user.acctWithDomain + + } // end Task } } + + From 16dc0adccd625fa479673dfb489b1dc5d2aa1d85 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:26:57 +0800 Subject: [PATCH 074/571] feat: add dislike report path --- .../Report/Report/ReportViewController.swift | 26 ++++++++++++++--- .../ReportResult/ReportResultView.swift | 28 +++++++++++++------ .../ReportResult/ReportResultViewModel.swift | 9 ++++-- 3 files changed, 49 insertions(+), 14 deletions(-) diff --git a/Mastodon/Scene/Report/Report/ReportViewController.swift b/Mastodon/Scene/Report/Report/ReportViewController.swift index 1fa8428e6..1fe1a720c 100644 --- a/Mastodon/Scene/Report/Report/ReportViewController.swift +++ b/Mastodon/Scene/Report/Report/ReportViewController.swift @@ -91,8 +91,16 @@ extension ReportViewController: ReportReasonViewControllerDelegate { guard let reason = viewController.viewModel.selectReason else { return } switch reason { case .dislike: - // TODO: - break + let reportResultViewModel = ReportResultViewModel( + context: context, + user: viewModel.user, + isReported: false + ) + coordinator.present( + scene: .reportResult(viewModel: reportResultViewModel), + from: self, + transition: .show + ) case .violateRule: coordinator.present( scene: .reportServerRules(viewModel: viewModel.reportServerRulesViewModel), @@ -113,7 +121,16 @@ extension ReportViewController: ReportReasonViewControllerDelegate { extension ReportViewController: ReportServerRulesViewControllerDelegate { func reportServerRulesViewController(_ viewController: ReportServerRulesViewController, nextButtonPressed button: UIButton) { if viewController.viewModel.isDislike { - // TODO: + let reportResultViewModel = ReportResultViewModel( + context: context, + user: viewModel.user, + isReported: false + ) + coordinator.present( + scene: .reportResult(viewModel: reportResultViewModel), + from: self, + transition: .show + ) } else if viewController.viewModel.selectRule != nil { coordinator.present( scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), @@ -163,7 +180,8 @@ extension ReportViewController: ReportSupplementaryViewControllerDelegate { let reportResultViewModel = ReportResultViewModel( context: context, - user: viewModel.user + user: viewModel.user, + isReported: true ) coordinator.present( diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift index aa063ac2d..dff87e356 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift @@ -50,10 +50,16 @@ struct ReportResultView: View { Text(viewModel.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) - avatarView - Text(verbatim: "While we review this, you can take action against @\(viewModel.username)") - .foregroundColor(Color(Asset.Colors.Label.secondary.color)) - .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + if viewModel.isReported { + avatarView + Text(verbatim: "While we review this, you can take action against @\(viewModel.username)") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + } else { + Text(verbatim: "When you see something you don’t like on Mastodon, you can remove the person from your experience.") + .foregroundColor(Color(Asset.Colors.Label.secondary.color)) + .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) + } } Spacer() } @@ -151,7 +157,7 @@ struct ReportActionButton: View { #if DEBUG struct ReportResultView_Previews: PreviewProvider { - static var viewModel: ReportResultViewModel { + static func viewModel(isReported: Bool) -> ReportResultViewModel { let context = AppContext.shared let request = MastodonUser.sortedFetchRequest request.fetchLimit = 1 @@ -184,18 +190,24 @@ struct ReportResultView_Previews: PreviewProvider { return ReportResultViewModel( context: context, - user: .init(objectID: user.objectID) + user: .init(objectID: user.objectID), + isReported: isReported ) } static var previews: some View { Group { NavigationView { - ReportResultView(viewModel: viewModel) + ReportResultView(viewModel: viewModel(isReported: true)) .navigationBarTitle(Text("")) .navigationBarTitleDisplayMode(.inline) } NavigationView { - ReportResultView(viewModel: viewModel) + ReportResultView(viewModel: viewModel(isReported: false)) + .navigationBarTitle(Text("")) + .navigationBarTitleDisplayMode(.inline) + } + NavigationView { + ReportResultView(viewModel: viewModel(isReported: true)) .navigationBarTitle(Text("")) .navigationBarTitleDisplayMode(.inline) } diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift index 8617f26f9..ea949a901 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift @@ -22,8 +22,11 @@ class ReportResultViewModel: ObservableObject { // input let context: AppContext let user: ManagedObjectRecord + let isReported: Bool - @Published var headline = "Thanks for reporting, we’ll look into this." + var headline: String { + isReported ? "Thanks for reporting, we’ll look into this." : "Don’t want to see this?" + } @Published var bottomPaddingHeight: CGFloat = .zero @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color @@ -42,10 +45,12 @@ class ReportResultViewModel: ObservableObject { init( context: AppContext, - user: ManagedObjectRecord + user: ManagedObjectRecord, + isReported: Bool ) { self.context = context self.user = user + self.isReported = isReported // end init Task { @MainActor in From 741e8d998d0f6b0e0c7443ec8c4ea6482f34e622 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:27:32 +0800 Subject: [PATCH 075/571] fix: i18n template --- Localization/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/app.json b/Localization/app.json index 44ff04de4..7ac3252f2 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -348,7 +348,7 @@ "logo_label": "Logo Button", "logo_hint": "Tap to scroll to top and tap again to previous location" } - }, + } }, "suggestion_account": { "title": "Find People to Follow", From 92f6b67a63c30178e67a047e6d3728c2c80eacc1 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:34:11 +0800 Subject: [PATCH 076/571] feat: add report i18n words --- Localization/app.json | 4 +++- .../mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Localization/app.json b/Localization/app.json index 7ac3252f2..8de2dc0b3 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -635,10 +635,12 @@ "step_final": { "dont_want_to_see_this": "Don’t want to see this?", "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", "unfollow_user": "Unfollow %s", "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "Block_domain": "Block %s", + "block_user": "Block %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." } }, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 66a7b7bd6..8e16cec2d 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 22 + 20 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 20 + 21 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 21 + 22 SuppressBuildableAutocreation From c98cb5824f206a50d7bf89888733c596184f1cfd Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:27:32 +0800 Subject: [PATCH 077/571] fix: i18n template (cherry picked from commit 741e8d998d0f6b0e0c7443ec8c4ea6482f34e622) --- Localization/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/app.json b/Localization/app.json index 44ff04de4..7ac3252f2 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -348,7 +348,7 @@ "logo_label": "Logo Button", "logo_hint": "Tap to scroll to top and tap again to previous location" } - }, + } }, "suggestion_account": { "title": "Find People to Follow", From 35d572660b13361c1222e9f9dfd9bff6761f8e81 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 16:34:11 +0800 Subject: [PATCH 078/571] feat: add report i18n words (cherry picked from commit 92f6b67a63c30178e67a047e6d3728c2c80eacc1) --- Localization/app.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Localization/app.json b/Localization/app.json index 7ac3252f2..8de2dc0b3 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -635,10 +635,12 @@ "step_final": { "dont_want_to_see_this": "Don’t want to see this?", "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", "unfollow_user": "Unfollow %s", "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "Block_domain": "Block %s", + "block_user": "Block %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." } }, From 2abb0cb0aa59d6e3c6dedf063f63a768b925a64d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:49 +0200 Subject: [PATCH 079/571] New translations app.json (Catalan) --- .../StringsConvertor/input/ca_ES/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index 9650d66c2..252eded05 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -240,7 +240,8 @@ "category": "CATEGORIA" }, "input": { - "placeholder": "Cerca servidors" + "placeholder": "Cerca servidors", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Cercant els servidors disponibles...", @@ -342,7 +343,11 @@ "offline": "Fora de línia", "new_posts": "Veure noves publicacions", "published": "Publicat!", - "Publishing": "S'està publicant..." + "Publishing": "S'està publicant...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Envia Informe", "skip_to_send": "Envia sense comentaris", "text_placeholder": "Escriu o enganxa comentaris addicionals", - "reported": "REPORTAT" + "reported": "REPORTAT", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 87c32d9ceab02b50670870a7b8820f4d477dd600 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:50 +0200 Subject: [PATCH 080/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv_SE/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index e7bdecf15..636e2193b 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -240,7 +240,8 @@ "category": "KATEGORI" }, "input": { - "placeholder": "Sök gemenskaper" + "placeholder": "Sök gemenskaper", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Söker tillgängliga servrar...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "Nya inlägg", "published": "Publicerat!", - "Publishing": "Publicerar inlägget..." + "Publishing": "Publicerar inlägget...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Skicka rapport", "skip_to_send": "Skicka utan kommentar", "text_placeholder": "Skriv eller klistra in ytterligare kommentarer", - "reported": "RAPPORTERAD" + "reported": "RAPPORTERAD", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 5cab730558959468d2e1203d4c9f0912a4b44b60 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:51 +0200 Subject: [PATCH 081/571] New translations app.json (Sorani (Kurdish)) --- .../StringsConvertor/input/ckb_IR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ckb_IR/app.json b/Localization/StringsConvertor/input/ckb_IR/app.json index de4aab374..948924317 100644 --- a/Localization/StringsConvertor/input/ckb_IR/app.json +++ b/Localization/StringsConvertor/input/ckb_IR/app.json @@ -240,7 +240,8 @@ "category": "بەش" }, "input": { - "placeholder": "بگەڕێ" + "placeholder": "بگەڕێ", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "ڕاژەکار دەدۆزرێتەوە...", @@ -342,7 +343,11 @@ "offline": "دەرهێڵ", "new_posts": "پۆستە نوێکان ببینە", "published": "بڵاوکرایەوە!", - "Publishing": "پۆستەکە بڵاو دەکرێتەوە..." + "Publishing": "پۆستەکە بڵاو دەکرێتەوە...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "سکاڵاکە بنێرە", "skip_to_send": "بەبێ لێدوان بینێرە", "text_placeholder": "ڕوونکردنەوەی زۆرتر بدە", - "reported": "سکاڵای لێ کرا" + "reported": "سکاڵای لێ کرا", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From a14c51b9e5cc5e69ad4defa4c9212e3c37462d30 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:52 +0200 Subject: [PATCH 082/571] New translations app.json (Turkish) --- .../StringsConvertor/input/tr_TR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/tr_TR/app.json b/Localization/StringsConvertor/input/tr_TR/app.json index 000f79bf0..241198c03 100644 --- a/Localization/StringsConvertor/input/tr_TR/app.json +++ b/Localization/StringsConvertor/input/tr_TR/app.json @@ -240,7 +240,8 @@ "category": "KATEGORİ" }, "input": { - "placeholder": "Toplulukları ara" + "placeholder": "Toplulukları ara", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Mevcut sunucular aranıyor...", @@ -342,7 +343,11 @@ "offline": "Çevrimdışı", "new_posts": "Yeni gönderiler gör", "published": "Yayınlandı!", - "Publishing": "Gönderi yayınlanıyor..." + "Publishing": "Gönderi yayınlanıyor...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Raporu Gönder", "skip_to_send": "Yorum yapmadan gönder", "text_placeholder": "Ek yorum yazın veya yapıştırın", - "reported": "RAPORLANDI" + "reported": "RAPORLANDI", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 4c0ce76fabe1855f944382eced4d38aa8fb51f23 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:54 +0200 Subject: [PATCH 083/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl_ES/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index 16da9abe3..9c2f3f8a3 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -240,7 +240,8 @@ "category": "CATEGORÍA" }, "input": { - "placeholder": "Buscar comunidades" + "placeholder": "Buscar comunidades", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Buscando servidores dispoñibles...", @@ -342,7 +343,11 @@ "offline": "Sen conexión", "new_posts": "Novas publicacións", "published": "Publicado!", - "Publishing": "Publicando..." + "Publishing": "Publicando...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Enviar Denuncia", "skip_to_send": "Enviar sen comentarios", "text_placeholder": "Escribe ou pega comentarios adicionais", - "reported": "DENUNCIADO" + "reported": "DENUNCIADO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 0f70b35da2b52cc64ab8c113d45b906815c8a552 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:55 +0200 Subject: [PATCH 084/571] New translations app.json (Kabyle) --- .../StringsConvertor/input/kab_KAB/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/kab_KAB/app.json b/Localization/StringsConvertor/input/kab_KAB/app.json index 1c73686be..307952939 100644 --- a/Localization/StringsConvertor/input/kab_KAB/app.json +++ b/Localization/StringsConvertor/input/kab_KAB/app.json @@ -240,7 +240,8 @@ "category": "TAGGAYT" }, "input": { - "placeholder": "Nadi timɣiwnin" + "placeholder": "Nadi timɣiwnin", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Tifin n yiqeddacen yellan...", @@ -342,7 +343,11 @@ "offline": "Beṛṛa n tuqqna", "new_posts": "Tissufaɣ timaynutin", "published": "Yettwasuffeɣ!", - "Publishing": "Asuffeɣ tasuffeɣt..." + "Publishing": "Asuffeɣ tasuffeɣt...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Azen aneqis", "skip_to_send": "Azen s war awennit", "text_placeholder": "Aru neɣ senteḍ iwenniten-nniḍen", - "reported": "YETTWAMMEL" + "reported": "YETTWAMMEL", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 05cecd0db32a1bcd232ff912c53f1e1c1e9d5c73 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:56 +0200 Subject: [PATCH 085/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr_TR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index efca992f1..d83966805 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -240,7 +240,8 @@ "category": "BEŞ" }, "input": { - "placeholder": "Li rajekaran bigere" + "placeholder": "Li rajekaran bigere", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Peydakirina rajekarên berdest...", @@ -342,7 +343,11 @@ "offline": "Derhêl", "new_posts": "Şandiyên nû bibîne", "published": "Hate weşandin!", - "Publishing": "Şandî tê weşandin..." + "Publishing": "Şandî tê weşandin...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Ragihandinê bişîne", "skip_to_send": "Bêyî şirove bişîne", "text_placeholder": "Şiroveyên daxwazkirê binivîsine an jî pê ve bike", - "reported": "HATE RAGIHANDIN" + "reported": "HATE RAGIHANDIN", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 2dac7d0c166f11e7fcaa125c0e7b4ebaedfb6a19 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:57 +0200 Subject: [PATCH 086/571] New translations app.json (Scottish Gaelic) --- .../StringsConvertor/input/gd_GB/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index e3ff7c12d..4b18ab6d7 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -240,7 +240,8 @@ "category": "ROINN-SEÒRSA" }, "input": { - "placeholder": "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…" + "placeholder": "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "A’ lorg nam frithealaichean ri am faighinn…", @@ -342,7 +343,11 @@ "offline": "Far loidhne", "new_posts": "Seall na postaichean ùra", "published": "Chaidh fhoillseachadh!", - "Publishing": "A’ foillseachadh a’ phuist…" + "Publishing": "A’ foillseachadh a’ phuist…", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Cuir an gearan", "skip_to_send": "Cuir gun bheachd ris", "text_placeholder": "Sgrìobh no cuir ann beachdan a bharrachd", - "reported": "CHAIDH GEARAN A DHÈANAMH" + "reported": "CHAIDH GEARAN A DHÈANAMH", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 753065d6fd9ff8d47531d04c7cdef910464ff4c0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:58 +0200 Subject: [PATCH 087/571] New translations app.json (Welsh) --- .../StringsConvertor/input/cy_GB/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/cy_GB/app.json b/Localization/StringsConvertor/input/cy_GB/app.json index 4d26232c5..9297b1655 100644 --- a/Localization/StringsConvertor/input/cy_GB/app.json +++ b/Localization/StringsConvertor/input/cy_GB/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From d104fd4d44fd8e873874c020acf6cb377bb5b47b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:47:59 +0200 Subject: [PATCH 088/571] New translations app.json (English, United States) --- .../StringsConvertor/input/en_US/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/en_US/app.json b/Localization/StringsConvertor/input/en_US/app.json index 50512250d..8de2dc0b3 100644 --- a/Localization/StringsConvertor/input/en_US/app.json +++ b/Localization/StringsConvertor/input/en_US/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 90c04a4efd0798d0e79fb89ee7a81d1b3ae7adc2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:02 +0200 Subject: [PATCH 089/571] New translations app.json (Hindi) --- .../StringsConvertor/input/hi_IN/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/hi_IN/app.json b/Localization/StringsConvertor/input/hi_IN/app.json index b9f992774..6bd6131b9 100644 --- a/Localization/StringsConvertor/input/hi_IN/app.json +++ b/Localization/StringsConvertor/input/hi_IN/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 634268e7c755f65198d85b70a6346df333b6d447 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:03 +0200 Subject: [PATCH 090/571] New translations app.json (Spanish, Argentina) --- .../StringsConvertor/input/es_AR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/es_AR/app.json b/Localization/StringsConvertor/input/es_AR/app.json index d5dbafd7e..e0e7bbe1c 100644 --- a/Localization/StringsConvertor/input/es_AR/app.json +++ b/Localization/StringsConvertor/input/es_AR/app.json @@ -240,7 +240,8 @@ "category": "CATEGORÍA" }, "input": { - "placeholder": "Encontrá un servidor o unite al tuyo…" + "placeholder": "Encontrá un servidor o unite al tuyo…", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Buscando servidores disponibles…", @@ -342,7 +343,11 @@ "offline": "Desconectado", "new_posts": "Ver nuevos mensajes", "published": "¡Enviado!", - "Publishing": "Enviando mensaje…" + "Publishing": "Enviando mensaje…", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Enviar denuncia", "skip_to_send": "Enviar sin comentarios", "text_placeholder": "Escribí o pegá comentarios adicionales", - "reported": "DENUNCIADA" + "reported": "DENUNCIADA", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 69bc666ec69aba44857f2a1545c95b697cc580b2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:04 +0200 Subject: [PATCH 091/571] New translations app.json (Indonesian) --- .../StringsConvertor/input/id_ID/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/id_ID/app.json b/Localization/StringsConvertor/input/id_ID/app.json index 4e75ce926..87c213af4 100644 --- a/Localization/StringsConvertor/input/id_ID/app.json +++ b/Localization/StringsConvertor/input/id_ID/app.json @@ -240,7 +240,8 @@ "category": "KATEGORI" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Mencari server yang tersedia...", @@ -342,7 +343,11 @@ "offline": "Luring", "new_posts": "Lihat postingan baru", "published": "Dipublikasikan!", - "Publishing": "Mempublikasikan postingan..." + "Publishing": "Mempublikasikan postingan...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Kirim Laporan", "skip_to_send": "Kirim tanpa komentar", "text_placeholder": "Ketik atau tempel komentar tambahan", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 7a6e2312da43496a450a7f06534c56d08fdc2697 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:05 +0200 Subject: [PATCH 092/571] New translations app.json (Portuguese, Brazilian) --- .../StringsConvertor/input/pt_BR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/pt_BR/app.json b/Localization/StringsConvertor/input/pt_BR/app.json index 778669999..5bb837935 100644 --- a/Localization/StringsConvertor/input/pt_BR/app.json +++ b/Localization/StringsConvertor/input/pt_BR/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 800a1791f3d29a7ed69dbd6f9c07e8f7b8669274 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:07 +0200 Subject: [PATCH 093/571] New translations app.json (Chinese Traditional) --- .../StringsConvertor/input/zh_TW/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/zh_TW/app.json b/Localization/StringsConvertor/input/zh_TW/app.json index 1fd5e2f00..3c2d4313e 100644 --- a/Localization/StringsConvertor/input/zh_TW/app.json +++ b/Localization/StringsConvertor/input/zh_TW/app.json @@ -240,7 +240,8 @@ "category": "分類" }, "input": { - "placeholder": "搜尋伺服器" + "placeholder": "搜尋伺服器", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "尋找可用的伺服器...", @@ -342,7 +343,11 @@ "offline": "離線", "new_posts": "檢視最新嘟文", "published": "嘟出去!", - "Publishing": "發表嘟文..." + "Publishing": "發表嘟文...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "傳送檢舉報告", "skip_to_send": "不加入備註並傳送", "text_placeholder": "請輸入或貼上額外的備註", - "reported": "已檢舉" + "reported": "已檢舉", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 35a6f5a0928800b6f7a61219adb577b01492ef14 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:08 +0200 Subject: [PATCH 094/571] New translations app.json (Portuguese) --- .../StringsConvertor/input/pt_PT/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/pt_PT/app.json b/Localization/StringsConvertor/input/pt_PT/app.json index 50512250d..8de2dc0b3 100644 --- a/Localization/StringsConvertor/input/pt_PT/app.json +++ b/Localization/StringsConvertor/input/pt_PT/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 3497a1423a0d25b0e0601dd9c412b01fb2b47643 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:09 +0200 Subject: [PATCH 095/571] New translations app.json (Italian) --- .../StringsConvertor/input/it_IT/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/it_IT/app.json b/Localization/StringsConvertor/input/it_IT/app.json index 9ba5de28c..423ebd109 100644 --- a/Localization/StringsConvertor/input/it_IT/app.json +++ b/Localization/StringsConvertor/input/it_IT/app.json @@ -240,7 +240,8 @@ "category": "CATEGORIA" }, "input": { - "placeholder": "Cerca comunità" + "placeholder": "Cerca comunità", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Ricerca server disponibili...", @@ -342,7 +343,11 @@ "offline": "Non in linea", "new_posts": "Vedi nuovi post", "published": "Pubblicato!", - "Publishing": "Pubblicazione post..." + "Publishing": "Pubblicazione post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Invia segnalazione", "skip_to_send": "Invia senza commento", "text_placeholder": "Digita o incolla commenti aggiuntivi", - "reported": "SEGNALATO" + "reported": "SEGNALATO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 95879b0478a8c945ee3640b8fff3096d66272fe8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:11 +0200 Subject: [PATCH 096/571] New translations app.json (Dutch) --- .../StringsConvertor/input/nl_NL/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/nl_NL/app.json b/Localization/StringsConvertor/input/nl_NL/app.json index aa43e8490..f21f62a95 100644 --- a/Localization/StringsConvertor/input/nl_NL/app.json +++ b/Localization/StringsConvertor/input/nl_NL/app.json @@ -240,7 +240,8 @@ "category": "CATEGORIE" }, "input": { - "placeholder": "Zoek uw server of sluit u bij een nieuwe server aan..." + "placeholder": "Zoek uw server of sluit u bij een nieuwe server aan...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Beschikbare servers zoeken...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "Bekijk nieuwe berichten", "published": "Gepubliceerd!", - "Publishing": "Bericht publiceren..." + "Publishing": "Bericht publiceren...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Stuur rapport", "skip_to_send": "Verstuur zonder opmerkingen", "text_placeholder": "Schrijf of plak aanvullende opmerkingen", - "reported": "Gerapporteerd" + "reported": "Gerapporteerd", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 4609f885a2da19b165c0631d9cf996691be578a1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:12 +0200 Subject: [PATCH 097/571] New translations app.json (Korean) --- .../StringsConvertor/input/ko_KR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ko_KR/app.json b/Localization/StringsConvertor/input/ko_KR/app.json index 294a53bb5..9d2fb90d5 100644 --- a/Localization/StringsConvertor/input/ko_KR/app.json +++ b/Localization/StringsConvertor/input/ko_KR/app.json @@ -240,7 +240,8 @@ "category": "분류" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "오프라인", "new_posts": "새 글 보기", "published": "게시됨!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "신고 전송", "skip_to_send": "추가설명 없이 보내기", "text_placeholder": "추가 설명을 적거나 붙여넣으세요", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 75cb0cad147fcc5686b5fffba2fef4fc8229d7f7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:13 +0200 Subject: [PATCH 098/571] New translations app.json (Japanese) --- .../StringsConvertor/input/ja_JP/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index eff801c5d..04d5f0154 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -240,7 +240,8 @@ "category": "カテゴリー" }, "input": { - "placeholder": "サーバーを探す" + "placeholder": "サーバーを探す", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "利用可能なサーバーの検索...", @@ -342,7 +343,11 @@ "offline": "オフライン", "new_posts": "新しい投稿を見る", "published": "投稿しました!", - "Publishing": "投稿中..." + "Publishing": "投稿中...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "通報を送信", "skip_to_send": "コメントなしで送信", "text_placeholder": "追加コメントを入力", - "reported": "報告済み" + "reported": "報告済み", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 96f134eec1d6cd90346f7f21e16ddc482e359e02 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:14 +0200 Subject: [PATCH 099/571] New translations app.json (German) --- .../StringsConvertor/input/de_DE/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index 52f35a8de..ddd601447 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -240,7 +240,8 @@ "category": "KATEGORIE" }, "input": { - "placeholder": "Finde einen Server oder trete deinem eigenen bei..." + "placeholder": "Finde einen Server oder trete deinem eigenen bei...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Verfügbare Server werden gesucht...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "Neue Beiträge anzeigen", "published": "Veröffentlicht!", - "Publishing": "Beitrag wird veröffentlicht..." + "Publishing": "Beitrag wird veröffentlicht...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Meldung abschicken", "skip_to_send": "Ohne Kommentar abschicken", "text_placeholder": "Zusätzliche Kommentare eingeben oder einfügen", - "reported": "GEMELDET" + "reported": "GEMELDET", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From a22e2e56e607014690aeceb90740a2222cf91ecd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:15 +0200 Subject: [PATCH 100/571] New translations app.json (Danish) --- .../StringsConvertor/input/da_DK/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/da_DK/app.json b/Localization/StringsConvertor/input/da_DK/app.json index 50512250d..8de2dc0b3 100644 --- a/Localization/StringsConvertor/input/da_DK/app.json +++ b/Localization/StringsConvertor/input/da_DK/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 434414ef4de603a9789b0c7d570fd8246a101e7b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:17 +0200 Subject: [PATCH 101/571] New translations app.json (Arabic) --- .../StringsConvertor/input/ar_SA/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index 19174618f..79953f117 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -240,7 +240,8 @@ "category": "الفئة" }, "input": { - "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك..." + "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", @@ -342,7 +343,11 @@ "offline": "غَير مُتَّصِل", "new_posts": "إظهار منشورات جديدة", "published": "تمَّ النَّشر!", - "Publishing": "يَجري نَشر المُشارَكَة..." + "Publishing": "يَجري نَشر المُشارَكَة...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "إرسال البلاغ", "skip_to_send": "إرسال بدون تعليق", "text_placeholder": "اكتب أو الصق تعليقات إضافيَّة", - "reported": "مُبْلَغٌ عَنه" + "reported": "مُبْلَغٌ عَنه", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From ae72ce689d4a8ff0cd9407bfab042f6e9844f2c2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:18 +0200 Subject: [PATCH 102/571] New translations app.json (Spanish) --- .../StringsConvertor/input/es_ES/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/es_ES/app.json b/Localization/StringsConvertor/input/es_ES/app.json index b74b8e5eb..614192cb1 100644 --- a/Localization/StringsConvertor/input/es_ES/app.json +++ b/Localization/StringsConvertor/input/es_ES/app.json @@ -240,7 +240,8 @@ "category": "CATEGORÍA" }, "input": { - "placeholder": "Encuentra un servidor o únete al tuyo propio..." + "placeholder": "Encuentra un servidor o únete al tuyo propio...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Encontrando servidores disponibles...", @@ -342,7 +343,11 @@ "offline": "Sin Conexión", "new_posts": "Ver nuevas publicaciones", "published": "¡Publicado!", - "Publishing": "Publicación en curso..." + "Publishing": "Publicación en curso...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Enviar Reporte", "skip_to_send": "Enviar sin comentarios", "text_placeholder": "Escribe o pega comentarios adicionales", - "reported": "REPORTADO" + "reported": "REPORTADO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 20e2cd778421e21c496c6b8092aa0d1e0eae43f4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:19 +0200 Subject: [PATCH 103/571] New translations app.json (French) --- .../StringsConvertor/input/fr_FR/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/fr_FR/app.json b/Localization/StringsConvertor/input/fr_FR/app.json index a3aa9802a..ae5f10c82 100644 --- a/Localization/StringsConvertor/input/fr_FR/app.json +++ b/Localization/StringsConvertor/input/fr_FR/app.json @@ -240,7 +240,8 @@ "category": "CATÉGORIE" }, "input": { - "placeholder": "Trouvez un serveur ou rejoignez le vôtre..." + "placeholder": "Trouvez un serveur ou rejoignez le vôtre...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Recherche des serveurs disponibles...", @@ -342,7 +343,11 @@ "offline": "Hors ligne", "new_posts": "Voir les nouvelles publications", "published": "Publié!", - "Publishing": "Publication en cours ..." + "Publishing": "Publication en cours ...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Envoyer le rapport", "skip_to_send": "Envoyer sans commentaire", "text_placeholder": "Tapez ou collez des informations supplémentaires", - "reported": "SIGNALÉ" + "reported": "SIGNALÉ", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 838ba730fe765084dd6dcadaaf5e8617bf9eda38 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:20 +0200 Subject: [PATCH 104/571] New translations app.json (Romanian) --- .../StringsConvertor/input/ro_RO/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ro_RO/app.json b/Localization/StringsConvertor/input/ro_RO/app.json index 3436a94ef..3d130a843 100644 --- a/Localization/StringsConvertor/input/ro_RO/app.json +++ b/Localization/StringsConvertor/input/ro_RO/app.json @@ -240,7 +240,8 @@ "category": "CATEGORY" }, "input": { - "placeholder": "Search servers" + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", @@ -342,7 +343,11 @@ "offline": "Offline", "new_posts": "See new posts", "published": "Published!", - "Publishing": "Publishing post..." + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Send Report", "skip_to_send": "Send without comment", "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 86ce413972d3fd2758c7dc4ec7525f5908608197 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:21 +0200 Subject: [PATCH 105/571] New translations app.json (Basque) --- .../StringsConvertor/input/eu_ES/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/eu_ES/app.json b/Localization/StringsConvertor/input/eu_ES/app.json index 6905c37a9..286c58da0 100644 --- a/Localization/StringsConvertor/input/eu_ES/app.json +++ b/Localization/StringsConvertor/input/eu_ES/app.json @@ -240,7 +240,8 @@ "category": "KATEGORIA" }, "input": { - "placeholder": "Bilatu zerbitzari bat edo sortu zurea..." + "placeholder": "Bilatu zerbitzari bat edo sortu zurea...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Erabilgarri dauden zerbitzariak bilatzen...", @@ -342,7 +343,11 @@ "offline": "Konexio gabe", "new_posts": "Ikusi bidal. berriak", "published": "Argitaratua!", - "Publishing": "Bidalketa argitaratzen..." + "Publishing": "Bidalketa argitaratzen...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Bidali salaketa", "skip_to_send": "Bidali iruzkinik gabe", "text_placeholder": "Idatzi edo itsatsi iruzkin gehigarriak", - "reported": "SALATUA" + "reported": "SALATUA", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From c49e5e5b95e560cc7573b3108130c352726883fb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:22 +0200 Subject: [PATCH 106/571] New translations app.json (Vietnamese) --- .../StringsConvertor/input/vi_VN/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/vi_VN/app.json b/Localization/StringsConvertor/input/vi_VN/app.json index 2a6c1a49b..73d3615ca 100644 --- a/Localization/StringsConvertor/input/vi_VN/app.json +++ b/Localization/StringsConvertor/input/vi_VN/app.json @@ -240,7 +240,8 @@ "category": "PHÂN LOẠI" }, "input": { - "placeholder": "Tìm máy chủ" + "placeholder": "Tìm máy chủ", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Đang tìm máy chủ hoạt động...", @@ -342,7 +343,11 @@ "offline": "Ngoại tuyến", "new_posts": "Đọc những tút mới", "published": "Đã đăng!", - "Publishing": "Đang đăng tút..." + "Publishing": "Đang đăng tút...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Gửi báo cáo", "skip_to_send": "Gửi không ghi chú", "text_placeholder": "Nhập hoặc bổ sung chú thích", - "reported": "ĐÃ BÁO CÁO" + "reported": "ĐÃ BÁO CÁO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From a2b9e8f2b5ea07af105ea3eb66c26ace63357b2c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:24 +0200 Subject: [PATCH 107/571] New translations app.json (Thai) --- .../StringsConvertor/input/th_TH/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index 93d7154b8..c162f9f0a 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -240,7 +240,8 @@ "category": "หมวดหมู่" }, "input": { - "placeholder": "ค้นหาเซิร์ฟเวอร์" + "placeholder": "ค้นหาเซิร์ฟเวอร์", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", @@ -342,7 +343,11 @@ "offline": "ออฟไลน์", "new_posts": "ดูโพสต์ใหม่", "published": "เผยแพร่แล้ว!", - "Publishing": "กำลังเผยแพร่โพสต์..." + "Publishing": "กำลังเผยแพร่โพสต์...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "ส่งรายงาน", "skip_to_send": "ส่งโดยไม่มีความคิดเห็น", "text_placeholder": "พิมพ์หรือวางความคิดเห็นเพิ่มเติม", - "reported": "รายงานแล้ว" + "reported": "รายงานแล้ว", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From dbf30f82e6f501ee086f39abaf8255aeea39d791 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:25 +0200 Subject: [PATCH 108/571] New translations app.json (Chinese Simplified) --- .../StringsConvertor/input/zh_CN/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/zh_CN/app.json b/Localization/StringsConvertor/input/zh_CN/app.json index 2809b4c3b..8e63b09af 100644 --- a/Localization/StringsConvertor/input/zh_CN/app.json +++ b/Localization/StringsConvertor/input/zh_CN/app.json @@ -240,7 +240,8 @@ "category": "类别" }, "input": { - "placeholder": "查找或加入你自己的服务器..." + "placeholder": "查找或加入你自己的服务器...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "正在查找可用的服务器...", @@ -342,7 +343,11 @@ "offline": "离线", "new_posts": "查看新帖子", "published": "已发送", - "Publishing": "正在发送..." + "Publishing": "正在发送...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "发送举报", "skip_to_send": "直接发送", "text_placeholder": "输入或粘贴额外的注释", - "reported": "已报告" + "reported": "已报告", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 6bd0e25b13a2170954d8b2a4e7d661f262c541da Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:26 +0200 Subject: [PATCH 109/571] New translations app.json (Russian) --- .../StringsConvertor/input/ru_RU/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/ru_RU/app.json b/Localization/StringsConvertor/input/ru_RU/app.json index 1f7a45544..05770e7eb 100644 --- a/Localization/StringsConvertor/input/ru_RU/app.json +++ b/Localization/StringsConvertor/input/ru_RU/app.json @@ -240,7 +240,8 @@ "category": "КАТЕГОРИЯ" }, "input": { - "placeholder": "Найдите сервер или присоединитесь к своему..." + "placeholder": "Найдите сервер или присоединитесь к своему...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Ищем доступные сервера...", @@ -342,7 +343,11 @@ "offline": "Не в сети", "new_posts": "Показать новые", "published": "Опубликовано!", - "Publishing": "Публикуем пост..." + "Publishing": "Публикуем пост...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Пожаловаться", "skip_to_send": "Отправить без комментария", "text_placeholder": "Дополнительные комментарии", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 9ecc11876426a8fd4821f16b782c1bda70fc707a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 10:48:27 +0200 Subject: [PATCH 110/571] New translations app.json (Finnish) --- .../StringsConvertor/input/fi_FI/app.json | 52 +++++++++++++++++-- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/fi_FI/app.json b/Localization/StringsConvertor/input/fi_FI/app.json index 4599c9646..4fe8f57b8 100644 --- a/Localization/StringsConvertor/input/fi_FI/app.json +++ b/Localization/StringsConvertor/input/fi_FI/app.json @@ -240,7 +240,8 @@ "category": "KATEGORIA" }, "input": { - "placeholder": "Etsi palvelin tai liity omaan..." + "placeholder": "Etsi palvelin tai liity omaan...", + "search_servers_or_enter_url": "Search communities or enter URL" }, "empty_state": { "finding_servers": "Etsistään saatavilla olevia palvelimia...", @@ -342,7 +343,11 @@ "offline": "Yhteydetön", "new_posts": "Uusia julkaisuja", "published": "Julkaistu!", - "Publishing": "Julkaistaan julkaisua..." + "Publishing": "Julkaistaan julkaisua...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } } }, "suggestion_account": { @@ -596,7 +601,48 @@ "send": "Lähetä ilmianto", "skip_to_send": "Lähetä ilman kommentteja", "text_placeholder": "Kirjoita tai liitä lisäkommentteja", - "reported": "REPORTED" + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + } }, "preview": { "keyboard": { From 7025aa0fb1dbf5f6673d6c0fef0e7d7b9be06b8a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 11:47:13 +0200 Subject: [PATCH 111/571] New translations app.json (Catalan) --- .../StringsConvertor/input/ca_ES/app.json | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index 252eded05..8d8e94cb5 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca servidors", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Cerca comunitats o introdueix l'URL" }, "empty_state": { "finding_servers": "Cercant els servidors disponibles...", @@ -345,8 +345,8 @@ "published": "Publicat!", "Publishing": "S'està publicant...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Botó de logotip", + "logo_hint": "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior" } } }, @@ -603,45 +603,45 @@ "text_placeholder": "Escriu o enganxa comentaris addicionals", "reported": "REPORTAT", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "Pas 1 de 4", + "whats_wrong_with_this_post": "Quin és el problema amb aquesta publicació?", + "whats_wrong_with_this_account": "Quin és el problema amb aquest compte?", + "whats_wrong_with_this_username": "Quin és el problema amb %s?", + "select_the_best_match": "Selecciona la millor coincidència", + "i_dont_like_it": "No m'agrada", + "it_is_not_something_you_want_to_see": "No és una cosa que vulguis veure", + "its_spam": "És contingut brossa", + "malicious_links_fake_engagement_or_repetetive_replies": "Enllaços maliciosos, compromís falç o respostes repetitives", + "it_violates_server_rules": "Infringeix les normes del servidor", + "you_are_aware_that_it_breaks_specific_rules": "Ets conscient que incompleix normes específiques", + "its_something_else": "És una altra cosa", + "the_issue_does_not_fit_into_other_categories": "El problema no encaixa en altres categories" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Pas 2 de 4", + "which_rules_are_being_violated": "Quines normes s'estan infringint?", + "select_all_that_apply": "Selecciona tot el que correspongui", + "i_just_don’t_like_it": "Simplement no m'agrada" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Pas 3 de 4", + "are_there_any_posts_that_back_up_this_report": "Hi ha alguna publicació que recolzi aquest informe?", + "select_all_that_apply": "Selecciona tot el que correspongui" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Pas 4 de 4", + "is_there_anything_else_we_should_know": "Hi ha res més que hauríem de saber?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "dont_want_to_see_this": "No vols veure això?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quan veus alguna cosa que no t'agrada a Mastodon, pots eliminar la persona de la vostra experiència.", + "unfollow": "Deixa de seguir", + "unfollowed": "S'ha deixat de seguir", + "unfollow_user": "Deixa de seguir %s", + "mute_user": "Silencia %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats.", + "block_user": "Bloca %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats." } }, "preview": { From 352ec37a60a23647ec64fcc06f31e59540cdbf0e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 11:47:15 +0200 Subject: [PATCH 112/571] New translations app.json (Italian) --- .../StringsConvertor/input/it_IT/app.json | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Localization/StringsConvertor/input/it_IT/app.json b/Localization/StringsConvertor/input/it_IT/app.json index 423ebd109..6635a37c1 100644 --- a/Localization/StringsConvertor/input/it_IT/app.json +++ b/Localization/StringsConvertor/input/it_IT/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca comunità", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Cerca comunità o inserisci l'URL" }, "empty_state": { "finding_servers": "Ricerca server disponibili...", @@ -345,8 +345,8 @@ "published": "Pubblicato!", "Publishing": "Pubblicazione post...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Pulsante Logo", + "logo_hint": "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente" } } }, @@ -603,45 +603,45 @@ "text_placeholder": "Digita o incolla commenti aggiuntivi", "reported": "SEGNALATO", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "Fase 1 di 4", + "whats_wrong_with_this_post": "Cosa c'è che non va con questo post?", + "whats_wrong_with_this_account": "Cosa c'è che non va con questo account?", + "whats_wrong_with_this_username": "Cosa c'è che non va con %s?", + "select_the_best_match": "Scegli la migliore corrispondenza", + "i_dont_like_it": "Non mi piace", + "it_is_not_something_you_want_to_see": "È qualcosa che non vuoi vedere", + "its_spam": "È spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Collegamenti malevoli, false interazioni o risposte ripetitive", + "it_violates_server_rules": "Viola le regole del server", + "you_are_aware_that_it_breaks_specific_rules": "Sei consapevole che violi regole specifiche", + "its_something_else": "È qualcos'altro", + "the_issue_does_not_fit_into_other_categories": "Il problema non rientra in altre categorie" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Fase 2 di 4", + "which_rules_are_being_violated": "Quali regole vengono violate?", + "select_all_that_apply": "Seleziona tutte le risposte pertinenti", + "i_just_don’t_like_it": "Non mi piace" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Fase 3 di 4", + "are_there_any_posts_that_back_up_this_report": "Ci sono post a sostegno di questa segnalazione?", + "select_all_that_apply": "Seleziona tutte le risposte pertinenti" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Fase 4 di 4", + "is_there_anything_else_we_should_know": "C'è altro che dovremmo sapere?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "dont_want_to_see_this": "Non vuoi vedere questo?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quando vedi qualcosa che non ti piace su Mastodon, puoi rimuovere la persona dalla tua esperienza.", + "unfollow": "Smetti di seguire", + "unfollowed": "Non seguito", + "unfollow_user": "Smetti di seguire %s", + "mute_user": "Silenzia %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati.", + "block_user": "Blocca %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati." } }, "preview": { From 69484402da38b49b3f1a225ef67e3b9de09bab29 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 11:47:17 +0200 Subject: [PATCH 113/571] New translations app.json (Arabic) --- .../StringsConvertor/input/ar_SA/app.json | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index 79953f117..463f9e9da 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL" }, "empty_state": { "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", @@ -345,8 +345,8 @@ "published": "تمَّ النَّشر!", "Publishing": "يَجري نَشر المُشارَكَة...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "ُّزِرُّ الشِّعار", + "logo_hint": "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق" } } }, @@ -593,8 +593,8 @@ "report": { "title_report": "إبلاغ", "title": "الإبلاغ عن %s", - "step1": "الخطوة الأولى مِن أصل اثنتين", - "step2": "الخطوة الثانية والأخيرة", + "step1": "الخطوة 1 مِن أصل 2", + "step2": "الخطوة 2 مِن أصل 2", "content1": "هل ترغب في إضافة أي منشورات أُخرى إلى البلاغ؟", "content2": "هل هناك أي شيء يجب أن يعرفه المُراقبين حول هذا البلاغ؟", "report_sent_title": "شُكرًا لَكَ على الإبلاغ، سَوفَ نَنظُرُ فِي هَذَا الأمر.", @@ -603,44 +603,44 @@ "text_placeholder": "اكتب أو الصق تعليقات إضافيَّة", "reported": "مُبْلَغٌ عَنه", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "الخطوة 1 مِن أصل 4", + "whats_wrong_with_this_post": "ما المُشكِلَةُ فِي هَذَا المَنشُور؟", + "whats_wrong_with_this_account": "ما المُشكِلَةُ فِي هَذَا الحِساب؟", + "whats_wrong_with_this_username": "ما المُشكِلَة مَعَ %s؟", + "select_the_best_match": "اِختَر أفضلَ تَطابُق", + "i_dont_like_it": "لا يُعجِبُني", + "it_is_not_something_you_want_to_see": "إنَّهُ ليسَ شيئًا تُريدُ رُؤيَتَه", + "its_spam": "إنَّهُ غَيرٌ مَرغوبٍ فيه", + "malicious_links_fake_engagement_or_repetetive_replies": "رَوابِطٌ ضَارَّة، اِرتِباطاتٌ مُزيَّفَة أو رُدودٌ مُتَكَرِّرَة", + "it_violates_server_rules": "يَنتَهِكُ قَواعِدَ الخادِم", + "you_are_aware_that_it_breaks_specific_rules": "أنتَ مُدِركٌ لِانتِهاكِهِ قَواعِدًا مُحَدَّدَة", + "its_something_else": "إنَّهُ شَيءٌ آخَر", + "the_issue_does_not_fit_into_other_categories": "المُشكِلَةُ لَا تَتَناسَبُ مَعَ الفِئاتِ الأُخرَى" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "الخطوة 2 مِن أصل 4", + "which_rules_are_being_violated": "مَا هِيَ القَواعِدُ الَّتي تُنتَهَك؟", + "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق", + "i_just_don’t_like_it": "أنا فَقَط لا يُعجِبُني" }, "step_three": { - "step_3_of_4": "Step 3 of 4", + "step_3_of_4": "الخطوة 3 مِن أصل 4", "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "الخطوة 4 مِن أصل 4", + "is_there_anything_else_we_should_know": "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", + "dont_want_to_see_this": "ألَا تُريدُ رُؤيَةَ هَذَا؟", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك.", + "unfollow": "إلغاءُ المُتابَعَة", + "unfollowed": "أُلغِيَت المُتابَعَة", + "unfollow_user": "إلغاءُ مُتابَعَةِ %s", + "mute_user": "كَتمُ %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", + "block_user": "حَظرُ %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." } }, From 945241e730fef8967eb98ad664a1b3417b5eb057 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 18:39:34 +0800 Subject: [PATCH 114/571] fix: NewsView image layout not fixed issue --- Mastodon.xcodeproj/project.pbxproj | 12 ------- .../Content/MediaView+Configuration.swift | 28 +-------------- Mastodon/State/AppContext.swift | 3 +- .../Service/BlurhashImageCacheService.swift | 3 ++ .../MastodonUI/Vendor}/BlurHashDecode.swift | 0 .../MastodonUI/Vendor}/BlurHashEncode.swift | 0 .../Content/MediaView+Configuration.swift | 35 +++++++++++++++++++ .../View/Content/NewsView+Configuration.swift | 1 + .../MastodonUI/View/Content/NewsView.swift | 16 +++++++++ 9 files changed, 58 insertions(+), 40 deletions(-) rename {Mastodon => MastodonSDK/Sources/MastodonUI}/Service/BlurhashImageCacheService.swift (96%) rename {Mastodon/Vender => MastodonSDK/Sources/MastodonUI/Vendor}/BlurHashDecode.swift (100%) rename {Mastodon/Vender => MastodonSDK/Sources/MastodonUI/Vendor}/BlurHashEncode.swift (100%) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index d5f5cbd79..1a185f86c 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -286,8 +286,6 @@ DB4F097F26A03DA600D62E92 /* SearchHistoryFetchedResultController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB4F097E26A03DA600D62E92 /* SearchHistoryFetchedResultController.swift */; }; DB4FFC2B269EC39600D62E92 /* SearchToSearchDetailViewControllerAnimatedTransitioning.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB4FFC29269EC39600D62E92 /* SearchToSearchDetailViewControllerAnimatedTransitioning.swift */; }; DB4FFC2C269EC39600D62E92 /* SearchTransitionController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB4FFC2A269EC39600D62E92 /* SearchTransitionController.swift */; }; - DB51D172262832380062B7A1 /* BlurHashDecode.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB51D170262832380062B7A1 /* BlurHashDecode.swift */; }; - DB51D173262832380062B7A1 /* BlurHashEncode.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB51D171262832380062B7A1 /* BlurHashEncode.swift */; }; DB552D4F26BBD10C00E481F6 /* OrderedCollections in Frameworks */ = {isa = PBXBuildFile; productRef = DB552D4E26BBD10C00E481F6 /* OrderedCollections */; }; DB564BD3269F3B35001E39A7 /* StatusFilterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB564BD2269F3B35001E39A7 /* StatusFilterService.swift */; }; DB59F10E25EF724F001F1DAB /* APIService+Poll.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB59F10D25EF724F001F1DAB /* APIService+Poll.swift */; }; @@ -415,7 +413,6 @@ DB852D1F26FB037800FC9D81 /* SidebarViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB852D1E26FB037800FC9D81 /* SidebarViewModel.swift */; }; DB87D4452609BE0500D12C0D /* ComposeStatusPollOptionCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB87D4442609BE0500D12C0D /* ComposeStatusPollOptionCollectionViewCell.swift */; }; DB87D4512609CF1E00D12C0D /* ComposeStatusPollOptionAppendEntryCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB87D4502609CF1E00D12C0D /* ComposeStatusPollOptionAppendEntryCollectionViewCell.swift */; }; - DB894CC427A5490600684B74 /* BlurhashImageCacheService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB894CC327A5490600684B74 /* BlurhashImageCacheService.swift */; }; DB8AF52E25C13561002E6C99 /* ViewStateStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB8AF52B25C13561002E6C99 /* ViewStateStore.swift */; }; DB8AF52F25C13561002E6C99 /* DocumentStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB8AF52C25C13561002E6C99 /* DocumentStore.swift */; }; DB8AF53025C13561002E6C99 /* AppContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB8AF52D25C13561002E6C99 /* AppContext.swift */; }; @@ -1041,8 +1038,6 @@ DB519B15281BCC2F00F0C99D /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/Intents.strings; sourceTree = ""; }; DB519B16281BCC2F00F0C99D /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/InfoPlist.strings; sourceTree = ""; }; DB519B17281BCC2F00F0C99D /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = tr; path = tr.lproj/Intents.stringsdict; sourceTree = ""; }; - DB51D170262832380062B7A1 /* BlurHashDecode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlurHashDecode.swift; sourceTree = ""; }; - DB51D171262832380062B7A1 /* BlurHashEncode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BlurHashEncode.swift; sourceTree = ""; }; DB564BD2269F3B35001E39A7 /* StatusFilterService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusFilterService.swift; sourceTree = ""; }; DB59F10D25EF724F001F1DAB /* APIService+Poll.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Poll.swift"; sourceTree = ""; }; DB5B7294273112B100081888 /* FollowingListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowingListViewController.swift; sourceTree = ""; }; @@ -1167,7 +1162,6 @@ DB852D1E26FB037800FC9D81 /* SidebarViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SidebarViewModel.swift; sourceTree = ""; }; DB87D4442609BE0500D12C0D /* ComposeStatusPollOptionCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeStatusPollOptionCollectionViewCell.swift; sourceTree = ""; }; DB87D4502609CF1E00D12C0D /* ComposeStatusPollOptionAppendEntryCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeStatusPollOptionAppendEntryCollectionViewCell.swift; sourceTree = ""; }; - DB894CC327A5490600684B74 /* BlurhashImageCacheService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlurhashImageCacheService.swift; sourceTree = ""; }; DB89BA1025C10FF5008580ED /* Mastodon.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Mastodon.entitlements; sourceTree = ""; }; DB8AF52B25C13561002E6C99 /* ViewStateStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ViewStateStore.swift; sourceTree = ""; }; DB8AF52C25C13561002E6C99 /* DocumentStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DocumentStore.swift; sourceTree = ""; }; @@ -1665,8 +1659,6 @@ isa = PBXGroup; children = ( 2D5A3D0225CF8742002347D6 /* ControlContainableScrollViews.swift */, - DB51D170262832380062B7A1 /* BlurHashDecode.swift */, - DB51D171262832380062B7A1 /* BlurHashEncode.swift */, DB6180EC26391C6C0018D199 /* TransitioningMath.swift */, DB75BF1D263C1C1B00EDBF1F /* CustomScheduler.swift */, DBF156E32702DB3F00EC00B7 /* HandleTapAction.swift */, @@ -1692,7 +1684,6 @@ DB297B1A2679FAE200704C90 /* PlaceholderImageCacheService.swift */, DB564BD2269F3B35001E39A7 /* StatusFilterService.swift */, DB73BF42271192BB00781945 /* InstanceService.swift */, - DB894CC327A5490600684B74 /* BlurhashImageCacheService.swift */, ); path = Service; sourceTree = ""; @@ -4203,7 +4194,6 @@ 2D5A3D0325CF8742002347D6 /* ControlContainableScrollViews.swift in Sources */, DB36679D268AB91B0027D07F /* ComposeStatusAttachmentTableViewCell.swift in Sources */, DB98336B25C9420100AD9700 /* APIService+App.swift in Sources */, - DB894CC427A5490600684B74 /* BlurhashImageCacheService.swift in Sources */, DBFEF07B26A6BCE8006D7ED1 /* APIService+Status+Publish.swift in Sources */, DBA0A11325FB3FC10079C110 /* ComposeToolbarView.swift in Sources */, 5B90C48526259BF10002E742 /* APIService+Subscriptions.swift in Sources */, @@ -4254,7 +4244,6 @@ DB3E6FE42806A5B800B035AE /* DiscoverySection.swift in Sources */, DB8190C62601FF0400020C08 /* AttachmentContainerView.swift in Sources */, DB697DDB278F4DE3004EF2F7 /* DataSourceProvider+StatusTableViewCellDelegate.swift in Sources */, - DB51D173262832380062B7A1 /* BlurHashEncode.swift in Sources */, 2D32EAAC25CB96DC00C9ED86 /* TimelineMiddleLoaderTableViewCell.swift in Sources */, DB87D4512609CF1E00D12C0D /* ComposeStatusPollOptionAppendEntryCollectionViewCell.swift in Sources */, DBB45B5627B39FC9002DC5A7 /* MediaPreviewVideoViewController.swift in Sources */, @@ -4312,7 +4301,6 @@ DB6180ED26391C6C0018D199 /* TransitioningMath.swift in Sources */, DB63F771279A858500455B82 /* Persistence+Notification.swift in Sources */, 2D6DE40026141DF600A63F6A /* SearchViewModel.swift in Sources */, - DB51D172262832380062B7A1 /* BlurHashDecode.swift in Sources */, DBCCC71E25F73297007E1AB6 /* APIService+Reblog.swift in Sources */, DB0617FD27855BFE0030EE79 /* ServerRuleItem.swift in Sources */, 5BB04FD5262E7AFF0043BFF6 /* ReportViewController.swift in Sources */, diff --git a/Mastodon/Scene/Share/View/Content/MediaView+Configuration.swift b/Mastodon/Scene/Share/View/Content/MediaView+Configuration.swift index 02f9ad5a4..b782f8e8a 100644 --- a/Mastodon/Scene/Share/View/Content/MediaView+Configuration.swift +++ b/Mastodon/Scene/Share/View/Content/MediaView+Configuration.swift @@ -57,33 +57,7 @@ extension MediaView { } // end switch }() - if let previewURL = configuration.previewURL, - let url = URL(string: previewURL) - { - let placeholder = UIImage.placeholder(color: .systemGray6) - let request = URLRequest(url: url) - ImageDownloader.default.download(request, completion: { response in - switch response.result { - case .success(let image): - configuration.previewImage = image - case .failure: - configuration.previewImage = placeholder - } - }) - } - - if let assetURL = configuration.assetURL, - let blurhash = configuration.blurhash - { - AppContext.shared.blurhashImageCacheService.image( - blurhash: blurhash, - size: configuration.aspectRadio, - url: assetURL - ) - .assign(to: \.blurhashImage, on: configuration) - .store(in: &configuration.blurhashImageDisposeBag) - } - + configuration.load() configuration.isReveal = status.isMediaSensitive ? status.isSensitiveToggled : true return configuration diff --git a/Mastodon/State/AppContext.swift b/Mastodon/State/AppContext.swift index 9de19c44f..683c81f33 100644 --- a/Mastodon/State/AppContext.swift +++ b/Mastodon/State/AppContext.swift @@ -11,6 +11,7 @@ import Combine import CoreData import CoreDataStack import AlamofireImage +import MastodonUI class AppContext: ObservableObject { @@ -35,7 +36,7 @@ class AppContext: ObservableObject { let photoLibraryService = PhotoLibraryService() let placeholderImageCacheService = PlaceholderImageCacheService() - let blurhashImageCacheService = BlurhashImageCacheService() + let blurhashImageCacheService = BlurhashImageCacheService.shared let documentStore: DocumentStore private var documentStoreSubscription: AnyCancellable! diff --git a/Mastodon/Service/BlurhashImageCacheService.swift b/MastodonSDK/Sources/MastodonUI/Service/BlurhashImageCacheService.swift similarity index 96% rename from Mastodon/Service/BlurhashImageCacheService.swift rename to MastodonSDK/Sources/MastodonUI/Service/BlurhashImageCacheService.swift index b15a9750b..cc9459b4e 100644 --- a/Mastodon/Service/BlurhashImageCacheService.swift +++ b/MastodonSDK/Sources/MastodonUI/Service/BlurhashImageCacheService.swift @@ -10,6 +10,9 @@ import Combine public final class BlurhashImageCacheService { + // MARK: - Singleton + public static let shared = BlurhashImageCacheService() + static let edgeMaxLength: CGFloat = 20 let cache = NSCache() diff --git a/Mastodon/Vender/BlurHashDecode.swift b/MastodonSDK/Sources/MastodonUI/Vendor/BlurHashDecode.swift similarity index 100% rename from Mastodon/Vender/BlurHashDecode.swift rename to MastodonSDK/Sources/MastodonUI/Vendor/BlurHashDecode.swift diff --git a/Mastodon/Vender/BlurHashEncode.swift b/MastodonSDK/Sources/MastodonUI/Vendor/BlurHashEncode.swift similarity index 100% rename from Mastodon/Vender/BlurHashEncode.swift rename to MastodonSDK/Sources/MastodonUI/Vendor/BlurHashEncode.swift diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/MediaView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/MediaView+Configuration.swift index 6026e668f..cfe9e73ce 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/MediaView+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/MediaView+Configuration.swift @@ -10,6 +10,7 @@ import UIKit import Combine import CoreData import Photos +import AlamofireImage extension MediaView { public class Configuration: Hashable { @@ -142,3 +143,37 @@ extension MediaView.Configuration { } } + +extension MediaView.Configuration { + + public func load() { + if let previewURL = previewURL, + let url = URL(string: previewURL) + { + let placeholder = UIImage.placeholder(color: .systemGray6) + let request = URLRequest(url: url) + ImageDownloader.default.download(request, completion: { [weak self] response in + guard let self = self else { return } + switch response.result { + case .success(let image): + self.previewImage = image + case .failure: + self.previewImage = placeholder + } + }) + } + + if let assetURL = assetURL, + let blurhash = blurhash + { + BlurhashImageCacheService.shared.image( + blurhash: blurhash, + size: aspectRadio, + url: assetURL + ) + .assign(to: \.blurhashImage, on: self) + .store(in: &blurhashImageDisposeBag) + } + } + +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/NewsView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/NewsView+Configuration.swift index 397982aaf..7f44232aa 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/NewsView+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/NewsView+Configuration.swift @@ -6,6 +6,7 @@ // import UIKit +import Combine import MastodonSDK import MastodonLocalization import AlamofireImage diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/NewsView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/NewsView.swift index 6d4cf3fd7..0d4298035 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/NewsView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/NewsView.swift @@ -6,9 +6,14 @@ // import UIKit +import Combine import MastodonAsset public final class NewsView: UIView { + + static let imageViewWidth: CGFloat = 132 + + var disposeBag = Set() let container = UIStackView() @@ -44,10 +49,14 @@ public final class NewsView: UIView { }() let imageView = MediaView() + +// let imageView = UIImageView() +// var imageViewMediaConfiguration: MediaView.Configuration? public func prepareForReuse() { providerFaviconImageView.tag = (0.. Date: Wed, 11 May 2022 18:40:21 +0800 Subject: [PATCH 115/571] feat: add keyboard commands for discovery posts, tag. And also restore for hashtag timeline and profile scene --- Mastodon.xcodeproj/project.pbxproj | 4 + .../xcschemes/xcschememanagement.plist | 13 +- Mastodon/Protocol/PageboyNavigateable.swift | 92 +++++++++++++++ ...tatusTableViewControllerNavigateable.swift | 2 +- .../DiscoveryCommunityViewController.swift | 17 +++ .../Discovery/DiscoveryViewController.swift | 29 +++++ .../DiscoveryHashtagsViewController.swift | 95 +++++++++++++++ .../Posts/DiscoveryPostsViewController.swift | 17 +++ .../HashtagTimelineViewController.swift | 111 +++--------------- .../Scene/Profile/ProfileViewController.swift | 48 ++++---- .../Root/ContentSplitViewController.swift | 10 ++ 11 files changed, 315 insertions(+), 123 deletions(-) create mode 100644 Mastodon/Protocol/PageboyNavigateable.swift diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 1a185f86c..711334cf7 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -529,6 +529,7 @@ DBC6462826A1736300B0E31B /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DB427DDE25BAA00100D1B89D /* Assets.xcassets */; }; DBC7A672260C897100E57475 /* StatusContentWarningEditorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC7A671260C897100E57475 /* StatusContentWarningEditorView.swift */; }; DBC7A67C260DFADE00E57475 /* StatusPublishService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC7A67B260DFADE00E57475 /* StatusPublishService.swift */; }; + DBCA0EBC282BB38A0029E2B0 /* PageboyNavigateable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCA0EBB282BB38A0029E2B0 /* PageboyNavigateable.swift */; }; DBCBCBF4267CB070000F5B51 /* Decode85.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCBCBF3267CB070000F5B51 /* Decode85.swift */; }; DBCBCC0D2680B908000F5B51 /* HomeTimelinePreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCBCC0C2680B908000F5B51 /* HomeTimelinePreference.swift */; }; DBCBED1726132DB500B49291 /* UserTimelineViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCBED1626132DB500B49291 /* UserTimelineViewModel+Diffable.swift */; }; @@ -1290,6 +1291,7 @@ DBC6462226A1712000B0E31B /* ShareViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareViewModel.swift; sourceTree = ""; }; DBC7A671260C897100E57475 /* StatusContentWarningEditorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusContentWarningEditorView.swift; sourceTree = ""; }; DBC7A67B260DFADE00E57475 /* StatusPublishService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusPublishService.swift; sourceTree = ""; }; + DBCA0EBB282BB38A0029E2B0 /* PageboyNavigateable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PageboyNavigateable.swift; sourceTree = ""; }; DBCBCBF3267CB070000F5B51 /* Decode85.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Decode85.swift; sourceTree = ""; }; DBCBCC0C2680B908000F5B51 /* HomeTimelinePreference.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeTimelinePreference.swift; sourceTree = ""; }; DBCBED1626132DB500B49291 /* UserTimelineViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserTimelineViewModel+Diffable.swift"; sourceTree = ""; }; @@ -1697,6 +1699,7 @@ DB4AA6B227BA34B6009EC082 /* CellFrameCacheContainer.swift */, 2D38F20725CD491300561493 /* DisposeBagCollectable.swift */, DB1D84372657B275000346B3 /* SegmentedControlNavigateable.swift */, + DBCA0EBB282BB38A0029E2B0 /* PageboyNavigateable.swift */, DB1D843326579931000346B3 /* TableViewControllerNavigateable.swift */, DB1D842D26552C4D000346B3 /* StatusTableViewControllerNavigateable.swift */, ); @@ -4082,6 +4085,7 @@ DB1D186C25EF5BA7003F1F23 /* PollTableView.swift in Sources */, DBA94434265CBB5300C537E1 /* ProfileFieldSection.swift in Sources */, DB336F28278D6EC70031E64B /* MastodonFieldContainer.swift in Sources */, + DBCA0EBC282BB38A0029E2B0 /* PageboyNavigateable.swift in Sources */, DBF156E42702DB3F00EC00B7 /* HandleTapAction.swift in Sources */, DB98EB4727B0DFAA0082E365 /* ReportViewModel+State.swift in Sources */, 2D5981A125E4A593000FB903 /* MastodonConfirmEmailViewModel.swift in Sources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 07a847a0c..bc5c3a934 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -16,10 +16,15 @@ orderHint 27 + Mastodon - Profile.xcscheme_^#shared#^_ + + orderHint + 19 + Mastodon - RTL.xcscheme_^#shared#^_ orderHint - 6 + 5 Mastodon - Release.xcscheme_^#shared#^_ @@ -109,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 28 + 21 MastodonIntents.xcscheme_^#shared#^_ @@ -124,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 27 + 20 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 26 + 22 SuppressBuildableAutocreation diff --git a/Mastodon/Protocol/PageboyNavigateable.swift b/Mastodon/Protocol/PageboyNavigateable.swift new file mode 100644 index 000000000..8ff59ef4f --- /dev/null +++ b/Mastodon/Protocol/PageboyNavigateable.swift @@ -0,0 +1,92 @@ +// +// PageboyNavigateable.swift +// Mastodon +// +// Created by MainasuK on 2022-5-11. +// + +import UIKit +import Pageboy +import MastodonLocalization + +typealias PageboyNavigateable = PageboyNavigateableCore & PageboyNavigateableRelay + +protocol PageboyNavigateableCore: AnyObject { + var navigateablePageViewController: PageboyViewController { get } + var pageboyNavigateKeyCommands: [UIKeyCommand] { get } + + func pageboyNavigateKeyCommandHandler(_ sender: UIKeyCommand) + func navigate(direction: PageboyNavigationDirection) +} + +@objc protocol PageboyNavigateableRelay: AnyObject { + func pageboyNavigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) +} + +enum PageboyNavigationDirection: String, CaseIterable { + case previous + case next + + var title: String { + switch self { + case .previous: return L10n.Common.Controls.Keyboard.SegmentedControl.previousSection + case .next: return L10n.Common.Controls.Keyboard.SegmentedControl.nextSection + } + } + + // UIKeyCommand input + var input: String { + switch self { + case .previous: return "[" + case .next: return "]" + } + } + + var modifierFlags: UIKeyModifierFlags { + switch self { + case .previous: return [.shift, .command] + case .next: return [.shift, .command] + } + } + + var propertyList: Any { + return rawValue + } +} + +extension PageboyNavigateableCore where Self: PageboyNavigateableRelay { + var pageboyNavigateKeyCommands: [UIKeyCommand] { + PageboyNavigationDirection.allCases.map { direction in + UIKeyCommand( + title: direction.title, + image: nil, + action: #selector(Self.pageboyNavigateKeyCommandHandlerRelay(_:)), + input: direction.input, + modifierFlags: direction.modifierFlags, + propertyList: direction.propertyList, + alternates: [], + discoverabilityTitle: nil, + attributes: [], + state: .off + ) + } + } + + func pageboyNavigateKeyCommandHandler(_ sender: UIKeyCommand) { + guard let rawValue = sender.propertyList as? String, + let direction = PageboyNavigationDirection(rawValue: rawValue) else { return } + navigate(direction: direction) + } + +} + +extension PageboyNavigateableCore { + func navigate(direction: PageboyNavigationDirection) { + switch direction { + case .previous: + navigateablePageViewController.scrollToPage(.previous, animated: true) + case .next: + navigateablePageViewController.scrollToPage(.next, animated: true) + } + } +} diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewControllerNavigateable.swift b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewControllerNavigateable.swift index fb4a7d843..ce4e03cdb 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewControllerNavigateable.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewControllerNavigateable.swift @@ -115,7 +115,7 @@ extension StatusTableViewControllerNavigateableCore where Self: DataSourceProvid guard let provider = self as? (DataSourceProvider & MediaPreviewableViewController) else { return } guard let indexPathForSelectedRow = tableView.indexPathForSelectedRow, - let cell = tableView.cellForRow(at: indexPathForSelectedRow) as? StatusTableViewCell + let cell = tableView.cellForRow(at: indexPathForSelectedRow) as? StatusViewContainerTableViewCell else { return } guard let mediaView = cell.statusView.mediaGridContainerView.mediaViews.first else { return } diff --git a/Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewController.swift b/Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewController.swift index eabed7a0e..4cc32c250 100644 --- a/Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewController.swift +++ b/Mastodon/Scene/Discovery/Community/DiscoveryCommunityViewController.swift @@ -152,3 +152,20 @@ extension DiscoveryCommunityViewController: ScrollViewContainer { tableView } } + +extension DiscoveryCommunityViewController { + override var keyCommands: [UIKeyCommand]? { + return navigationKeyCommands + statusNavigationKeyCommands + } +} + +// MARK: - StatusTableViewControllerNavigateable +extension DiscoveryCommunityViewController: StatusTableViewControllerNavigateable { + @objc func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + navigateKeyCommandHandler(sender) + } + + @objc func statusKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + statusKeyCommandHandler(sender) + } +} diff --git a/Mastodon/Scene/Discovery/DiscoveryViewController.swift b/Mastodon/Scene/Discovery/DiscoveryViewController.swift index 8e3aab647..1803f687a 100644 --- a/Mastodon/Scene/Discovery/DiscoveryViewController.swift +++ b/Mastodon/Scene/Discovery/DiscoveryViewController.swift @@ -9,6 +9,7 @@ import os.log import UIKit import Combine import Tabman +import Pageboy import MastodonAsset import MastodonUI @@ -126,3 +127,31 @@ extension DiscoveryViewController { } } + +// MARK: - ScrollViewContainer +extension DiscoveryViewController: ScrollViewContainer { + var scrollView: UIScrollView? { + return (currentViewController as? ScrollViewContainer)?.scrollView + } +} + +extension DiscoveryViewController { + + public override var keyCommands: [UIKeyCommand]? { + return pageboyNavigateKeyCommands + } + +} + +// MARK: - PageboyNavigateable +extension DiscoveryViewController: PageboyNavigateable { + + var navigateablePageViewController: PageboyViewController { + return self + } + + @objc func pageboyNavigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + pageboyNavigateKeyCommandHandler(sender) + } + +} diff --git a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift index 91ab5036c..f82a8f9bf 100644 --- a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift +++ b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift @@ -131,3 +131,98 @@ extension DiscoveryHashtagsViewController: ScrollViewContainer { tableView } } + +extension DiscoveryHashtagsViewController { + override var keyCommands: [UIKeyCommand]? { + return navigationKeyCommands + } +} + +// MARK: - TableViewControllerNavigateable +extension DiscoveryHashtagsViewController: TableViewControllerNavigateable { + @objc func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + navigateKeyCommandHandler(sender) + } + + func navigate(direction: TableViewNavigationDirection) { + if let indexPathForSelectedRow = tableView.indexPathForSelectedRow { + // navigate up/down on the current selected item + navigateToTag(direction: direction, indexPath: indexPathForSelectedRow) + } else { + // set first visible item selected + navigateToFirstVisibleStatus() + } + } + + private func navigateToTag(direction: TableViewNavigationDirection, indexPath: IndexPath) { + guard let diffableDataSource = viewModel.diffableDataSource else { return } + let items = diffableDataSource.snapshot().itemIdentifiers + guard let selectedItem = diffableDataSource.itemIdentifier(for: indexPath), + let selectedItemIndex = items.firstIndex(of: selectedItem) else { + return + } + + let _navigateToItem: DiscoveryItem? = { + var index = selectedItemIndex + while 0.. 1 { + // drop first when visible not the first cell of table + visibleItems.removeFirst() + } + guard let item = visibleItems.first, let indexPath = diffableDataSource.indexPath(for: item) else { return } + let scrollPosition: UITableView.ScrollPosition = overrideNavigationScrollPosition ?? Self.navigateScrollPosition(tableView: tableView, indexPath: indexPath) + tableView.selectRow(at: indexPath, animated: true, scrollPosition: scrollPosition) + } + + static func validNavigateableItem(_ item: DiscoveryItem) -> Bool { + switch item { + case .hashtag: + return true + default: + return false + } + } + + func open() { + guard let indexPathForSelectedRow = tableView.indexPathForSelectedRow else { return } + guard let diffableDataSource = viewModel.diffableDataSource else { return } + guard let item = diffableDataSource.itemIdentifier(for: indexPathForSelectedRow) else { return } + + guard case let .hashtag(tag) = item else { return } + let hashtagTimelineViewModel = HashtagTimelineViewModel(context: context, hashtag: tag.name) + coordinator.present( + scene: .hashtagTimeline(viewModel: hashtagTimelineViewModel), + from: self, + transition: .show + ) + } +} diff --git a/Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewController.swift b/Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewController.swift index 259b21d36..a1d5b5e76 100644 --- a/Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewController.swift +++ b/Mastodon/Scene/Discovery/Posts/DiscoveryPostsViewController.swift @@ -171,3 +171,20 @@ extension DiscoveryPostsViewController: DiscoveryIntroBannerViewDelegate { UserDefaults.shared.discoveryIntroBannerNeedsHidden = true } } + +extension DiscoveryPostsViewController { + override var keyCommands: [UIKeyCommand]? { + return navigationKeyCommands + statusNavigationKeyCommands + } +} + +// MARK: - StatusTableViewControllerNavigateable +extension DiscoveryPostsViewController: StatusTableViewControllerNavigateable { + @objc func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + navigateKeyCommandHandler(sender) + } + + @objc func statusKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + statusKeyCommandHandler(sender) + } +} diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift index 3b8db5d56..31de401d2 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift @@ -84,7 +84,6 @@ extension HashtagTimelineViewController { ]) tableView.delegate = self -// tableView.prefetchDataSource = self viewModel.setupDiffableDataSource( tableView: tableView, statusTableViewCellDelegate: self @@ -158,27 +157,6 @@ extension HashtagTimelineViewController { } -// MARK: - TableViewCellHeightCacheableContainer -//extension HashtagTimelineViewController: TableViewCellHeightCacheableContainer { -// var cellFrameCache: NSCache { -// return viewModel.cellFrameCache -// } -//} - -//// MARK: - UIScrollViewDelegate -//extension HashtagTimelineViewController { -// func scrollViewDidScroll(_ scrollView: UIScrollView) { -// aspectScrollViewDidScroll(scrollView) -// } -//} - -//extension HashtagTimelineViewController: LoadMoreConfigurableTableViewContainer { -// typealias BottomLoaderTableViewCell = TimelineBottomLoaderTableViewCell -// typealias LoadingState = HashtagTimelineViewModel.LoadOldestState.Loading -// var loadMoreConfigurableTableView: UITableView { return tableView } -// var loadMoreConfigurableStateMachine: GKStateMachine { return viewModel.loadOldestStateMachine } -//} - // MARK: - UITableViewDelegate extension HashtagTimelineViewController: UITableViewDelegate, AutoGenerateTableViewDelegate { // sourcery:inline:HashtagTimelineViewController.AutoGenerateTableViewDelegate @@ -206,82 +184,23 @@ extension HashtagTimelineViewController: UITableViewDelegate, AutoGenerateTableV } // sourcery:end -// func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat { -// return aspectTableView(tableView, estimatedHeightForRowAt: indexPath) -// } -// -// func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) { -// aspectTableView(tableView, willDisplay: cell, forRowAt: indexPath) -// } -// -// func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { -// aspectTableView(tableView, didEndDisplaying: cell, forRowAt: indexPath) -// } -// -// func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { -// aspectTableView(tableView, didSelectRowAt: indexPath) -// } -// -// func tableView(_ tableView: UITableView, contextMenuConfigurationForRowAt indexPath: IndexPath, point: CGPoint) -> UIContextMenuConfiguration? { -// return aspectTableView(tableView, contextMenuConfigurationForRowAt: indexPath, point: point) -// } -// -// func tableView(_ tableView: UITableView, previewForHighlightingContextMenuWithConfiguration configuration: UIContextMenuConfiguration) -> UITargetedPreview? { -// return aspectTableView(tableView, previewForHighlightingContextMenuWithConfiguration: configuration) -// } -// -// func tableView(_ tableView: UITableView, previewForDismissingContextMenuWithConfiguration configuration: UIContextMenuConfiguration) -> UITargetedPreview? { -// return aspectTableView(tableView, previewForDismissingContextMenuWithConfiguration: configuration) -// } -// -// func tableView(_ tableView: UITableView, willPerformPreviewActionForMenuWith configuration: UIContextMenuConfiguration, animator: UIContextMenuInteractionCommitAnimating) { -// aspectTableView(tableView, willPerformPreviewActionForMenuWith: configuration, animator: animator) -// } - } -// MARK: - UITableViewDataSourcePrefetching -//extension HashtagTimelineViewController: UITableViewDataSourcePrefetching { -// func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { -// aspectTableView(tableView, prefetchRowsAt: indexPaths) -// } -//} - // MARK: - StatusTableViewCellDelegate extension HashtagTimelineViewController: StatusTableViewCellDelegate { } -// MARK: - AVPlayerViewControllerDelegate -//extension HashtagTimelineViewController: AVPlayerViewControllerDelegate { -// -// func playerViewController(_ playerViewController: AVPlayerViewController, willBeginFullScreenPresentationWithAnimationCoordinator coordinator: UIViewControllerTransitionCoordinator) { -// aspectPlayerViewController(playerViewController, willBeginFullScreenPresentationWithAnimationCoordinator: coordinator) -// } -// -// func playerViewController(_ playerViewController: AVPlayerViewController, willEndFullScreenPresentationWithAnimationCoordinator coordinator: UIViewControllerTransitionCoordinator) { -// aspectPlayerViewController(playerViewController, willEndFullScreenPresentationWithAnimationCoordinator: coordinator) -// } -// -//} - -// MARK: - StatusTableViewCellDelegate -//extension HashtagTimelineViewController: StatusTableViewCellDelegate { -// weak var playerViewControllerDelegate: AVPlayerViewControllerDelegate? { return self } -// func parent() -> UIViewController { return self } -//} - -//extension HashtagTimelineViewController { -// override var keyCommands: [UIKeyCommand]? { -// return navigationKeyCommands + statusNavigationKeyCommands -// } -//} -// -//// MARK: - StatusTableViewControllerNavigateable -//extension HashtagTimelineViewController: StatusTableViewControllerNavigateable { -// @objc func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { -// navigateKeyCommandHandler(sender) -// } -// -// @objc func statusKeyCommandHandlerRelay(_ sender: UIKeyCommand) { -// statusKeyCommandHandler(sender) -// } -//} +extension HashtagTimelineViewController { + override var keyCommands: [UIKeyCommand]? { + return navigationKeyCommands + statusNavigationKeyCommands + } +} +// MARK: - StatusTableViewControllerNavigateable +extension HashtagTimelineViewController: StatusTableViewControllerNavigateable { + @objc func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + navigateKeyCommandHandler(sender) + } + + @objc func statusKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + statusKeyCommandHandler(sender) + } +} diff --git a/Mastodon/Scene/Profile/ProfileViewController.swift b/Mastodon/Scene/Profile/ProfileViewController.swift index b376ebcf9..4c3f9820a 100644 --- a/Mastodon/Scene/Profile/ProfileViewController.swift +++ b/Mastodon/Scene/Profile/ProfileViewController.swift @@ -13,8 +13,9 @@ import MetaTextKit import MastodonAsset import MastodonLocalization import MastodonUI -import Tabman import CoreDataStack +import Tabman +import Pageboy protocol ProfileViewModelEditable { func isEdited() -> Bool @@ -1155,25 +1156,28 @@ extension ProfileViewController: ScrollViewContainer { } } -//extension ProfileViewController { -// -// override var keyCommands: [UIKeyCommand]? { -// if !viewModel.isEditing.value { -// return segmentedControlNavigateKeyCommands -// } -// -// return nil -// } -// -//} +extension ProfileViewController { + + override var keyCommands: [UIKeyCommand]? { + if !viewModel.isEditing.value { + return pageboyNavigateKeyCommands + } + + return nil + } + +} + +// MARK: - PageboyNavigateable +extension ProfileViewController: PageboyNavigateable { + + var navigateablePageViewController: PageboyViewController { + return profileSegmentedViewController.pagingViewController + } + + @objc func pageboyNavigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + pageboyNavigateKeyCommandHandler(sender) + } + +} -// MARK: - SegmentedControlNavigateable -//extension ProfileViewController: SegmentedControlNavigateable { -// var navigateableSegmentedControl: UISegmentedControl { -// profileHeaderViewController.pageSegmentedControl -// } -// -// @objc func segmentedControlNavigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { -// segmentedControlNavigateKeyCommandHandler(sender) -// } -//} diff --git a/Mastodon/Scene/Root/ContentSplitViewController.swift b/Mastodon/Scene/Root/ContentSplitViewController.swift index 03e203107..0058f5f6e 100644 --- a/Mastodon/Scene/Root/ContentSplitViewController.swift +++ b/Mastodon/Scene/Root/ContentSplitViewController.swift @@ -77,6 +77,16 @@ extension ContentSplitViewController { mainTabBarController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor), ]) + // response keyboard command tab switch + mainTabBarController.$currentTab + .sink { [weak self] tab in + guard let self = self else { return } + if tab != self.currentSupplementaryTab { + self.currentSupplementaryTab = tab + } + } + .store(in: &disposeBag) + $currentSupplementaryTab .removeDuplicates() .sink(receiveValue: { [weak self] tab in From a957c8bb732e6dd33d112ec50bdf195f0350c0ac Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 18:44:17 +0800 Subject: [PATCH 116/571] feat: add keyboard commands for discovery news table --- .../DiscoveryHashtagsViewController.swift | 4 +- .../News/DiscoveryNewsViewController.swift | 96 +++++++++++++++++++ 2 files changed, 98 insertions(+), 2 deletions(-) diff --git a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift index f82a8f9bf..6e6d96924 100644 --- a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift +++ b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewController.swift @@ -150,7 +150,7 @@ extension DiscoveryHashtagsViewController: TableViewControllerNavigateable { navigateToTag(direction: direction, indexPath: indexPathForSelectedRow) } else { // set first visible item selected - navigateToFirstVisibleStatus() + navigateToFirstVisibleTag() } } @@ -185,7 +185,7 @@ extension DiscoveryHashtagsViewController: TableViewControllerNavigateable { tableView.selectRow(at: indexPath, animated: true, scrollPosition: scrollPosition) } - private func navigateToFirstVisibleStatus() { + private func navigateToFirstVisibleTag() { guard let indexPathsForVisibleRows = tableView.indexPathsForVisibleRows else { return } guard let diffableDataSource = viewModel.diffableDataSource else { return } diff --git a/Mastodon/Scene/Discovery/News/DiscoveryNewsViewController.swift b/Mastodon/Scene/Discovery/News/DiscoveryNewsViewController.swift index 4042e2cd5..f73602ae4 100644 --- a/Mastodon/Scene/Discovery/News/DiscoveryNewsViewController.swift +++ b/Mastodon/Scene/Discovery/News/DiscoveryNewsViewController.swift @@ -131,3 +131,99 @@ extension DiscoveryNewsViewController: ScrollViewContainer { tableView } } + +extension DiscoveryNewsViewController { + override var keyCommands: [UIKeyCommand]? { + return navigationKeyCommands + } +} + +extension DiscoveryNewsViewController: TableViewControllerNavigateable { + + func navigate(direction: TableViewNavigationDirection) { + if let indexPathForSelectedRow = tableView.indexPathForSelectedRow { + // navigate up/down on the current selected item + navigateToLink(direction: direction, indexPath: indexPathForSelectedRow) + } else { + // set first visible item selected + navigateToFirstVisibleLink() + } + } + + private func navigateToLink(direction: TableViewNavigationDirection, indexPath: IndexPath) { + guard let diffableDataSource = viewModel.diffableDataSource else { return } + let items = diffableDataSource.snapshot().itemIdentifiers + guard let selectedItem = diffableDataSource.itemIdentifier(for: indexPath), + let selectedItemIndex = items.firstIndex(of: selectedItem) else { + return + } + + let _navigateToItem: DiscoveryItem? = { + var index = selectedItemIndex + while 0.. 1 { + // drop first when visible not the first cell of table + visibleItems.removeFirst() + } + guard let item = visibleItems.first, let indexPath = diffableDataSource.indexPath(for: item) else { return } + let scrollPosition: UITableView.ScrollPosition = overrideNavigationScrollPosition ?? Self.navigateScrollPosition(tableView: tableView, indexPath: indexPath) + tableView.selectRow(at: indexPath, animated: true, scrollPosition: scrollPosition) + } + + static func validNavigateableItem(_ item: DiscoveryItem) -> Bool { + switch item { + case .link: + return true + default: + return false + } + } + + func open() { + guard let indexPathForSelectedRow = tableView.indexPathForSelectedRow else { return } + guard let diffableDataSource = viewModel.diffableDataSource else { return } + guard let item = diffableDataSource.itemIdentifier(for: indexPathForSelectedRow) else { return } + + guard case let .link(link) = item else { return } + guard let url = URL(string: link.url) else { return } + coordinator.present( + scene: .safari(url: url), + from: self, + transition: .safariPresent(animated: true, completion: nil) + ) + } + + func navigateKeyCommandHandlerRelay(_ sender: UIKeyCommand) { + navigateKeyCommandHandler(sender) + } + +} From 44a3aa51fcc826ef76c504ff7315bfb1e55eda47 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 12:54:37 +0200 Subject: [PATCH 117/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar_SA/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index 463f9e9da..f06aba50f 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -625,7 +625,7 @@ }, "step_three": { "step_3_of_4": "الخطوة 3 مِن أصل 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "are_there_any_posts_that_back_up_this_report": "هَل هُناكَ أيُّ مَنشُوراتٍ أُخرَى تَتَوافَقُ مَعَ هَذَا التَّقرير؟", "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق" }, "step_four": { @@ -641,7 +641,7 @@ "mute_user": "كَتمُ %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", "block_user": "حَظرُ %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه." } }, "preview": { From f924815594fa60d16853e56141d87ca386c0f1e1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 12:54:38 +0200 Subject: [PATCH 118/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv_SE/app.json | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index 636e2193b..d75705754 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Sök gemenskaper", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Sök gemenskaper eller ange URL" }, "empty_state": { "finding_servers": "Söker tillgängliga servrar...", @@ -345,8 +345,8 @@ "published": "Publicerat!", "Publishing": "Publicerar inlägget...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Logo-knapp", + "logo_hint": "Tryck för att bläddra till toppen och tryck igen för föregående plats" } } }, @@ -603,45 +603,45 @@ "text_placeholder": "Skriv eller klistra in ytterligare kommentarer", "reported": "RAPPORTERAD", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "Steg 1 av 4", + "whats_wrong_with_this_post": "Vad är fel med det här inlägget?", + "whats_wrong_with_this_account": "Vad är fel med det här kontot?", + "whats_wrong_with_this_username": "Vad är fel med %s?", + "select_the_best_match": "Välj den bästa träffen", + "i_dont_like_it": "Jag tycker inte om det", + "it_is_not_something_you_want_to_see": "Det är inget som du vill se", + "its_spam": "Det är skräppost", + "malicious_links_fake_engagement_or_repetetive_replies": "Skadliga länkar, bedrägligt beteende eller repetitiva svar", + "it_violates_server_rules": "Det bryter mot serverns regler", + "you_are_aware_that_it_breaks_specific_rules": "Du är medveten om att det bryter mot specifika regler", + "its_something_else": "Det är något annat", + "the_issue_does_not_fit_into_other_categories": "Frågan passar inte in i andra kategorier" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Steg 2 av 4", + "which_rules_are_being_violated": "Vilka regler överträds?", + "select_all_that_apply": "Välj allt som stämmer", + "i_just_don’t_like_it": "Jag tycker bara inte om det" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Steg 3 av 4", + "are_there_any_posts_that_back_up_this_report": "Finns det några inlägg som stöder denna rapport?", + "select_all_that_apply": "Välj allt som stämmer" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Steg 4 av 4", + "is_there_anything_else_we_should_know": "Finns det något annat vi borde veta?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "dont_want_to_see_this": "Vill du inte se det här?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "När du ser något som du inte gillar på Mastodon kan du ta bort personen från din upplevelse.", + "unfollow": "Avfölj", + "unfollowed": "Slutade följa", + "unfollow_user": "Avfölj %s", + "mute_user": "Tysta %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade.", + "block_user": "Blockera %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats." } }, "preview": { From 66d23432c19923f3501609192040719cacbe2513 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 19:22:22 +0800 Subject: [PATCH 119/571] fix: pick server table margin not works issue --- .../PickServer/MastodonPickServerViewController.swift | 11 ++++++----- .../PickServer/MastodonPickServerViewModel.swift | 3 ++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewController.swift b/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewController.swift index ffc7708f5..d05b446ae 100644 --- a/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewController.swift +++ b/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewController.swift @@ -92,7 +92,7 @@ extension MastodonPickServerViewController { tableView.topAnchor.constraint(equalTo: view.topAnchor), tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor), tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor), - tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor), + tableView.bottomAnchor.constraint(equalTo: view.layoutMarginsGuide.bottomAnchor), ]) navigationActionView.translatesAutoresizingMaskIntoConstraints = false @@ -107,10 +107,10 @@ extension MastodonPickServerViewController { ]) navigationActionView - .observe(\.bounds, options: [.initial, .new]) { [weak self] navigationActionView, _ in + .observe(\.bounds, options: [.initial, .new]) { [weak self] _, _ in guard let self = self else { return } - let inset = navigationActionView.frame.height - self.tableView.contentInset.bottom = inset + let inset = self.navigationActionView.frame.height + self.viewModel.additionalTableViewInsets.bottom = inset } .store(in: &observations) @@ -149,7 +149,8 @@ extension MastodonPickServerViewController { KeyboardResponderService .configure( scrollView: tableView, - layoutNeedsUpdate: viewModel.viewDidAppear.eraseToAnyPublisher() + layoutNeedsUpdate: viewModel.viewDidAppear.eraseToAnyPublisher(), + additionalSafeAreaInsets: viewModel.$additionalTableViewInsets.eraseToAnyPublisher() ) .store(in: &disposeBag) diff --git a/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewModel.swift b/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewModel.swift index 749843880..b077cbbe1 100644 --- a/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewModel.swift +++ b/Mastodon/Scene/Onboarding/PickServer/MastodonPickServerViewModel.swift @@ -46,7 +46,8 @@ class MastodonPickServerViewModel: NSObject { let unindexedServers = CurrentValueSubject<[Mastodon.Entity.Server]?, Never>([]) // set nil when loading let viewWillAppear = PassthroughSubject() let viewDidAppear = CurrentValueSubject(Void()) - + @Published var additionalTableViewInsets: UIEdgeInsets = .zero + // output var diffableDataSource: UITableViewDiffableDataSource? private(set) lazy var loadIndexedServerStateMachine: GKStateMachine = { From 9d0e2b68b45054cfe04f0ce559323085b162f55c Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 19:39:58 +0800 Subject: [PATCH 120/571] chore: workaround CocoaPods CDN issue --- .github/scripts/setup.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/scripts/setup.sh b/.github/scripts/setup.sh index 9b52d5b9e..0fc93db11 100755 --- a/.github/scripts/setup.sh +++ b/.github/scripts/setup.sh @@ -1,5 +1,8 @@ #!/bin/bash +# workaround https://github.com/CocoaPods/CocoaPods/issues/11355 +echo "$(echo -n 'source "https://github.com/CocoaPods/Specs.git"\n'; cat Podfile)" > Podfile + # Install Ruby Bundler gem install bundler:2.3.11 From ea6c9fc87e1348be26ed6f0bb6af4dd79099e221 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 19:53:40 +0800 Subject: [PATCH 121/571] chore: update setup.sh --- .github/scripts/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/scripts/setup.sh b/.github/scripts/setup.sh index 0fc93db11..845730f1f 100755 --- a/.github/scripts/setup.sh +++ b/.github/scripts/setup.sh @@ -1,7 +1,7 @@ #!/bin/bash # workaround https://github.com/CocoaPods/CocoaPods/issues/11355 -echo "$(echo -n 'source "https://github.com/CocoaPods/Specs.git"\n'; cat Podfile)" > Podfile +sed -i '' $'1s/^/source "https:\\/\\/github.com\\/CocoaPods\\/Specs.git"\\\n\\\n/' Podfile # Install Ruby Bundler gem install bundler:2.3.11 From f5af31585009673227c2466ff21e6b8b8e619f95 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 13:54:52 +0200 Subject: [PATCH 122/571] New translations app.json (Turkish) --- .../StringsConvertor/input/tr_TR/app.json | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/Localization/StringsConvertor/input/tr_TR/app.json b/Localization/StringsConvertor/input/tr_TR/app.json index 241198c03..89659407c 100644 --- a/Localization/StringsConvertor/input/tr_TR/app.json +++ b/Localization/StringsConvertor/input/tr_TR/app.json @@ -603,39 +603,39 @@ "text_placeholder": "Ek yorum yazın veya yapıştırın", "reported": "RAPORLANDI", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", + "step_1_of_4": "Adım 1/4", + "whats_wrong_with_this_post": "Bu gönderi ile ilgili sorun nedir?", + "whats_wrong_with_this_account": "Bu hesap ile ilgili sorun nedir?", + "whats_wrong_with_this_username": "%s kişisinin sorunu nedir?", + "select_the_best_match": "En iyi seçeneceği seçiniz", + "i_dont_like_it": "Beğenmedim", + "it_is_not_something_you_want_to_see": "Görmek isteyeceğim bir şey değil", + "its_spam": "Spam", "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", + "it_violates_server_rules": "Sunucu kurallarını ihlal ediyor", "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "its_something_else": "Başka bir şey", + "the_issue_does_not_fit_into_other_categories": "Sorun bunlardan biri değil" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Adım 2/4", + "which_rules_are_being_violated": "Hangi kurallar ihlal ediliyor?", + "select_all_that_apply": "Geçerli olan tümünü seçiniz", + "i_just_don’t_like_it": "Beğenmedim" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Adım 3/4", + "are_there_any_posts_that_back_up_this_report": "Bu bildirimi destekleyecek herhangi bir gönderi var mı?", + "select_all_that_apply": "Geçerli olanların tümünü seçiniz" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Adım 4/4", + "is_there_anything_else_we_should_know": "Bilmemiz gereken başka bir şey var mı?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", + "dont_want_to_see_this": "Bunu görmek istemiyor musunuz?", "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", + "unfollow": "Takibi bırak", "unfollowed": "Unfollowed", "unfollow_user": "Unfollow %s", "mute_user": "Mute %s", From 11762100eb9234a13f7d58de3d5520940af23216 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 20:55:37 +0800 Subject: [PATCH 123/571] chore: update i18n resources --- .../Generated/Strings.swift | 88 +++++++++++++++++++ .../Resources/ar.lproj/Localizable.strings | 38 +++++++- .../Resources/ca.lproj/Localizable.strings | 34 +++++++ .../Resources/ckb.lproj/Localizable.strings | 34 +++++++ .../Resources/de.lproj/Localizable.strings | 34 +++++++ .../Resources/en.lproj/Localizable.strings | 34 +++++++ .../es-419.lproj/Localizable.strings | 34 +++++++ .../Resources/es.lproj/Localizable.strings | 34 +++++++ .../Resources/eu-ES.lproj/Localizable.strings | 34 +++++++ .../Resources/fr.lproj/Localizable.strings | 34 +++++++ .../Resources/gd-GB.lproj/Localizable.strings | 34 +++++++ .../Resources/gl.lproj/Localizable.strings | 34 +++++++ .../Resources/it.lproj/Localizable.strings | 34 +++++++ .../Resources/ja.lproj/Localizable.strings | 34 +++++++ .../Resources/kab.lproj/Localizable.strings | 34 +++++++ .../Resources/ku.lproj/Localizable.strings | 34 +++++++ .../Resources/nl.lproj/Localizable.strings | 34 +++++++ .../Resources/ru.lproj/Localizable.strings | 34 +++++++ .../Resources/th.lproj/Localizable.strings | 34 +++++++ .../Resources/tr.lproj/Localizable.strings | 34 +++++++ .../Resources/vi.lproj/Localizable.strings | 34 +++++++ .../zh-Hans.lproj/Localizable.strings | 34 +++++++ .../zh-Hant.lproj/Localizable.strings | 34 +++++++ 23 files changed, 838 insertions(+), 2 deletions(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift index de6b55cbd..b5403a142 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift +++ b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift @@ -585,6 +585,12 @@ public enum L10n { public static let published = L10n.tr("Localizable", "Scene.HomeTimeline.NavigationBarState.Published") /// Publishing post... public static let publishing = L10n.tr("Localizable", "Scene.HomeTimeline.NavigationBarState.Publishing") + public enum Accessibility { + /// Tap to scroll to top and tap again to previous location + public static let logoHint = L10n.tr("Localizable", "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint") + /// Logo Button + public static let logoLabel = L10n.tr("Localizable", "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel") + } } } public enum Notification { @@ -840,6 +846,86 @@ public enum L10n { } /// Report public static let titleReport = L10n.tr("Localizable", "Scene.Report.TitleReport") + public enum StepFinal { + /// Block %@ + public static func blockUser(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Report.StepFinal.BlockUser", String(describing: p1)) + } + /// Don’t want to see this? + public static let dontWantToSeeThis = L10n.tr("Localizable", "Scene.Report.StepFinal.DontWantToSeeThis") + /// Mute %@ + public static func muteUser(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Report.StepFinal.MuteUser", String(describing: p1)) + } + /// They will no longer be able to follow or see your posts, but they can see if they’ve been blocked. + public static let theyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked = L10n.tr("Localizable", "Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked") + /// Unfollow + public static let unfollow = L10n.tr("Localizable", "Scene.Report.StepFinal.Unfollow") + /// Unfollowed + public static let unfollowed = L10n.tr("Localizable", "Scene.Report.StepFinal.Unfollowed") + /// Unfollow %@ + public static func unfollowUser(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Report.StepFinal.UnfollowUser", String(describing: p1)) + } + /// When you see something you don’t like on Mastodon, you can remove the person from your experience. + public static let whenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience = L10n.tr("Localizable", "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience.") + /// You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted. + public static let youWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted = L10n.tr("Localizable", "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted") + } + public enum StepFour { + /// Is there anything else we should know? + public static let isThereAnythingElseWeShouldKnow = L10n.tr("Localizable", "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow") + /// Step 4 of 4 + public static let step4Of4 = L10n.tr("Localizable", "Scene.Report.StepFour.Step4Of4") + } + public enum StepOne { + /// I don’t like it + public static let iDontLikeIt = L10n.tr("Localizable", "Scene.Report.StepOne.IDontLikeIt") + /// It is not something you want to see + public static let itIsNotSomethingYouWantToSee = L10n.tr("Localizable", "Scene.Report.StepOne.ItIsNotSomethingYouWantToSee") + /// It’s something else + public static let itsSomethingElse = L10n.tr("Localizable", "Scene.Report.StepOne.ItsSomethingElse") + /// It’s spam + public static let itsSpam = L10n.tr("Localizable", "Scene.Report.StepOne.ItsSpam") + /// It violates server rules + public static let itViolatesServerRules = L10n.tr("Localizable", "Scene.Report.StepOne.ItViolatesServerRules") + /// Malicious links, fake engagement, or repetetive replies + public static let maliciousLinksFakeEngagementOrRepetetiveReplies = L10n.tr("Localizable", "Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies") + /// Select the best match + public static let selectTheBestMatch = L10n.tr("Localizable", "Scene.Report.StepOne.SelectTheBestMatch") + /// Step 1 of 4 + public static let step1Of4 = L10n.tr("Localizable", "Scene.Report.StepOne.Step1Of4") + /// The issue does not fit into other categories + public static let theIssueDoesNotFitIntoOtherCategories = L10n.tr("Localizable", "Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories") + /// What's wrong with this account? + public static let whatsWrongWithThisAccount = L10n.tr("Localizable", "Scene.Report.StepOne.WhatsWrongWithThisAccount") + /// What's wrong with this post? + public static let whatsWrongWithThisPost = L10n.tr("Localizable", "Scene.Report.StepOne.WhatsWrongWithThisPost") + /// What's wrong with %@? + public static func whatsWrongWithThisUsername(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Report.StepOne.WhatsWrongWithThisUsername", String(describing: p1)) + } + /// You are aware that it breaks specific rules + public static let youAreAwareThatItBreaksSpecificRules = L10n.tr("Localizable", "Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules") + } + public enum StepThree { + /// Are there any posts that back up this report? + public static let areThereAnyPostsThatBackUpThisReport = L10n.tr("Localizable", "Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport") + /// Select all that apply + public static let selectAllThatApply = L10n.tr("Localizable", "Scene.Report.StepThree.SelectAllThatApply") + /// Step 3 of 4 + public static let step3Of4 = L10n.tr("Localizable", "Scene.Report.StepThree.Step3Of4") + } + public enum StepTwo { + /// I just don’t like it + public static let iJustDonTLikeIt = L10n.tr("Localizable", "Scene.Report.StepTwo.IJustDon’tLikeIt") + /// Select all that apply + public static let selectAllThatApply = L10n.tr("Localizable", "Scene.Report.StepTwo.SelectAllThatApply") + /// Step 2 of 4 + public static let step2Of4 = L10n.tr("Localizable", "Scene.Report.StepTwo.Step2Of4") + /// Which rules are being violated? + public static let whichRulesAreBeingViolated = L10n.tr("Localizable", "Scene.Report.StepTwo.WhichRulesAreBeingViolated") + } } public enum Search { /// Search @@ -947,6 +1033,8 @@ public enum L10n { public enum Input { /// Search servers public static let placeholder = L10n.tr("Localizable", "Scene.ServerPicker.Input.Placeholder") + /// Search communities or enter URL + public static let searchServersOrEnterUrl = L10n.tr("Localizable", "Scene.ServerPicker.Input.SearchServersOrEnterUrl") } public enum Label { /// CATEGORY diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index 09ab59f78..c49b9f9d6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -211,6 +211,8 @@ "Scene.Favorite.Title" = "مُفضَّلَتُك"; "Scene.Follower.Footer" = "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى."; "Scene.Following.Footer" = "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "ُّزِرُّ الشِّعار"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "إظهار منشورات جديدة"; "Scene.HomeTimeline.NavigationBarState.Offline" = "غَير مُتَّصِل"; "Scene.HomeTimeline.NavigationBarState.Published" = "تمَّ النَّشر!"; @@ -291,8 +293,39 @@ "Scene.Report.Reported" = "مُبْلَغٌ عَنه"; "Scene.Report.Send" = "إرسال البلاغ"; "Scene.Report.SkipToSend" = "إرسال بدون تعليق"; -"Scene.Report.Step1" = "الخطوة الأولى مِن أصل اثنتين"; -"Scene.Report.Step2" = "الخطوة الثانية والأخيرة"; +"Scene.Report.Step1" = "الخطوة 1 مِن أصل 2"; +"Scene.Report.Step2" = "الخطوة 2 مِن أصل 2"; +"Scene.Report.StepFinal.BlockUser" = "حَظرُ %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "ألَا تُريدُ رُؤيَةَ هَذَا؟"; +"Scene.Report.StepFinal.MuteUser" = "كَتمُ %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه."; +"Scene.Report.StepFinal.Unfollow" = "إلغاءُ المُتابَعَة"; +"Scene.Report.StepFinal.UnfollowUser" = "إلغاءُ مُتابَعَةِ %@"; +"Scene.Report.StepFinal.Unfollowed" = "أُلغِيَت المُتابَعَة"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟"; +"Scene.Report.StepFour.Step4Of4" = "الخطوة 4 مِن أصل 4"; +"Scene.Report.StepOne.IDontLikeIt" = "لا يُعجِبُني"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "إنَّهُ ليسَ شيئًا تُريدُ رُؤيَتَه"; +"Scene.Report.StepOne.ItViolatesServerRules" = "يَنتَهِكُ قَواعِدَ الخادِم"; +"Scene.Report.StepOne.ItsSomethingElse" = "إنَّهُ شَيءٌ آخَر"; +"Scene.Report.StepOne.ItsSpam" = "إنَّهُ غَيرٌ مَرغوبٍ فيه"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "رَوابِطٌ ضَارَّة، اِرتِباطاتٌ مُزيَّفَة أو رُدودٌ مُتَكَرِّرَة"; +"Scene.Report.StepOne.SelectTheBestMatch" = "اِختَر أفضلَ تَطابُق"; +"Scene.Report.StepOne.Step1Of4" = "الخطوة 1 مِن أصل 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "المُشكِلَةُ لَا تَتَناسَبُ مَعَ الفِئاتِ الأُخرَى"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "ما المُشكِلَةُ فِي هَذَا الحِساب؟"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "ما المُشكِلَةُ فِي هَذَا المَنشُور؟"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "ما المُشكِلَة مَعَ %@؟"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "أنتَ مُدِركٌ لِانتِهاكِهِ قَواعِدًا مُحَدَّدَة"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "هَل هُناكَ أيُّ مَنشُوراتٍ أُخرَى تَتَوافَقُ مَعَ هَذَا التَّقرير؟"; +"Scene.Report.StepThree.SelectAllThatApply" = "اِختَر كُلَّ ما يَنطَبِق"; +"Scene.Report.StepThree.Step3Of4" = "الخطوة 3 مِن أصل 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "أنا فَقَط لا يُعجِبُني"; +"Scene.Report.StepTwo.SelectAllThatApply" = "اِختَر كُلَّ ما يَنطَبِق"; +"Scene.Report.StepTwo.Step2Of4" = "الخطوة 2 مِن أصل 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "مَا هِيَ القَواعِدُ الَّتي تُنتَهَك؟"; "Scene.Report.TextPlaceholder" = "اكتب أو الصق تعليقات إضافيَّة"; "Scene.Report.Title" = "الإبلاغ عن %@"; "Scene.Report.TitleReport" = "إبلاغ"; @@ -333,6 +366,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "يجري إيجاد خوادم متوفِّرَة..."; "Scene.ServerPicker.EmptyState.NoResults" = "لا توجد نتائج"; "Scene.ServerPicker.Input.Placeholder" = "اِبحَث عن خادِم أو انضم إلى آخر خاص بك..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL"; "Scene.ServerPicker.Label.Category" = "الفئة"; "Scene.ServerPicker.Label.Language" = "اللُّغة"; "Scene.ServerPicker.Label.Users" = "مُستَخدِم"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index 3c02a5010..502b26729 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -210,6 +210,8 @@ carregat a Mastodon."; "Scene.Favorite.Title" = "Els teus Favorits"; "Scene.Follower.Footer" = "Els seguidors d'altres servidors no son mostrats."; "Scene.Following.Footer" = "Els seguits d'altres servidors no son mostrats."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Botó de logotip"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Veure noves publicacions"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Fora de línia"; "Scene.HomeTimeline.NavigationBarState.Published" = "Publicat!"; @@ -292,6 +294,37 @@ carregat a Mastodon."; "Scene.Report.SkipToSend" = "Envia sense comentaris"; "Scene.Report.Step1" = "Pas 1 de 2"; "Scene.Report.Step2" = "Pas 2 de 2"; +"Scene.Report.StepFinal.BlockUser" = "Bloca %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "No vols veure això?"; +"Scene.Report.StepFinal.MuteUser" = "Silencia %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats."; +"Scene.Report.StepFinal.Unfollow" = "Deixa de seguir"; +"Scene.Report.StepFinal.UnfollowUser" = "Deixa de seguir %@"; +"Scene.Report.StepFinal.Unfollowed" = "S'ha deixat de seguir"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Quan veus alguna cosa que no t'agrada a Mastodon, pots eliminar la persona de la vostra experiència."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Hi ha res més que hauríem de saber?"; +"Scene.Report.StepFour.Step4Of4" = "Pas 4 de 4"; +"Scene.Report.StepOne.IDontLikeIt" = "No m'agrada"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "No és una cosa que vulguis veure"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Infringeix les normes del servidor"; +"Scene.Report.StepOne.ItsSomethingElse" = "És una altra cosa"; +"Scene.Report.StepOne.ItsSpam" = "És contingut brossa"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Enllaços maliciosos, compromís falç o respostes repetitives"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Selecciona la millor coincidència"; +"Scene.Report.StepOne.Step1Of4" = "Pas 1 de 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "El problema no encaixa en altres categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Quin és el problema amb aquest compte?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Quin és el problema amb aquesta publicació?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Quin és el problema amb %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Ets conscient que incompleix normes específiques"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Hi ha alguna publicació que recolzi aquest informe?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Selecciona tot el que correspongui"; +"Scene.Report.StepThree.Step3Of4" = "Pas 3 de 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Simplement no m'agrada"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Selecciona tot el que correspongui"; +"Scene.Report.StepTwo.Step2Of4" = "Pas 2 de 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Quines normes s'estan infringint?"; "Scene.Report.TextPlaceholder" = "Escriu o enganxa comentaris addicionals"; "Scene.Report.Title" = "Informa sobre %@"; "Scene.Report.TitleReport" = "Informe"; @@ -332,6 +365,7 @@ carregat a Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Cercant els servidors disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "No hi ha resultats"; "Scene.ServerPicker.Input.Placeholder" = "Cerca servidors"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca comunitats o introdueix l'URL"; "Scene.ServerPicker.Label.Category" = "CATEGORIA"; "Scene.ServerPicker.Label.Language" = "LLENGUATGE"; "Scene.ServerPicker.Label.Users" = "USUARIS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings index 1db4f7936..89ba6315d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings @@ -209,6 +209,8 @@ "Scene.Favorite.Title" = "بەدڵبووەکانت"; "Scene.Follower.Footer" = "شوێنکەوتووەکانی لە ڕاژەکارەکانی ترەوە نیشان نادرێت."; "Scene.Following.Footer" = "شوێنکەوتنەکانی بۆ هەژماری ڕاژەکارەکانی تر نیشان نادرێت."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "پۆستە نوێکان ببینە"; "Scene.HomeTimeline.NavigationBarState.Offline" = "دەرهێڵ"; "Scene.HomeTimeline.NavigationBarState.Published" = "بڵاوکرایەوە!"; @@ -291,6 +293,37 @@ "Scene.Report.SkipToSend" = "بەبێ لێدوان بینێرە"; "Scene.Report.Step1" = "هەنگاوی 1 لە 2"; "Scene.Report.Step2" = "هەنگاوی 2 لە 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "ڕوونکردنەوەی زۆرتر بدە"; "Scene.Report.Title" = "سکاڵا لە %@ بکە"; "Scene.Report.TitleReport" = "سکاڵای لێ بکە"; @@ -331,6 +364,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "ڕاژەکار دەدۆزرێتەوە..."; "Scene.ServerPicker.EmptyState.NoResults" = "ئەنجام نییە"; "Scene.ServerPicker.Input.Placeholder" = "بگەڕێ"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "بەش"; "Scene.ServerPicker.Label.Language" = "زمان"; "Scene.ServerPicker.Label.Users" = "بەکارهێنەر"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index 7c3e16ec5..7b3af4622 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -211,6 +211,8 @@ tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.Favorite.Title" = "Deine Favoriten"; "Scene.Follower.Footer" = "Follower von anderen Servern werden nicht angezeigt."; "Scene.Following.Footer" = "Wem das Konto folgt wird von anderen Servern werden nicht angezeigt."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Neue Beiträge anzeigen"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Offline"; "Scene.HomeTimeline.NavigationBarState.Published" = "Veröffentlicht!"; @@ -293,6 +295,37 @@ tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.Report.SkipToSend" = "Ohne Kommentar abschicken"; "Scene.Report.Step1" = "Schritt 1 von 2"; "Scene.Report.Step2" = "Schritt 2 von 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Zusätzliche Kommentare eingeben oder einfügen"; "Scene.Report.Title" = "%@ melden"; "Scene.Report.TitleReport" = "Melden"; @@ -333,6 +366,7 @@ tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.ServerPicker.EmptyState.FindingServers" = "Verfügbare Server werden gesucht..."; "Scene.ServerPicker.EmptyState.NoResults" = "Keine Ergebnisse"; "Scene.ServerPicker.Input.Placeholder" = "Finde einen Server oder trete deinem eigenen bei..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORIE"; "Scene.ServerPicker.Label.Language" = "SPRACHE"; "Scene.ServerPicker.Label.Users" = "BENUTZER"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings index fe66593f4..91ad3a0e3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings @@ -210,6 +210,8 @@ uploaded to Mastodon."; "Scene.Favorite.Title" = "Your Favorites"; "Scene.Follower.Footer" = "Followers from other servers are not displayed."; "Scene.Following.Footer" = "Follows from other servers are not displayed."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "See new posts"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Offline"; "Scene.HomeTimeline.NavigationBarState.Published" = "Published!"; @@ -292,6 +294,37 @@ uploaded to Mastodon."; "Scene.Report.SkipToSend" = "Send without comment"; "Scene.Report.Step1" = "Step 1 of 2"; "Scene.Report.Step2" = "Step 2 of 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Type or paste additional comments"; "Scene.Report.Title" = "Report %@"; "Scene.Report.TitleReport" = "Report"; @@ -332,6 +365,7 @@ uploaded to Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Finding available servers..."; "Scene.ServerPicker.EmptyState.NoResults" = "No results"; "Scene.ServerPicker.Input.Placeholder" = "Search servers"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORY"; "Scene.ServerPicker.Label.Language" = "LANGUAGE"; "Scene.ServerPicker.Label.Users" = "USERS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings index af5d453b7..5b05b535d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings @@ -211,6 +211,8 @@ pulsá en el enlace para confirmar tu cuenta."; "Scene.Favorite.Title" = "Tus favoritos"; "Scene.Follower.Footer" = "No se muestran los seguidores de otros servidores."; "Scene.Following.Footer" = "No se muestran las cuentas de otros servidores que seguís."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ver nuevos mensajes"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Desconectado"; "Scene.HomeTimeline.NavigationBarState.Published" = "¡Enviado!"; @@ -293,6 +295,37 @@ pulsá en el enlace para confirmar tu cuenta."; "Scene.Report.SkipToSend" = "Enviar sin comentarios"; "Scene.Report.Step1" = "Paso 1 de 2"; "Scene.Report.Step2" = "Paso 2 de 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Escribí o pegá comentarios adicionales"; "Scene.Report.Title" = "Denunciar a %@"; "Scene.Report.TitleReport" = "Denunciar"; @@ -333,6 +366,7 @@ pulsá en el enlace para confirmar tu cuenta."; "Scene.ServerPicker.EmptyState.FindingServers" = "Buscando servidores disponibles…"; "Scene.ServerPicker.EmptyState.NoResults" = "No hay resultados"; "Scene.ServerPicker.Input.Placeholder" = "Encontrá un servidor o unite al tuyo…"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "CUENTAS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings index 09fba0b42..48b14608a 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings @@ -211,6 +211,8 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Favorite.Title" = "Tus Favoritos"; "Scene.Follower.Footer" = "No se muestran los seguidores de otros servidores."; "Scene.Following.Footer" = "No se muestran los seguidos de otros servidores."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ver nuevas publicaciones"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Sin Conexión"; "Scene.HomeTimeline.NavigationBarState.Published" = "¡Publicado!"; @@ -293,6 +295,37 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Report.SkipToSend" = "Enviar sin comentarios"; "Scene.Report.Step1" = "Paso 1 de 2"; "Scene.Report.Step2" = "Paso 2 de 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Escribe o pega comentarios adicionales"; "Scene.Report.Title" = "Reportar %@"; "Scene.Report.TitleReport" = "Reportar"; @@ -333,6 +366,7 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.ServerPicker.EmptyState.FindingServers" = "Encontrando servidores disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sin resultados"; "Scene.ServerPicker.Input.Placeholder" = "Encuentra un servidor o únete al tuyo propio..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "USUARIOS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings index e682977e9..8f2055df9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings @@ -211,6 +211,8 @@ sakatu kontua berresteko esteka."; "Scene.Favorite.Title" = "Zure gogokoak"; "Scene.Follower.Footer" = "Beste zerbitzarietako jarraitzaileak ez dira bistaratzen."; "Scene.Following.Footer" = "Beste zerbitzarietan jarraitutakoak ez dira bistaratzen."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ikusi bidal. berriak"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Konexio gabe"; "Scene.HomeTimeline.NavigationBarState.Published" = "Argitaratua!"; @@ -293,6 +295,37 @@ sakatu kontua berresteko esteka."; "Scene.Report.SkipToSend" = "Bidali iruzkinik gabe"; "Scene.Report.Step1" = "1. urratsa 2tik"; "Scene.Report.Step2" = "2. urratsa 2tik"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Idatzi edo itsatsi iruzkin gehigarriak"; "Scene.Report.Title" = "Salatu %@"; "Scene.Report.TitleReport" = "Salatu"; @@ -333,6 +366,7 @@ sakatu kontua berresteko esteka."; "Scene.ServerPicker.EmptyState.FindingServers" = "Erabilgarri dauden zerbitzariak bilatzen..."; "Scene.ServerPicker.EmptyState.NoResults" = "Emaitzarik ez"; "Scene.ServerPicker.Input.Placeholder" = "Bilatu zerbitzari bat edo sortu zurea..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORIA"; "Scene.ServerPicker.Label.Language" = "HIZKUNTZA"; "Scene.ServerPicker.Label.Users" = "ERABILTZAILEAK"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings index 880612b29..f5c60fcb7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings @@ -211,6 +211,8 @@ tapotez le lien pour confirmer votre compte."; "Scene.Favorite.Title" = "Vos favoris"; "Scene.Follower.Footer" = "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s."; "Scene.Following.Footer" = "Les abonnés issus des autres serveurs ne sont pas affichés."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Voir les nouvelles publications"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Hors ligne"; "Scene.HomeTimeline.NavigationBarState.Published" = "Publié!"; @@ -293,6 +295,37 @@ tapotez le lien pour confirmer votre compte."; "Scene.Report.SkipToSend" = "Envoyer sans commentaire"; "Scene.Report.Step1" = "Étape 1 de 2"; "Scene.Report.Step2" = "Étape 2 de 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Tapez ou collez des informations supplémentaires"; "Scene.Report.Title" = "Signaler %@"; "Scene.Report.TitleReport" = "Signalement"; @@ -333,6 +366,7 @@ tapotez le lien pour confirmer votre compte."; "Scene.ServerPicker.EmptyState.FindingServers" = "Recherche des serveurs disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Aucun résultat"; "Scene.ServerPicker.Input.Placeholder" = "Trouvez un serveur ou rejoignez le vôtre..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATÉGORIE"; "Scene.ServerPicker.Label.Language" = "LANGUE"; "Scene.ServerPicker.Label.Users" = "UTILISATEUR·RICE·S"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings index d14d7acd3..a1576bb9e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings @@ -211,6 +211,8 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Favorite.Title" = "Na h-annsachdan agad"; "Scene.Follower.Footer" = "Cha dèid luchd-leantainn o fhrithealaichean eile a shealltainn."; "Scene.Following.Footer" = "Cha dèid cò air a leanas tu air frithealaichean eile a shealltainn."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Seall na postaichean ùra"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Far loidhne"; "Scene.HomeTimeline.NavigationBarState.Published" = "Chaidh fhoillseachadh!"; @@ -293,6 +295,37 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Report.SkipToSend" = "Cuir gun bheachd ris"; "Scene.Report.Step1" = "Ceum 1 à 2"; "Scene.Report.Step2" = "Ceum 2 à 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Sgrìobh no cuir ann beachdan a bharrachd"; "Scene.Report.Title" = "Dèan gearan mu %@"; "Scene.Report.TitleReport" = "Dèan gearan"; @@ -333,6 +366,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.ServerPicker.EmptyState.FindingServers" = "A’ lorg nam frithealaichean ri am faighinn…"; "Scene.ServerPicker.EmptyState.NoResults" = "Gun toradh"; "Scene.ServerPicker.Input.Placeholder" = "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "ROINN-SEÒRSA"; "Scene.ServerPicker.Label.Language" = "CÀNAN"; "Scene.ServerPicker.Label.Users" = "CLEACHDAICHEAN"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings index 35fe4066d..9aa918938 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings @@ -210,6 +210,8 @@ ser subido a Mastodon."; "Scene.Favorite.Title" = "Publicacións Favoritas"; "Scene.Follower.Footer" = "Non se mostran seguidoras desde outros servidores."; "Scene.Following.Footer" = "Non se mostran os seguimentos desde outros servidores."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Novas publicacións"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Sen conexión"; "Scene.HomeTimeline.NavigationBarState.Published" = "Publicado!"; @@ -292,6 +294,37 @@ ser subido a Mastodon."; "Scene.Report.SkipToSend" = "Enviar sen comentarios"; "Scene.Report.Step1" = "Paso 1 de 2"; "Scene.Report.Step2" = "Paso 2 de 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Escribe ou pega comentarios adicionais"; "Scene.Report.Title" = "Denunciar a %@"; "Scene.Report.TitleReport" = "Denunciar"; @@ -332,6 +365,7 @@ ser subido a Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Buscando servidores dispoñibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sen resultados"; "Scene.ServerPicker.Input.Placeholder" = "Buscar comunidades"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "USUARIAS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index 8a80b11da..38b0ed65d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -210,6 +210,8 @@ caricato su Mastodon."; "Scene.Favorite.Title" = "I tuoi preferiti"; "Scene.Follower.Footer" = "I seguaci da altri server non vengono visualizzati."; "Scene.Following.Footer" = "I follow da altri server non vengono visualizzati."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Pulsante Logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Vedi nuovi post"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Non in linea"; "Scene.HomeTimeline.NavigationBarState.Published" = "Pubblicato!"; @@ -292,6 +294,37 @@ caricato su Mastodon."; "Scene.Report.SkipToSend" = "Invia senza commento"; "Scene.Report.Step1" = "Fase 1 di 2"; "Scene.Report.Step2" = "Fase 2 di 2"; +"Scene.Report.StepFinal.BlockUser" = "Blocca %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Non vuoi vedere questo?"; +"Scene.Report.StepFinal.MuteUser" = "Silenzia %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati."; +"Scene.Report.StepFinal.Unfollow" = "Smetti di seguire"; +"Scene.Report.StepFinal.UnfollowUser" = "Smetti di seguire %@"; +"Scene.Report.StepFinal.Unfollowed" = "Non seguito"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Quando vedi qualcosa che non ti piace su Mastodon, puoi rimuovere la persona dalla tua esperienza."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "C'è altro che dovremmo sapere?"; +"Scene.Report.StepFour.Step4Of4" = "Fase 4 di 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Non mi piace"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "È qualcosa che non vuoi vedere"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Viola le regole del server"; +"Scene.Report.StepOne.ItsSomethingElse" = "È qualcos'altro"; +"Scene.Report.StepOne.ItsSpam" = "È spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Collegamenti malevoli, false interazioni o risposte ripetitive"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Scegli la migliore corrispondenza"; +"Scene.Report.StepOne.Step1Of4" = "Fase 1 di 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Il problema non rientra in altre categorie"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Cosa c'è che non va con questo account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Cosa c'è che non va con questo post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Cosa c'è che non va con %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Sei consapevole che violi regole specifiche"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Ci sono post a sostegno di questa segnalazione?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Seleziona tutte le risposte pertinenti"; +"Scene.Report.StepThree.Step3Of4" = "Fase 3 di 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Non mi piace"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Seleziona tutte le risposte pertinenti"; +"Scene.Report.StepTwo.Step2Of4" = "Fase 2 di 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Quali regole vengono violate?"; "Scene.Report.TextPlaceholder" = "Digita o incolla commenti aggiuntivi"; "Scene.Report.Title" = "Segnala %@"; "Scene.Report.TitleReport" = "Segnala"; @@ -332,6 +365,7 @@ caricato su Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Ricerca server disponibili..."; "Scene.ServerPicker.EmptyState.NoResults" = "Nessun risultato"; "Scene.ServerPicker.Input.Placeholder" = "Cerca comunità"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca comunità o inserisci l'URL"; "Scene.ServerPicker.Label.Category" = "CATEGORIA"; "Scene.ServerPicker.Label.Language" = "LINGUA"; "Scene.ServerPicker.Label.Users" = "UTENTI"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings index 015a88551..d746c1962 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings @@ -205,6 +205,8 @@ "Scene.Favorite.Title" = "お気に入り"; "Scene.Follower.Footer" = "他のサーバーからのフォロワーは表示されません。"; "Scene.Following.Footer" = "他のサーバーにいるフォローは表示されません。"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "新しい投稿を見る"; "Scene.HomeTimeline.NavigationBarState.Offline" = "オフライン"; "Scene.HomeTimeline.NavigationBarState.Published" = "投稿しました!"; @@ -287,6 +289,37 @@ "Scene.Report.SkipToSend" = "コメントなしで送信"; "Scene.Report.Step1" = "ステップ 1/2"; "Scene.Report.Step2" = "ステップ 2/2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "追加コメントを入力"; "Scene.Report.Title" = "%@を通報"; "Scene.Report.TitleReport" = "報告する"; @@ -327,6 +360,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "利用可能なサーバーの検索..."; "Scene.ServerPicker.EmptyState.NoResults" = "なし"; "Scene.ServerPicker.Input.Placeholder" = "サーバーを探す"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "カテゴリー"; "Scene.ServerPicker.Label.Language" = "言語"; "Scene.ServerPicker.Label.Users" = "ユーザー"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings index 3ea1700cd..bbc9856c3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings @@ -210,6 +210,8 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Favorite.Title" = "Ismenyifen-ik·im"; "Scene.Follower.Footer" = "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara."; "Scene.Following.Footer" = "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Tissufaɣ timaynutin"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Beṛṛa n tuqqna"; "Scene.HomeTimeline.NavigationBarState.Published" = "Yettwasuffeɣ!"; @@ -292,6 +294,37 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Report.SkipToSend" = "Azen s war awennit"; "Scene.Report.Step1" = "Aḥric 1 seg 2"; "Scene.Report.Step2" = "Aḥric 2 seg 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Aru neɣ senteḍ iwenniten-nniḍen"; "Scene.Report.Title" = "Aneqqis %@"; "Scene.Report.TitleReport" = "Aneqqis"; @@ -332,6 +365,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Tifin n yiqeddacen yellan..."; "Scene.ServerPicker.EmptyState.NoResults" = "Ulac igemmaḍ"; "Scene.ServerPicker.Input.Placeholder" = "Nadi timɣiwnin"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "TAGGAYT"; "Scene.ServerPicker.Label.Language" = "TUTLAYT"; "Scene.ServerPicker.Label.Users" = "ISEQDACEN"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings index f9c237770..6f46f990d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings @@ -211,6 +211,8 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Favorite.Title" = "Bijarteyên te"; "Scene.Follower.Footer" = "Şopîner ji rajekerên din nayê dîtin."; "Scene.Following.Footer" = "Şopandin ji rajekerên din nayê dîtin."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Şandiyên nû bibîne"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Derhêl"; "Scene.HomeTimeline.NavigationBarState.Published" = "Hate weşandin!"; @@ -293,6 +295,37 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Report.SkipToSend" = "Bêyî şirove bişîne"; "Scene.Report.Step1" = "Gav 1 ji 2"; "Scene.Report.Step2" = "Gav 2 ji 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Şiroveyên daxwazkirê binivîsine an jî pê ve bike"; "Scene.Report.Title" = "%@ ragihîne"; "Scene.Report.TitleReport" = "Ragihandin"; @@ -333,6 +366,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.ServerPicker.EmptyState.FindingServers" = "Peydakirina rajekarên berdest..."; "Scene.ServerPicker.EmptyState.NoResults" = "Encam tune"; "Scene.ServerPicker.Input.Placeholder" = "Li rajekaran bigere"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "BEŞ"; "Scene.ServerPicker.Label.Language" = "ZIMAN"; "Scene.ServerPicker.Label.Users" = "BIKARHÊNER"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings index 63586def9..f0b5eb42d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings @@ -205,6 +205,8 @@ klik op de link om uw account te bevestigen."; "Scene.Favorite.Title" = "Uw favorieten"; "Scene.Follower.Footer" = "Volgers van andere servers worden niet weergegeven."; "Scene.Following.Footer" = "Volgers van andere servers worden niet weergegeven."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Bekijk nieuwe berichten"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Offline"; "Scene.HomeTimeline.NavigationBarState.Published" = "Gepubliceerd!"; @@ -287,6 +289,37 @@ klik op de link om uw account te bevestigen."; "Scene.Report.SkipToSend" = "Verstuur zonder opmerkingen"; "Scene.Report.Step1" = "Stap 1 van 2"; "Scene.Report.Step2" = "Stap 2 van 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Schrijf of plak aanvullende opmerkingen"; "Scene.Report.Title" = "Rapporteer %@"; "Scene.Report.TitleReport" = "Rapporteer"; @@ -327,6 +360,7 @@ klik op de link om uw account te bevestigen."; "Scene.ServerPicker.EmptyState.FindingServers" = "Beschikbare servers zoeken..."; "Scene.ServerPicker.EmptyState.NoResults" = "Geen resultaten"; "Scene.ServerPicker.Input.Placeholder" = "Zoek uw server of sluit u bij een nieuwe server aan..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORIE"; "Scene.ServerPicker.Label.Language" = "TAAL"; "Scene.ServerPicker.Label.Users" = "GEBRUIKERS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings index 7353b6209..ba32a979e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings @@ -221,6 +221,8 @@ "Scene.Favorite.Title" = "Ваше избранное"; "Scene.Follower.Footer" = "Followers from other servers are not displayed."; "Scene.Following.Footer" = "Follows from other servers are not displayed."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Показать новые"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Не в сети"; "Scene.HomeTimeline.NavigationBarState.Published" = "Опубликовано!"; @@ -303,6 +305,37 @@ "Scene.Report.SkipToSend" = "Отправить без комментария"; "Scene.Report.Step1" = "Шаг 1 из 2"; "Scene.Report.Step2" = "Шаг 2 из 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Дополнительные комментарии"; "Scene.Report.Title" = "Пожаловаться на %@"; "Scene.Report.TitleReport" = "Жалоба"; @@ -343,6 +376,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "Ищем доступные сервера..."; "Scene.ServerPicker.EmptyState.NoResults" = "Нет результатов"; "Scene.ServerPicker.Input.Placeholder" = "Найдите сервер или присоединитесь к своему..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "КАТЕГОРИЯ"; "Scene.ServerPicker.Label.Language" = "ЯЗЫК"; "Scene.ServerPicker.Label.Users" = "ПОЛЬЗОВАТЕЛИ"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index ef723027d..204700321 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -210,6 +210,8 @@ "Scene.Favorite.Title" = "รายการโปรดของคุณ"; "Scene.Follower.Footer" = "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ"; "Scene.Following.Footer" = "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "ดูโพสต์ใหม่"; "Scene.HomeTimeline.NavigationBarState.Offline" = "ออฟไลน์"; "Scene.HomeTimeline.NavigationBarState.Published" = "เผยแพร่แล้ว!"; @@ -292,6 +294,37 @@ "Scene.Report.SkipToSend" = "ส่งโดยไม่มีความคิดเห็น"; "Scene.Report.Step1" = "ขั้นตอนที่ 1 จาก 2"; "Scene.Report.Step2" = "ขั้นตอนที่ 2 จาก 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "พิมพ์หรือวางความคิดเห็นเพิ่มเติม"; "Scene.Report.Title" = "รายงาน %@"; "Scene.Report.TitleReport" = "รายงาน"; @@ -332,6 +365,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน..."; "Scene.ServerPicker.EmptyState.NoResults" = "ไม่มีผลลัพธ์"; "Scene.ServerPicker.Input.Placeholder" = "ค้นหาเซิร์ฟเวอร์"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "หมวดหมู่"; "Scene.ServerPicker.Label.Language" = "ภาษา"; "Scene.ServerPicker.Label.Users" = "ผู้ใช้"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings index 887fa0641..9467072f6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings @@ -209,6 +209,8 @@ yüklenemiyor."; "Scene.Favorite.Title" = "Favorilerin"; "Scene.Follower.Footer" = "Diğer sunucudaki takipçiler gösterilemiyor."; "Scene.Following.Footer" = "Diğer sunucudaki takip edilenler gösterilemiyor."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Yeni gönderiler gör"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Çevrimdışı"; "Scene.HomeTimeline.NavigationBarState.Published" = "Yayınlandı!"; @@ -291,6 +293,37 @@ yüklenemiyor."; "Scene.Report.SkipToSend" = "Yorum yapmadan gönder"; "Scene.Report.Step1" = "Adım 1/2"; "Scene.Report.Step2" = "Adım 2/2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Bunu görmek istemiyor musunuz?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Takibi bırak"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Bilmemiz gereken başka bir şey var mı?"; +"Scene.Report.StepFour.Step4Of4" = "Adım 4/4"; +"Scene.Report.StepOne.IDontLikeIt" = "Beğenmedim"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "Görmek isteyeceğim bir şey değil"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Sunucu kurallarını ihlal ediyor"; +"Scene.Report.StepOne.ItsSomethingElse" = "Başka bir şey"; +"Scene.Report.StepOne.ItsSpam" = "Spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "En iyi seçeneceği seçiniz"; +"Scene.Report.StepOne.Step1Of4" = "Adım 1/4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Sorun bunlardan biri değil"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Bu hesap ile ilgili sorun nedir?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Bu gönderi ile ilgili sorun nedir?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "%@ kişisinin sorunu nedir?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Bu bildirimi destekleyecek herhangi bir gönderi var mı?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Geçerli olanların tümünü seçiniz"; +"Scene.Report.StepThree.Step3Of4" = "Adım 3/4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Beğenmedim"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Geçerli olan tümünü seçiniz"; +"Scene.Report.StepTwo.Step2Of4" = "Adım 2/4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Hangi kurallar ihlal ediliyor?"; "Scene.Report.TextPlaceholder" = "Ek yorum yazın veya yapıştırın"; "Scene.Report.Title" = "%@ kişisini bildir"; "Scene.Report.TitleReport" = "Raporla"; @@ -331,6 +364,7 @@ yüklenemiyor."; "Scene.ServerPicker.EmptyState.FindingServers" = "Mevcut sunucular aranıyor..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sonuç yok"; "Scene.ServerPicker.Input.Placeholder" = "Toplulukları ara"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORİ"; "Scene.ServerPicker.Label.Language" = "DİL"; "Scene.ServerPicker.Label.Users" = "KULLANICILAR"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings index d7853fa79..d93f0607d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings @@ -210,6 +210,8 @@ tải lên Mastodon."; "Scene.Favorite.Title" = "Lượt thích"; "Scene.Follower.Footer" = "Không hiển thị người theo dõi từ máy chủ khác."; "Scene.Following.Footer" = "Không hiển thị người bạn theo dõi từ máy chủ khác."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Đọc những tút mới"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Ngoại tuyến"; "Scene.HomeTimeline.NavigationBarState.Published" = "Đã đăng!"; @@ -292,6 +294,37 @@ tải lên Mastodon."; "Scene.Report.SkipToSend" = "Gửi không ghi chú"; "Scene.Report.Step1" = "Bước 1 trong 2"; "Scene.Report.Step2" = "Bước 2 trong 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Nhập hoặc bổ sung chú thích"; "Scene.Report.Title" = "Báo cáo %@"; "Scene.Report.TitleReport" = "Báo cáo"; @@ -332,6 +365,7 @@ tải lên Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Đang tìm máy chủ hoạt động..."; "Scene.ServerPicker.EmptyState.NoResults" = "Không có kết quả"; "Scene.ServerPicker.Input.Placeholder" = "Tìm máy chủ"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "PHÂN LOẠI"; "Scene.ServerPicker.Label.Language" = "NGÔN NGỮ"; "Scene.ServerPicker.Label.Users" = "NGƯỜI DÙNG"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index 438747344..50e5b42bf 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -211,6 +211,8 @@ "Scene.Favorite.Title" = "你的喜欢"; "Scene.Follower.Footer" = "不会显示来自其它服务器的关注者"; "Scene.Following.Footer" = "不会显示来自其它服务器的关注"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "查看新帖子"; "Scene.HomeTimeline.NavigationBarState.Offline" = "离线"; "Scene.HomeTimeline.NavigationBarState.Published" = "已发送"; @@ -293,6 +295,37 @@ "Scene.Report.SkipToSend" = "直接发送"; "Scene.Report.Step1" = "步骤 1 / 2"; "Scene.Report.Step2" = "步骤 2 / 2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "输入或粘贴额外的注释"; "Scene.Report.Title" = "举报 %@"; "Scene.Report.TitleReport" = "举报"; @@ -333,6 +366,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "正在查找可用的服务器..."; "Scene.ServerPicker.EmptyState.NoResults" = "无结果"; "Scene.ServerPicker.Input.Placeholder" = "查找或加入你自己的服务器..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "类别"; "Scene.ServerPicker.Label.Language" = "语言"; "Scene.ServerPicker.Label.Users" = "用户"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings index e76396f15..0de6127e6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings @@ -205,6 +205,8 @@ "Scene.Favorite.Title" = "您的最愛"; "Scene.Follower.Footer" = "來自其他伺服器的跟隨者不會被顯示。"; "Scene.Following.Footer" = "來自其他伺服器的跟隨中不會被顯示。"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "檢視最新嘟文"; "Scene.HomeTimeline.NavigationBarState.Offline" = "離線"; "Scene.HomeTimeline.NavigationBarState.Published" = "嘟出去!"; @@ -287,6 +289,37 @@ "Scene.Report.SkipToSend" = "不加入備註並傳送"; "Scene.Report.Step1" = "兩個步驟中的第一步"; "Scene.Report.Step2" = "兩個步驟中的第二步"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "請輸入或貼上額外的備註"; "Scene.Report.Title" = "檢舉 %@"; "Scene.Report.TitleReport" = "檢舉"; @@ -327,6 +360,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "尋找可用的伺服器..."; "Scene.ServerPicker.EmptyState.NoResults" = "沒有結果"; "Scene.ServerPicker.Input.Placeholder" = "搜尋伺服器"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; "Scene.ServerPicker.Label.Category" = "分類"; "Scene.ServerPicker.Label.Language" = "語言"; "Scene.ServerPicker.Label.Users" = "使用者"; From 70a6e11d30a8dedf442d48b5a593b57dd9766e07 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 21:10:10 +0800 Subject: [PATCH 124/571] chore: use i18n strings for report flow --- .../View/DiscoveryIntroBannerView.swift | 3 ++- .../Paging/ProfilePagingViewModel.swift | 2 +- .../Scene/Report/Report/ReportViewModel.swift | 8 ++++---- .../ReportReason/ReportReasonView.swift | 5 ++--- .../ReportReason/ReportReasonViewModel.swift | 19 ++++++++++--------- .../ReportResult/ReportResultView.swift | 15 +++++++-------- .../ReportResult/ReportResultViewModel.swift | 3 ++- .../ReportServerRulesView.swift | 7 +++---- .../ReportServerRulesViewModel.swift | 5 +++-- .../ReportStatusViewModel+Diffable.swift | 2 +- ...eportSupplementaryViewModel+Diffable.swift | 4 ++-- .../View/Control/ActionToolbarContainer.swift | 2 +- 12 files changed, 38 insertions(+), 37 deletions(-) diff --git a/Mastodon/Scene/Discovery/View/DiscoveryIntroBannerView.swift b/Mastodon/Scene/Discovery/View/DiscoveryIntroBannerView.swift index e3e1c4547..afc2cb7db 100644 --- a/Mastodon/Scene/Discovery/View/DiscoveryIntroBannerView.swift +++ b/Mastodon/Scene/Discovery/View/DiscoveryIntroBannerView.swift @@ -9,6 +9,7 @@ import os.log import UIKit import Combine import MastodonAsset +import MastodonLocalization public protocol DiscoveryIntroBannerViewDelegate: AnyObject { func discoveryIntroBannerView(_ bannerView: DiscoveryIntroBannerView, closeButtonDidPressed button: UIButton) @@ -26,7 +27,7 @@ public final class DiscoveryIntroBannerView: UIView { let label = UILabel() label.font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 16, weight: .regular)) label.textColor = Asset.Colors.Label.primary.color - label.text = "These are the posts gaining traction in your corner of Mastodon." // TODO: i18n + label.text = L10n.Scene.Discovery.intro label.numberOfLines = 0 return label }() diff --git a/Mastodon/Scene/Profile/Segmented/Paging/ProfilePagingViewModel.swift b/Mastodon/Scene/Profile/Segmented/Paging/ProfilePagingViewModel.swift index e5220ef79..67a0ca93d 100644 --- a/Mastodon/Scene/Profile/Segmented/Paging/ProfilePagingViewModel.swift +++ b/Mastodon/Scene/Profile/Segmented/Paging/ProfilePagingViewModel.swift @@ -44,7 +44,7 @@ final class ProfilePagingViewModel: NSObject { let barItems: [TMBarItemable] = { let items = [ TMBarItem(title: L10n.Scene.Profile.SegmentedControl.posts), - TMBarItem(title: L10n.Scene.Profile.SegmentedControl.postsAndReplies), // TODO: i18n + TMBarItem(title: L10n.Scene.Profile.SegmentedControl.postsAndReplies), TMBarItem(title: L10n.Scene.Profile.SegmentedControl.media), TMBarItem(title: L10n.Scene.Profile.SegmentedControl.about), ] diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift index 590aed87d..f94a92d39 100644 --- a/Mastodon/Scene/Report/Report/ReportViewModel.swift +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -14,6 +14,7 @@ import MastodonSDK import OrderedCollections import os.log import UIKit +import MastodonLocalization class ReportViewModel { @@ -53,8 +54,7 @@ class ReportViewModel { // setup reason viewModel if status != nil { - // TODO: i18n - reportReasonViewModel.headline = "What’s wrong with post?" + reportReasonViewModel.headline = L10n.Scene.Report.StepOne.whatsWrongWithThisPost } else { Task { @MainActor in let managedObjectContext = context.managedObjectContext @@ -63,9 +63,9 @@ class ReportViewModel { return user?.acctWithDomain } if let username = _username { - reportReasonViewModel.headline = "What’s wrong with @\(username)?" + reportReasonViewModel.headline = L10n.Scene.Report.StepOne.whatsWrongWithThisUsername(username) } else { - reportReasonViewModel.headline = "What’s wrong with this account?" + reportReasonViewModel.headline = L10n.Scene.Report.StepOne.whatsWrongWithThisAccount } } // end Task } diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift index 3a8b4579f..67e948727 100644 --- a/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift @@ -15,18 +15,17 @@ struct ReportReasonView: View { @ObservedObject var viewModel: ReportReasonViewModel - // TODO: i18n var body: some View { ScrollView(.vertical) { HStack { VStack(alignment: .leading, spacing: 8) { - Text("Step 1 of 4") + Text(L10n.Scene.Report.StepOne.step1Of4) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) Text(viewModel.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) - Text("Select the best match") + Text(L10n.Scene.Report.StepOne.selectTheBestMatch) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) } diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift index b156ea311..91715cba8 100644 --- a/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonViewModel.swift @@ -9,6 +9,7 @@ import UIKit import SwiftUI import MastodonAsset import MastodonSDK +import MastodonLocalization final class ReportReasonViewModel: ObservableObject { @@ -17,7 +18,7 @@ final class ReportReasonViewModel: ObservableObject { // input let context: AppContext - @Published var headline = "What's wrong with this account?" + @Published var headline = L10n.Scene.Report.StepOne.whatsWrongWithThisAccount @Published var serverRules: [Mastodon.Entity.Instance.Rule]? @Published var bottomPaddingHeight: CGFloat = .zero @@ -43,26 +44,26 @@ extension ReportReasonViewModel { var title: String { switch self { case .dislike: - return "I don’t like it" + return L10n.Scene.Report.StepOne.iDontLikeIt case .spam: - return "It’s spam" + return L10n.Scene.Report.StepOne.itsSpam case .violateRule: - return "It violates server rules" + return L10n.Scene.Report.StepOne.itViolatesServerRules case .other: - return "It’s something else" + return L10n.Scene.Report.StepOne.itsSomethingElse } } var subtitle: String { switch self { case .dislike: - return "It is not something you want to see" + return L10n.Scene.Report.StepOne.itIsNotSomethingYouWantToSee case .spam: - return "Malicious links, fake engagement, or repetetive replies" + return L10n.Scene.Report.StepOne.maliciousLinksFakeEngagementOrRepetetiveReplies case .violateRule: - return "You are aware that it breaks specific rules" + return L10n.Scene.Report.StepOne.youAreAwareThatItBreaksSpecificRules case .other: - return "The issue does not fit into other categories" + return L10n.Scene.Report.StepOne.theIssueDoesNotFitIntoOtherCategories } } diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift index dff87e356..7931538fc 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift @@ -7,10 +7,10 @@ import UIKit import SwiftUI -import MastodonLocalization import MastodonSDK import MastodonUI import MastodonAsset +import MastodonLocalization import CoreDataStack struct ReportResultView: View { @@ -42,7 +42,6 @@ struct ReportResultView: View { .padding() } - // TODO: i18n var body: some View { ScrollView(.vertical) { HStack { @@ -56,7 +55,7 @@ struct ReportResultView: View { .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) } else { - Text(verbatim: "When you see something you don’t like on Mastodon, you can remove the person from your experience.") + Text(verbatim: L10n.Scene.Report.StepFinal.whenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) } @@ -68,7 +67,7 @@ struct ReportResultView: View { VStack(spacing: 32) { // Follow VStack(alignment: .leading, spacing: 4) { - Text("Unfollow @\(viewModel.username)") + Text(L10n.Scene.Report.StepFinal.unfollowUser("@\(viewModel.username)")) .font(.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) ReportActionButton( @@ -82,10 +81,10 @@ struct ReportResultView: View { // Mute VStack(alignment: .leading, spacing: 4) { - Text("Mute @\(viewModel.username)") + Text(L10n.Scene.Report.StepFinal.muteUser("@\(viewModel.username)")) .font(.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) - Text(verbatim: "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.") + Text(verbatim: L10n.Scene.Report.StepFinal.youWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) as CTFont)) ReportActionButton( @@ -99,10 +98,10 @@ struct ReportResultView: View { // Block VStack(alignment: .leading, spacing: 4) { - Text("Block @\(viewModel.username)") + Text(L10n.Scene.Report.StepFinal.blockUser("@\(viewModel.username)")) .font(.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) - Text(verbatim: "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.") + Text(verbatim: L10n.Scene.Report.StepFinal.theyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) as CTFont)) ReportActionButton( diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift index ea949a901..67d7475dd 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultViewModel.swift @@ -14,6 +14,7 @@ import os.log import UIKit import MastodonAsset import MastodonUI +import MastodonLocalization class ReportResultViewModel: ObservableObject { @@ -25,7 +26,7 @@ class ReportResultViewModel: ObservableObject { let isReported: Bool var headline: String { - isReported ? "Thanks for reporting, we’ll look into this." : "Don’t want to see this?" + isReported ? L10n.Scene.Report.reportSentTitle : L10n.Scene.Report.StepFinal.dontWantToSeeThis } @Published var bottomPaddingHeight: CGFloat = .zero @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift index e8dcfa886..57406402b 100644 --- a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift @@ -15,18 +15,17 @@ struct ReportServerRulesView: View { @ObservedObject var viewModel: ReportServerRulesViewModel - // TODO: i18n var body: some View { ScrollView(.vertical) { HStack { VStack(alignment: .leading, spacing: 8) { - Text("Step 2 of 4") + Text(L10n.Scene.Report.StepTwo.step2Of4) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) Text(viewModel.headline) .foregroundColor(Color(Asset.Colors.Label.primary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) - Text("Select all that apply") + Text(L10n.Scene.Report.StepTwo.selectAllThatApply) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) } @@ -49,7 +48,7 @@ struct ReportServerRulesView: View { } } ReportServerRulesRowView( - title: "I just don’t like it", + title: L10n.Scene.Report.StepTwo.iJustDonTLikeIt, isSelect: viewModel.isDislike ) .background( diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift index 1960899a9..e0e21f301 100644 --- a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift @@ -9,6 +9,7 @@ import UIKit import SwiftUI import MastodonAsset import MastodonSDK +import MastodonLocalization final class ReportServerRulesViewModel: ObservableObject { @@ -16,8 +17,8 @@ final class ReportServerRulesViewModel: ObservableObject { // input let context: AppContext - - @Published var headline = "Which rules are being violated?" + + @Published var headline = L10n.Scene.Report.StepTwo.whichRulesAreBeingViolated @Published var serverRules: [Mastodon.Entity.Instance.Rule] = [] @Published var bottomPaddingHeight: CGFloat = .zero diff --git a/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift index 5bcc2f3d6..4610a38d3 100644 --- a/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift +++ b/Mastodon/Scene/Report/ReportStatus/ReportStatusViewModel+Diffable.swift @@ -16,7 +16,7 @@ extension ReportStatusViewModel { static let reportItemHeaderContext = ReportItem.HeaderContext( primaryLabelText: L10n.Scene.Report.content1, - secondaryLabelText: "Step 3 of 4" + secondaryLabelText: L10n.Scene.Report.StepThree.step3Of4 ) func setupDiffableDataSource( diff --git a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift index e59617c35..8cbc16242 100644 --- a/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift +++ b/Mastodon/Scene/Report/ReportSupplementary/ReportSupplementaryViewModel+Diffable.swift @@ -15,8 +15,8 @@ import MastodonLocalization extension ReportSupplementaryViewModel { static let reportItemHeaderContext = ReportItem.HeaderContext( - primaryLabelText: "Is there anything else we should know?", - secondaryLabelText: "Step 4 of 4" + primaryLabelText: L10n.Scene.Report.StepFour.isThereAnythingElseWeShouldKnow, + secondaryLabelText: L10n.Scene.Report.StepFour.step4Of4 ) func setupDiffableDataSource( diff --git a/MastodonSDK/Sources/MastodonUI/View/Control/ActionToolbarContainer.swift b/MastodonSDK/Sources/MastodonUI/View/Control/ActionToolbarContainer.swift index c3a9b96f3..4a5c44850 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Control/ActionToolbarContainer.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Control/ActionToolbarContainer.swift @@ -216,7 +216,7 @@ extension ActionToolbarContainer { public func configureReply(count: Int, isEnabled: Bool) { let title = ActionToolbarContainer.title(from: count) replyButton.setTitle(title, for: .normal) - replyButton.accessibilityLabel = "\(count) reply" // TODO: i18n + replyButton.accessibilityLabel = L10n.Plural.Count.reply(count) } public func configureReblog(count: Int, isEnabled: Bool, isHighlighted: Bool) { From 635b7a8d97563c60c474dd2e45a02ee344f5d649 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 21:11:58 +0800 Subject: [PATCH 125/571] chore: add i18n words --- Localization/Localizable.stringsdict | 22 ++++++++++++++++++++++ Localization/app.json | 3 ++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Localization/Localizable.stringsdict b/Localization/Localizable.stringsdict index 4b9a12762..0b9a6ff60 100644 --- a/Localization/Localizable.stringsdict +++ b/Localization/Localizable.stringsdict @@ -90,6 +90,28 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + 0 media + one + 1 media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/Localization/app.json b/Localization/app.json index 8de2dc0b3..12dd1e030 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 971c8674b69837cbfef761435fbbccb29a2de7bd Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 21:12:38 +0800 Subject: [PATCH 126/571] chore: update version to 1.4.2 (127) --- AppShared/Info.plist | 4 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++---------- .../xcschemes/xcschememanagement.plist | 8 ++-- Mastodon/Info.plist | 4 +- MastodonIntent/Info.plist | 4 +- MastodonTests/Info.plist | 4 +- MastodonUITests/Info.plist | 4 +- NotificationService/Info.plist | 4 +- ShareActionExtension/Info.plist | 4 +- 9 files changed, 42 insertions(+), 42 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index 92f442892..a187ca268 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 99f517dd7..fb9e834cb 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4763,7 +4763,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4793,7 +4793,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4901,11 +4901,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 126; + DYLIB_CURRENT_VERSION = 127; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4932,11 +4932,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 126; + DYLIB_CURRENT_VERSION = 127; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5027,7 +5027,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5095,11 +5095,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 126; + DYLIB_CURRENT_VERSION = 127; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5124,7 +5124,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5147,7 +5147,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5171,7 +5171,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5195,7 +5195,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5219,7 +5219,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5243,7 +5243,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5267,7 +5267,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5354,7 +5354,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5421,11 +5421,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 126; + DYLIB_CURRENT_VERSION = 127; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5449,7 +5449,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5472,7 +5472,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5496,7 +5496,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5520,7 +5520,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5543,7 +5543,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 126; + CURRENT_PROJECT_VERSION = 127; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 8e16cec2d..5041bc0be 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -24,7 +24,7 @@ Mastodon - RTL.xcscheme_^#shared#^_ orderHint - 7 + 8 Mastodon - Release.xcscheme_^#shared#^_ @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 20 + 31 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 21 + 30 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 22 + 32 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index c93fd9a65..0c3dea8f5 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -30,7 +30,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleURLTypes @@ -43,7 +43,7 @@ CFBundleVersion - 126 + 127 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 3f1630945..f1f54a5e0 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index 92f442892..a187ca268 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index 92f442892..a187ca268 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index f074db82b..fa2356db2 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 31c7447fe..95cd141f7 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -17,9 +17,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.4.1 + 1.4.2 CFBundleVersion - 126 + 127 NSExtension NSExtensionAttributes From 2be08a719dad9188a84747b45023cc0cd7d12f42 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 11 May 2022 21:11:58 +0800 Subject: [PATCH 127/571] chore: add i18n words (cherry picked from commit 635b7a8d97563c60c474dd2e45a02ee344f5d649) --- Localization/Localizable.stringsdict | 22 ++++++++++++++++++++++ Localization/app.json | 3 ++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Localization/Localizable.stringsdict b/Localization/Localizable.stringsdict index 4b9a12762..0b9a6ff60 100644 --- a/Localization/Localizable.stringsdict +++ b/Localization/Localizable.stringsdict @@ -90,6 +90,28 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + 0 media + one + 1 media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/Localization/app.json b/Localization/app.json index 8de2dc0b3..12dd1e030 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 445e9840d89399ddeb204da5282e9e5a50698a87 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:03 +0200 Subject: [PATCH 128/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca_ES/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index 8d8e94cb5..b7690cb66 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -641,7 +641,8 @@ "mute_user": "Silencia %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats.", "block_user": "Bloca %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From ec7bd314cd953501e2c9c4c3a6572739b481745c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:05 +0200 Subject: [PATCH 129/571] New translations Localizable.stringsdict (Turkish) --- .../input/tr_TR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict b/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict index d6817c1f6..a512c4a7f 100644 --- a/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict @@ -66,6 +66,22 @@ gönderi + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From d7d3b82a8f171f8587b6bda9bb0d21f1a370bc90 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:06 +0200 Subject: [PATCH 130/571] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd_GB/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index 4b18ab6d7..589cee1dd 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From c2c45f5e7c8878273c26db5c3553753498c85e2b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:07 +0200 Subject: [PATCH 131/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr_TR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index d83966805..fb2f328fc 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 7ac12b02029639a59b5a244f48708392bcdb53f8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:08 +0200 Subject: [PATCH 132/571] New translations app.json (Kabyle) --- Localization/StringsConvertor/input/kab_KAB/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kab_KAB/app.json b/Localization/StringsConvertor/input/kab_KAB/app.json index 307952939..1e2cfa5f4 100644 --- a/Localization/StringsConvertor/input/kab_KAB/app.json +++ b/Localization/StringsConvertor/input/kab_KAB/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 9e69325db0b1d1d51b5f1821600bcaefa5a481a4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:10 +0200 Subject: [PATCH 133/571] New translations Localizable.stringsdict (French) --- .../input/fr_FR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict b/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict index 5c2b14978..d251c82f3 100644 --- a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict @@ -66,6 +66,22 @@ publications + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From d1ade6bc3a5ca3cdf77663fa52dfce65586b3745 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:11 +0200 Subject: [PATCH 134/571] New translations Localizable.stringsdict (Spanish) --- .../input/es_ES/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict index 8f3e94f6b..31cd9d237 100644 --- a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict @@ -66,6 +66,22 @@ publicaciones + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 88e260973fc73f1e907337a8043af063da830aad Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:12 +0200 Subject: [PATCH 135/571] New translations app.json (Galician) --- Localization/StringsConvertor/input/gl_ES/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index 9c2f3f8a3..881cd8a1f 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e9c7c4a02a9370e770ffb5faeaed638bcca93d5a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:13 +0200 Subject: [PATCH 136/571] New translations Localizable.stringsdict (Galician) --- .../input/gl_ES/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict index a67c938ab..ca105a8fe 100644 --- a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict @@ -66,6 +66,22 @@ publicacións + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 1ca60743a367383f01c357a01f7a8102b3f57a51 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:14 +0200 Subject: [PATCH 137/571] New translations Localizable.stringsdict (Kabyle) --- .../input/kab_KAB/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict b/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict index 4ccb271fa..0fde8d68f 100644 --- a/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict @@ -66,6 +66,22 @@ tisuffaɣ + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From aa157eb1334b799acebc68616e74b2396b32eecd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:15 +0200 Subject: [PATCH 138/571] New translations app.json (Turkish) --- Localization/StringsConvertor/input/tr_TR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/tr_TR/app.json b/Localization/StringsConvertor/input/tr_TR/app.json index 89659407c..dd90f0a77 100644 --- a/Localization/StringsConvertor/input/tr_TR/app.json +++ b/Localization/StringsConvertor/input/tr_TR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 702d7c5f18c9571be2fbce83b07eac39bb8ab10c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:16 +0200 Subject: [PATCH 139/571] New translations Localizable.stringsdict (Portuguese, Brazilian) --- .../input/pt_BR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict index da8ea084c..688ee2b14 100644 --- a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 00f33a8f028768e1a12d67c640fb26990c26b8e1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:17 +0200 Subject: [PATCH 140/571] New translations app.json (English, United States) --- Localization/StringsConvertor/input/en_US/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/en_US/app.json b/Localization/StringsConvertor/input/en_US/app.json index 8de2dc0b3..12dd1e030 100644 --- a/Localization/StringsConvertor/input/en_US/app.json +++ b/Localization/StringsConvertor/input/en_US/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 4ed165143624ba66aa8d4a88993a2e32c06aff65 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:19 +0200 Subject: [PATCH 141/571] New translations Localizable.stringsdict (Swedish) --- .../input/sv_SE/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict index 5bfb998f0..653a69373 100644 --- a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict @@ -66,6 +66,22 @@ inläggen + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 3be8ba8cfdc0ce315d6980d59abbf2f89cb61eca Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:20 +0200 Subject: [PATCH 142/571] New translations Localizable.stringsdict (Scottish Gaelic) --- .../input/gd_GB/Localizable.stringsdict | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict index b149323eb..c7bc77310 100644 --- a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict @@ -82,6 +82,26 @@ post + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + two + %ld media + few + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 3baf88215bea9366ff20c4f322ed65231cc0d182 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:21 +0200 Subject: [PATCH 143/571] New translations app.json (Sorani (Kurdish)) --- Localization/StringsConvertor/input/ckb_IR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ckb_IR/app.json b/Localization/StringsConvertor/input/ckb_IR/app.json index 948924317..88c4b300b 100644 --- a/Localization/StringsConvertor/input/ckb_IR/app.json +++ b/Localization/StringsConvertor/input/ckb_IR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 9b780ce0b98fdbed34d792fcf694ab1d35cd3ecf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:22 +0200 Subject: [PATCH 144/571] New translations Localizable.stringsdict (Sorani (Kurdish)) --- .../input/ckb_IR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict b/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict index e744a4bd5..9d9adb118 100644 --- a/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict @@ -66,6 +66,22 @@ پۆست + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 495986d8e58d3d2281c65927cff8ec606f410d61 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:23 +0200 Subject: [PATCH 145/571] New translations Localizable.stringsdict (Romanian) --- .../input/ro_RO/Localizable.stringsdict | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict b/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict index 2acc32767..457dcd5e1 100644 --- a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict @@ -74,6 +74,24 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + few + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 97f0bb2cdbc171fa3a16605a71a6fa6d74ace46a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:24 +0200 Subject: [PATCH 146/571] New translations Localizable.stringsdict (Arabic) --- .../input/ar_SA/Localizable.stringsdict | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict index dddba5132..61ba17c28 100644 --- a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict @@ -98,6 +98,30 @@ منشور + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld media + one + 1 media + two + %ld media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 4947ad1f1ff4dd5c66a214045b87cea3d8729731 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:25 +0200 Subject: [PATCH 147/571] New translations Localizable.stringsdict (Catalan) --- .../input/ca_ES/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict index dfbd38c0b..3151b7402 100644 --- a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict @@ -66,6 +66,22 @@ publicacions + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 0d85b09473c8e8a53929a0a0ab4d5d74e405b2ab Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:26 +0200 Subject: [PATCH 148/571] New translations Localizable.stringsdict (Danish) --- .../input/da_DK/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict b/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict index 503ff9dbd..80cfd3d62 100644 --- a/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 7c658667153ef7c7494c966ded367b13160eec14 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:27 +0200 Subject: [PATCH 149/571] New translations Localizable.stringsdict (Italian) --- .../input/it_IT/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict b/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict index 710980608..879d2672d 100644 --- a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict @@ -66,6 +66,22 @@ post + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 956230dc4d42028fb0b405508a55588c7c5dbccd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:28 +0200 Subject: [PATCH 150/571] New translations Localizable.stringsdict (Japanese) --- .../input/ja_JP/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict index 95c35172e..87e4f8a5e 100644 --- a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict @@ -58,6 +58,20 @@ 投稿 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 90355554ca2f180b057c09d8852cad5bde1f966f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:29 +0200 Subject: [PATCH 151/571] New translations app.json (Welsh) --- Localization/StringsConvertor/input/cy_GB/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/cy_GB/app.json b/Localization/StringsConvertor/input/cy_GB/app.json index 9297b1655..5a72e08ea 100644 --- a/Localization/StringsConvertor/input/cy_GB/app.json +++ b/Localization/StringsConvertor/input/cy_GB/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 0c71e390965b27f42bc95061aba0f07c622fce35 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:31 +0200 Subject: [PATCH 152/571] New translations app.json (Hindi) --- Localization/StringsConvertor/input/hi_IN/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/hi_IN/app.json b/Localization/StringsConvertor/input/hi_IN/app.json index 6bd6131b9..2bff33237 100644 --- a/Localization/StringsConvertor/input/hi_IN/app.json +++ b/Localization/StringsConvertor/input/hi_IN/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e60757bb266e711ee26b4b8306a4635a4ed7c6c1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:32 +0200 Subject: [PATCH 153/571] New translations app.json (Italian) --- Localization/StringsConvertor/input/it_IT/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/it_IT/app.json b/Localization/StringsConvertor/input/it_IT/app.json index 6635a37c1..f96790337 100644 --- a/Localization/StringsConvertor/input/it_IT/app.json +++ b/Localization/StringsConvertor/input/it_IT/app.json @@ -641,7 +641,8 @@ "mute_user": "Silenzia %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati.", "block_user": "Blocca %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From ec2bd6ad8d36df45539f052394e9e4e02a8157a7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:34 +0200 Subject: [PATCH 154/571] New translations app.json (Danish) --- Localization/StringsConvertor/input/da_DK/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/da_DK/app.json b/Localization/StringsConvertor/input/da_DK/app.json index 8de2dc0b3..12dd1e030 100644 --- a/Localization/StringsConvertor/input/da_DK/app.json +++ b/Localization/StringsConvertor/input/da_DK/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From c0beae96c8211dff1bf0ae6291b412c87c95ff50 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:36 +0200 Subject: [PATCH 155/571] New translations app.json (Russian) --- Localization/StringsConvertor/input/ru_RU/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ru_RU/app.json b/Localization/StringsConvertor/input/ru_RU/app.json index 05770e7eb..10d4529d4 100644 --- a/Localization/StringsConvertor/input/ru_RU/app.json +++ b/Localization/StringsConvertor/input/ru_RU/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From b31299e5c3553d48bf37f90022b829e704b52a60 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:37 +0200 Subject: [PATCH 156/571] New translations app.json (Chinese Simplified) --- Localization/StringsConvertor/input/zh_CN/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh_CN/app.json b/Localization/StringsConvertor/input/zh_CN/app.json index 8e63b09af..61ffa87b8 100644 --- a/Localization/StringsConvertor/input/zh_CN/app.json +++ b/Localization/StringsConvertor/input/zh_CN/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 3b2bd239d77dec902207d155813c2a371e608b54 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:40 +0200 Subject: [PATCH 157/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th_TH/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json index c162f9f0a..01ccb3514 100644 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e656dae545fc2d3138713ca333380aa12fe56b16 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:42 +0200 Subject: [PATCH 158/571] New translations app.json (Vietnamese) --- Localization/StringsConvertor/input/vi_VN/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/vi_VN/app.json b/Localization/StringsConvertor/input/vi_VN/app.json index 73d3615ca..443d51f6e 100644 --- a/Localization/StringsConvertor/input/vi_VN/app.json +++ b/Localization/StringsConvertor/input/vi_VN/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 4ec96518c0e46b40d291145addbb786e772bb632 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:43 +0200 Subject: [PATCH 159/571] New translations app.json (Basque) --- Localization/StringsConvertor/input/eu_ES/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/eu_ES/app.json b/Localization/StringsConvertor/input/eu_ES/app.json index 286c58da0..e1d64f57e 100644 --- a/Localization/StringsConvertor/input/eu_ES/app.json +++ b/Localization/StringsConvertor/input/eu_ES/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 6e9622d54900a4c35fd8a4b650b4b57da35eaeac Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:45 +0200 Subject: [PATCH 160/571] New translations Localizable.stringsdict (Basque) --- .../input/eu_ES/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict index 871fb10bc..5de100844 100644 --- a/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict @@ -66,6 +66,22 @@ bidalketa + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From fadff405e4358563b22181c381bda0fd99b9f70d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:46 +0200 Subject: [PATCH 161/571] New translations app.json (Romanian) --- Localization/StringsConvertor/input/ro_RO/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ro_RO/app.json b/Localization/StringsConvertor/input/ro_RO/app.json index 3d130a843..e29dcc614 100644 --- a/Localization/StringsConvertor/input/ro_RO/app.json +++ b/Localization/StringsConvertor/input/ro_RO/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From ec0a7ec3861fd26ce9507c0e2395b566f87077fd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:47 +0200 Subject: [PATCH 162/571] New translations app.json (French) --- Localization/StringsConvertor/input/fr_FR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/fr_FR/app.json b/Localization/StringsConvertor/input/fr_FR/app.json index ae5f10c82..8de3097cf 100644 --- a/Localization/StringsConvertor/input/fr_FR/app.json +++ b/Localization/StringsConvertor/input/fr_FR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e9b14e5cbbe6c3e787189d5207dae804552cf771 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:48 +0200 Subject: [PATCH 163/571] New translations app.json (Spanish) --- Localization/StringsConvertor/input/es_ES/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/es_ES/app.json b/Localization/StringsConvertor/input/es_ES/app.json index 614192cb1..f19001a54 100644 --- a/Localization/StringsConvertor/input/es_ES/app.json +++ b/Localization/StringsConvertor/input/es_ES/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From c1b246942e7b630a7b7633762094257c09b9b8b9 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:49 +0200 Subject: [PATCH 164/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar_SA/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index f06aba50f..2fc7fbef2 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -641,7 +641,8 @@ "mute_user": "كَتمُ %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", "block_user": "حَظرُ %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e3122a74cc7c536b37fb122eac8983b1bce3516a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:50 +0200 Subject: [PATCH 165/571] New translations app.json (German) --- Localization/StringsConvertor/input/de_DE/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index ddd601447..b2aab6146 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 7b5a69bae791c9548b54377c25e6e366c47bc5f7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:51 +0200 Subject: [PATCH 166/571] New translations app.json (Spanish, Argentina) --- Localization/StringsConvertor/input/es_AR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/es_AR/app.json b/Localization/StringsConvertor/input/es_AR/app.json index e0e7bbe1c..6ebbb4069 100644 --- a/Localization/StringsConvertor/input/es_AR/app.json +++ b/Localization/StringsConvertor/input/es_AR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 62675670747ead4b7466eaa0476bbcab03c3f7c1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:52 +0200 Subject: [PATCH 167/571] New translations Localizable.stringsdict (German) --- .../input/de_DE/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict index 20e8b615e..36fb9f19e 100644 --- a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict @@ -66,6 +66,22 @@ Beiträge + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From d4918fb6c783ca2f12bf14407837ebe3d2ea0890 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:53 +0200 Subject: [PATCH 168/571] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index 04d5f0154..8b84037ad 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 9eeba542d44adc191b63b46e831be1e44c578a75 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:55 +0200 Subject: [PATCH 169/571] New translations app.json (Korean) --- Localization/StringsConvertor/input/ko_KR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ko_KR/app.json b/Localization/StringsConvertor/input/ko_KR/app.json index 9d2fb90d5..6be09a2f0 100644 --- a/Localization/StringsConvertor/input/ko_KR/app.json +++ b/Localization/StringsConvertor/input/ko_KR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From e8a3e78ae3d3dc0ddfc16ef6256a14df92ee3aef Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:56 +0200 Subject: [PATCH 170/571] New translations app.json (Dutch) --- Localization/StringsConvertor/input/nl_NL/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/nl_NL/app.json b/Localization/StringsConvertor/input/nl_NL/app.json index f21f62a95..e4844f83d 100644 --- a/Localization/StringsConvertor/input/nl_NL/app.json +++ b/Localization/StringsConvertor/input/nl_NL/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 4b199819c516b0a85cd48487f272247386e70341 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:57 +0200 Subject: [PATCH 171/571] New translations app.json (Portuguese) --- Localization/StringsConvertor/input/pt_PT/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/pt_PT/app.json b/Localization/StringsConvertor/input/pt_PT/app.json index 8de2dc0b3..12dd1e030 100644 --- a/Localization/StringsConvertor/input/pt_PT/app.json +++ b/Localization/StringsConvertor/input/pt_PT/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 7e885e20212c812c55af39b741569dfc3bd7d730 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:58 +0200 Subject: [PATCH 172/571] New translations app.json (Swedish) --- Localization/StringsConvertor/input/sv_SE/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json index d75705754..83853b94a 100644 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ b/Localization/StringsConvertor/input/sv_SE/app.json @@ -641,7 +641,8 @@ "mute_user": "Tysta %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade.", "block_user": "Blockera %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 9adc01829829ce56807f62e661ff82495e1fa64f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:28:59 +0200 Subject: [PATCH 173/571] New translations app.json (Chinese Traditional) --- Localization/StringsConvertor/input/zh_TW/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh_TW/app.json b/Localization/StringsConvertor/input/zh_TW/app.json index 3c2d4313e..17c0946aa 100644 --- a/Localization/StringsConvertor/input/zh_TW/app.json +++ b/Localization/StringsConvertor/input/zh_TW/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 5d006d860ae15fdd73744847dfe96c8ca3f12250 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:03 +0200 Subject: [PATCH 174/571] New translations app.json (Portuguese, Brazilian) --- Localization/StringsConvertor/input/pt_BR/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/pt_BR/app.json b/Localization/StringsConvertor/input/pt_BR/app.json index 5bb837935..d483e1895 100644 --- a/Localization/StringsConvertor/input/pt_BR/app.json +++ b/Localization/StringsConvertor/input/pt_BR/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 76e8ad687b01c88a49fb5312ed3655290b906966 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:04 +0200 Subject: [PATCH 175/571] New translations app.json (Indonesian) --- Localization/StringsConvertor/input/id_ID/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/id_ID/app.json b/Localization/StringsConvertor/input/id_ID/app.json index 87c213af4..47def4337 100644 --- a/Localization/StringsConvertor/input/id_ID/app.json +++ b/Localization/StringsConvertor/input/id_ID/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From c4b28870ecca38bbee80e3873bf57a614662fe39 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:05 +0200 Subject: [PATCH 176/571] New translations Localizable.stringsdict (Korean) --- .../input/ko_KR/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict index 2af4c9ce9..8e9a88210 100644 --- a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict @@ -58,6 +58,20 @@ 게시물 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From e0afc00cc45b4430a9e7a3fcf639bc7ad581123b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:07 +0200 Subject: [PATCH 177/571] New translations Localizable.stringsdict (Dutch) --- .../input/nl_NL/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict b/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict index 5ae33cbef..e6f9353de 100644 --- a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict @@ -66,6 +66,22 @@ berichten + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From e2516b9c5f00900514c61d2a5813eb355bd04a3f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:08 +0200 Subject: [PATCH 178/571] New translations Localizable.stringsdict (Portuguese) --- .../input/pt_PT/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict index 503ff9dbd..80cfd3d62 100644 --- a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From ece65c727c99cd3448736c7652139a72a43ca329 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:09 +0200 Subject: [PATCH 179/571] New translations Localizable.stringsdict (Russian) --- .../input/ru_RU/Localizable.stringsdict | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict index 626a10d75..2e1757036 100644 --- a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict @@ -82,6 +82,26 @@ поста + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From b7da6cb1d7a8dd14705b43c987605a86dce2b337 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:10 +0200 Subject: [PATCH 180/571] New translations Localizable.stringsdict (Chinese Simplified) --- .../input/zh_CN/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict index 6c2661ee5..4040f30d0 100644 --- a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict @@ -58,6 +58,20 @@ 个帖子 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 88ed168a9e647166a4df81ac2983a62d6baba079 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:11 +0200 Subject: [PATCH 181/571] New translations Localizable.stringsdict (Chinese Traditional) --- .../input/zh_TW/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict index 0f28a8f6e..0fa9da905 100644 --- a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict @@ -58,6 +58,20 @@ 嘟文 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From d3d8b895b6c9f7e2fc9a2ebefd29af66bf0b191b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:12 +0200 Subject: [PATCH 182/571] New translations Localizable.stringsdict (English) --- .../input/en_US/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict b/Localization/StringsConvertor/input/en_US/Localizable.stringsdict index 503ff9dbd..80cfd3d62 100644 --- a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/en_US/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From a9e581a26d15e7b5b1eb6e103cb334d7a7fe3181 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:13 +0200 Subject: [PATCH 183/571] New translations Localizable.stringsdict (Vietnamese) --- .../input/vi_VN/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict b/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict index 71ba1951f..886021c08 100644 --- a/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict @@ -58,6 +58,20 @@ tút + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From ef5a16e7afd4dad8cb46e0108380516006b3a789 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:14 +0200 Subject: [PATCH 184/571] New translations Localizable.stringsdict (Indonesian) --- .../input/id_ID/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict b/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict index a4a0f4936..43d192464 100644 --- a/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict @@ -58,6 +58,20 @@ postingan + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 3125735869045c599ea4ce1bb3a8ad8db77ea328 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:15 +0200 Subject: [PATCH 185/571] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es_AR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict index 9d1fdadb6..a1edd3972 100644 --- a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict @@ -66,6 +66,22 @@ mensajes + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 62f038322475903fcdc3184e5367892f7bb97881 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:16 +0200 Subject: [PATCH 186/571] New translations Localizable.stringsdict (Thai) --- .../input/th_TH/Localizable.stringsdict | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict b/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict index 8ae8feb7b..4b4d47e84 100644 --- a/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict @@ -58,6 +58,20 @@ โพสต์ + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From cbc37c5741bc6bba21fc9f38714cc749b5082564 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:18 +0200 Subject: [PATCH 187/571] New translations Localizable.stringsdict (Hindi) --- .../input/hi_IN/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict b/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict index 503ff9dbd..80cfd3d62 100644 --- a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 0401c4986af2e91e758b4583e072fe8cc8a598a3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:20 +0200 Subject: [PATCH 188/571] New translations Localizable.stringsdict (Welsh) --- .../input/cy_GB/Localizable.stringsdict | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict index 94759d781..54805560b 100644 --- a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict @@ -98,6 +98,30 @@ postiau + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld media + one + 1 media + two + %ld media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From e78f91e2e42c3468b28f72ff25a4b84cfabc2bab Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:21 +0200 Subject: [PATCH 189/571] New translations Localizable.stringsdict (Kurmanji (Kurdish)) --- .../input/kmr_TR/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict index 0fa7d8214..80e7622ee 100644 --- a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict @@ -66,6 +66,22 @@ şandî + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From ef4823a281256fb8a96067a355987768032e238c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:22 +0200 Subject: [PATCH 190/571] New translations app.json (Finnish) --- Localization/StringsConvertor/input/fi_FI/app.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/fi_FI/app.json b/Localization/StringsConvertor/input/fi_FI/app.json index 4fe8f57b8..cec5a20f1 100644 --- a/Localization/StringsConvertor/input/fi_FI/app.json +++ b/Localization/StringsConvertor/input/fi_FI/app.json @@ -641,7 +641,8 @@ "mute_user": "Mute %s", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked." + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } }, "preview": { From 64d5b2ec453476d6be5fc0716744d6af02f01ae2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 15:29:23 +0200 Subject: [PATCH 191/571] New translations Localizable.stringsdict (Finnish) --- .../input/fi_FI/Localizable.stringsdict | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict b/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict index 43231214a..7fa6b5a64 100644 --- a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict @@ -66,6 +66,22 @@ julkaisut + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey From 756ac3050c149eda55c5f4692c8eb0d9fc107abb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 16:29:09 +0200 Subject: [PATCH 192/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca_ES/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json index b7690cb66..854b0a8b6 100644 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ b/Localization/StringsConvertor/input/ca_ES/app.json @@ -642,7 +642,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats.", "block_user": "Bloca %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "Mentre ho revisem, pots prendre mesures contra %s" } }, "preview": { From 81bffcbbe25eadcd86000604200cc3950ae1c864 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 16:29:10 +0200 Subject: [PATCH 193/571] New translations app.json (Italian) --- Localization/StringsConvertor/input/it_IT/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/it_IT/app.json b/Localization/StringsConvertor/input/it_IT/app.json index f96790337..1d52e6697 100644 --- a/Localization/StringsConvertor/input/it_IT/app.json +++ b/Localization/StringsConvertor/input/it_IT/app.json @@ -642,7 +642,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati.", "block_user": "Blocca %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "Mentre controlliamo, puoi agire contro %s" } }, "preview": { From 20ea3086f6d3009b07fbb33df67198ea066972bc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 16:29:11 +0200 Subject: [PATCH 194/571] New translations Localizable.stringsdict (Catalan) --- .../StringsConvertor/input/ca_ES/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict index 3151b7402..c83c65883 100644 --- a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 mèdia other - %ld media + %ld mèdia plural.count.post From 96dc9f77f9c693c1973792d383ee613659435b4f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 16:29:13 +0200 Subject: [PATCH 195/571] New translations Localizable.stringsdict (Italian) --- .../StringsConvertor/input/it_IT/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict b/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict index 879d2672d..423ca4104 100644 --- a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 contenuto multimediale other - %ld media + %ld contenuti multimediali plural.count.post From 135d59ff43ce4d5ac28cfd1c57c965c64e7da16e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 17:34:43 +0200 Subject: [PATCH 196/571] New translations Localizable.stringsdict (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr_TR/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict index 80e7622ee..7b2e40773 100644 --- a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 medya other - %ld media + %ld medya plural.count.post From 85235ea083ee13c6dd835c35ab11d9d814ec199b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 18:39:43 +0200 Subject: [PATCH 197/571] New translations app.json (Russian) --- Localization/StringsConvertor/input/ru_RU/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ru_RU/app.json b/Localization/StringsConvertor/input/ru_RU/app.json index 10d4529d4..7d5f330f1 100644 --- a/Localization/StringsConvertor/input/ru_RU/app.json +++ b/Localization/StringsConvertor/input/ru_RU/app.json @@ -642,7 +642,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "Пока мы рассматриваем его, вот действия, которые вы можете предпринять лично против %s" } }, "preview": { From 6bdeac0c948505522c6280250e8e7055237513b0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 18:39:45 +0200 Subject: [PATCH 198/571] New translations Localizable.stringsdict (Russian) --- .../StringsConvertor/input/ru_RU/Localizable.stringsdict | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict index 2e1757036..026815a8e 100644 --- a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict @@ -93,13 +93,13 @@ NSStringFormatValueTypeKey ld one - 1 media + %ld медиафайл few - %ld media + %ld медиафайла many - %ld media + %ld медиафайлов other - %ld media + %ld медиафайла plural.count.post From b72c152ad189ac9358c543fd23f4e931ff9936d4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 19:43:24 +0200 Subject: [PATCH 199/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr_TR/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index fb2f328fc..1f01476f3 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -603,7 +603,7 @@ "text_placeholder": "Şiroveyên daxwazkirê binivîsine an jî pê ve bike", "reported": "HATE RAGIHANDIN", "step_one": { - "step_1_of_4": "Step 1 of 4", + "step_1_of_4": "Gav 1 ji 4", "whats_wrong_with_this_post": "What's wrong with this post?", "whats_wrong_with_this_account": "What's wrong with this account?", "whats_wrong_with_this_username": "What's wrong with %s?", From fa1c8a5787cbda5b3264a791e1d2dfdd1898e637 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 20:55:31 +0200 Subject: [PATCH 200/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr_TR/app.json | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json index 1f01476f3..a705c433a 100644 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ b/Localization/StringsConvertor/input/kmr_TR/app.json @@ -608,9 +608,9 @@ "whats_wrong_with_this_account": "What's wrong with this account?", "whats_wrong_with_this_username": "What's wrong with %s?", "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", + "i_dont_like_it": "Ez jê hez nakim", "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", + "its_spam": "Ew spam e", "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", "it_violates_server_rules": "It violates server rules", "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", @@ -618,29 +618,29 @@ "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" }, "step_two": { - "step_2_of_4": "Step 2 of 4", + "step_2_of_4": "Gav 2 ji 4", "which_rules_are_being_violated": "Which rules are being violated?", "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "i_just_don’t_like_it": "Tenê ez jê hez nakim" }, "step_three": { - "step_3_of_4": "Step 3 of 4", + "step_3_of_4": "Gav 3 ji 4", "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", "select_all_that_apply": "Select all that apply" }, "step_four": { - "step_4_of_4": "Step 4 of 4", + "step_4_of_4": "Gav 4 ji 4", "is_there_anything_else_we_should_know": "Is there anything else we should know?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", + "dont_want_to_see_this": "Tu naxwazî vê bibînî?", "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", + "unfollow": "Neşopîne", + "unfollowed": "Ji şopê hate derketin", + "unfollow_user": "%s neşopîne", + "mute_user": "%s bêdeng bike", "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", + "block_user": "%s asteng bike", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } From 3d28e6bce62e99a29d411c3b31d310a8f802153f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 21:54:23 +0200 Subject: [PATCH 201/571] New translations app.json (Chinese Traditional) --- .../StringsConvertor/input/zh_TW/app.json | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/Localization/StringsConvertor/input/zh_TW/app.json b/Localization/StringsConvertor/input/zh_TW/app.json index 17c0946aa..862ac86c3 100644 --- a/Localization/StringsConvertor/input/zh_TW/app.json +++ b/Localization/StringsConvertor/input/zh_TW/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "搜尋伺服器", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "搜尋社群或輸入 URL 地址" }, "empty_state": { "finding_servers": "尋找可用的伺服器...", @@ -345,8 +345,8 @@ "published": "嘟出去!", "Publishing": "發表嘟文...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "標誌按鈕", + "logo_hint": "輕點一下捲至頂端並且再點ㄧ下回到原先位置" } } }, @@ -603,46 +603,46 @@ "text_placeholder": "請輸入或貼上額外的備註", "reported": "已檢舉", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "四個步驟中的第一步", + "whats_wrong_with_this_post": "這則嘟文有什麼問題嗎?", + "whats_wrong_with_this_account": "這個帳號有什麼問題嗎?", + "whats_wrong_with_this_username": "%s 有什麼問題嗎?", + "select_the_best_match": "選擇最佳條件符合", + "i_dont_like_it": "我不喜歡", + "it_is_not_something_you_want_to_see": "這是您不想看到的", + "its_spam": "垃圾訊息", + "malicious_links_fake_engagement_or_repetetive_replies": "有害連結、假造的互動,或是重複性回覆", + "it_violates_server_rules": "違反伺服器規則", + "you_are_aware_that_it_breaks_specific_rules": "您知道它違反特定規則", + "its_something_else": "其他原因", + "the_issue_does_not_fit_into_other_categories": "這個問題不屬於其他分類" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "四個步驟中的第二步", + "which_rules_are_being_violated": "違反了哪些規則?", + "select_all_that_apply": "請選擇所有適用的選項", + "i_just_don’t_like_it": "就是不順眼" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "四個步驟中的第三步", + "are_there_any_posts_that_back_up_this_report": "是否有能佐證這份檢舉之嘟文?", + "select_all_that_apply": "請選擇所有適用的選項" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "四個步驟中的第四步", + "is_there_anything_else_we_should_know": "有什麼其他您想讓我們知道的嗎?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "不想再看到這個?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "當您看到某些不喜歡的內容時,您可以將該帳號從您的體驗中移除。", + "unfollow": "取消跟隨", + "unfollowed": "已取消跟隨", + "unfollow_user": "取消跟隨 %s", + "mute_user": "靜音 %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "您不會在您的首頁時間軸中再見到他們的嘟文或轉嘟。他們不會知道他們已被靜音。", + "block_user": "封鎖 %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "他們將無法跟隨您或是看到您的嘟文。他們能看到他們是否已被封鎖。", + "while_we_review_this_you_can_take_action_against_user": "當我們正在審核時,您可以對 %s 採取以下措施" } }, "preview": { From 5afa819e9227c7444516d324a292c4311ee25671 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 11 May 2022 21:54:24 +0200 Subject: [PATCH 202/571] New translations Localizable.stringsdict (Chinese Traditional) --- .../StringsConvertor/input/zh_TW/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict index 0fa9da905..fe44cdfd0 100644 --- a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld media + %ld 個媒體 plural.count.post From 6f76859e44ae9937b01cdffca0a1b2646528f2db Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 12 May 2022 07:27:18 +0200 Subject: [PATCH 203/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl_ES/app.json | 70 +++++++++---------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json index 881cd8a1f..162a2a3dd 100644 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ b/Localization/StringsConvertor/input/gl_ES/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Buscar comunidades", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Busca comunidades ou escribe URL" }, "empty_state": { "finding_servers": "Buscando servidores dispoñibles...", @@ -345,8 +345,8 @@ "published": "Publicado!", "Publishing": "Publicando...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Botón do logo", + "logo_hint": "Toca para ir arriba e toca outra vez para volver ao mesmo lugar" } } }, @@ -603,46 +603,46 @@ "text_placeholder": "Escribe ou pega comentarios adicionais", "reported": "DENUNCIADO", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "Paso 1 de 4", + "whats_wrong_with_this_post": "Cal é o problema con esta publicación?", + "whats_wrong_with_this_account": "Cal é o problema con esta conta?", + "whats_wrong_with_this_username": "Cal é o problema con %s?", + "select_the_best_match": "Elixe a mellor coincidencia", + "i_dont_like_it": "Non me gusta", + "it_is_not_something_you_want_to_see": "Non é algo que queiras ver", + "its_spam": "É spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Ligazóns perigosas, relacións falsas, ou respostas repetitivas", + "it_violates_server_rules": "Viola as regras do servidor", + "you_are_aware_that_it_breaks_specific_rules": "Décheste conta de que quebra unhas normas en concreto", + "its_something_else": "É outra cousa", + "the_issue_does_not_fit_into_other_categories": "O problema non cae dentro de outras categorías" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Paso 2 de 4", + "which_rules_are_being_violated": "Que regras foron incumpridas?", + "select_all_that_apply": "Elixe todo o que sexa de aplicación", + "i_just_don’t_like_it": "Non me gusta" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Paso 3 de 4", + "are_there_any_posts_that_back_up_this_report": "Hai algunha publicación que apoie esta denuncia?", + "select_all_that_apply": "Elixe todo o que sexa de aplicación" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Paso 4 de 4", + "is_there_anything_else_we_should_know": "Hai algo máis que creas debamos saber?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "Non queres ver esto?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Cando ves en Mastodon algo que non che gusta podes retirar a esa persoa da túa experiencia como usuaria.", + "unfollow": "Deixar de seguir", + "unfollowed": "Deixaches de seguir", + "unfollow_user": "Deixar de seguir a %s", + "mute_user": "Acalar a %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non verás as súas publicacións ou repeticións na túa cronoloxía. Non saberá que foi acalada.", + "block_user": "Bloquear a %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non poderá seguirte nin ver o que publicas, pero pode ver se foi bloqueada.", + "while_we_review_this_you_can_take_action_against_user": "Mentras revisamos esto, podes tomar accións contra %s" } }, "preview": { From 650ce76296cf64bbddb419434ca89235ecfece72 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 12 May 2022 07:27:19 +0200 Subject: [PATCH 204/571] New translations Localizable.stringsdict (Galician) --- .../StringsConvertor/input/gl_ES/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict index ca105a8fe..abd72c1b9 100644 --- a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 mutlimedia other - %ld media + %ld multimedias plural.count.post From db91a65888a67333f83949f8291d23d72ac84394 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 12 May 2022 20:18:51 +0200 Subject: [PATCH 205/571] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd_GB/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index 589cee1dd..912be1712 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -518,7 +518,7 @@ }, "notification_description": { "followed_you": "– ’s iad ’gad leantainn a-nis", - "favorited_your_post": "– ’s iad air am post agad a chur ris na h-annsachdan aca", + "favorited_your_post": "– is annsa leotha am post agad", "reblogged_your_post": "– ’s iad air am post agad a bhrosnachadh", "mentioned_you": "– ’s iad air iomradh a thoirt ort", "request_to_follow_you": "iarrtas leantainn ort", From 100fd6f15453a9e9c54585e908efddedb9ff497b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 12 May 2022 21:17:24 +0200 Subject: [PATCH 206/571] New translations app.json (Korean) --- Localization/StringsConvertor/input/ko_KR/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ko_KR/app.json b/Localization/StringsConvertor/input/ko_KR/app.json index 6be09a2f0..d4819afea 100644 --- a/Localization/StringsConvertor/input/ko_KR/app.json +++ b/Localization/StringsConvertor/input/ko_KR/app.json @@ -642,7 +642,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", "block_user": "Block %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "서버의 중재자들이 이것을 심사하는 동안, 당신은 %s에 대한 행동을 취할 수 있습니다" } }, "preview": { From b0891ad0598899248b0885d31470f7c1c5da8aeb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 12 May 2022 21:17:25 +0200 Subject: [PATCH 207/571] New translations Localizable.stringsdict (Korean) --- .../StringsConvertor/input/ko_KR/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict index 8e9a88210..c5ecb53b3 100644 --- a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld media + 미디어 %ld개 plural.count.post From 2d7689db5d13a00e1c36ae6668f285305543c24b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:11:55 +0200 Subject: [PATCH 208/571] New translations app.json (Chinese Simplified) --- Localization/StringsConvertor/input/zh_CN/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh_CN/app.json b/Localization/StringsConvertor/input/zh_CN/app.json index 61ffa87b8..e0c3a9961 100644 --- a/Localization/StringsConvertor/input/zh_CN/app.json +++ b/Localization/StringsConvertor/input/zh_CN/app.json @@ -250,7 +250,7 @@ } }, "register": { - "title": "介绍一下你自己吧", + "title": "让我们在 %s 上开始", "input": { "avatar": { "delete": "删除" From 070ff477b7d3955f8485d9673bee8ad2999edcac Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 11:21:11 +0800 Subject: [PATCH 209/571] chore: update i18n template --- Localization/app.json | 1 + 1 file changed, 1 insertion(+) diff --git a/Localization/app.json b/Localization/app.json index 12dd1e030..6a2534c5d 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -321,6 +321,7 @@ "confirm_email": { "title": "One last thing.", "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", "button": { "open_email_app": "Open Email App", "resend": "Resend" From 951a47936e71be33cbd86681e9c590306f05055c Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 11:22:16 +0800 Subject: [PATCH 210/571] chore: update i18n template --- Localization/app.json | 1 + 1 file changed, 1 insertion(+) diff --git a/Localization/app.json b/Localization/app.json index 6a2534c5d..32eaea9d2 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -251,6 +251,7 @@ }, "register": { "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", "input": { "avatar": { "delete": "Delete" From 556e28362d7a287403527f61f8fff12bf351b2df Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 11:43:37 +0800 Subject: [PATCH 211/571] chore: remove "update_option" option from crowdin config --- crowdin.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/crowdin.yml b/crowdin.yml index 38421efa6..526099422 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -20,7 +20,7 @@ files: [ # The parameter "update_option" is optional. If it is not set, after the files update the translations for changed strings will be removed. Use to fix typos and for minor changes in the source strings # e.g. "update_as_unapproved" or "update_without_changes" # - "update_option" : "update_as_unapproved", + # "update_option" : "update_as_unapproved", # }, { @@ -33,18 +33,18 @@ files: [ # App strings dict "source" : "/Localization/Localizable.stringsdict", "translation" : "/Localization/StringsConvertor/input/%locale_with_underscore%/%original_file_name%", - "update_option" : "update_as_unapproved", + # "update_option" : "update_as_unapproved", }, { # intents strings "source" : "/MastodonIntent/en.lproj/Intents.strings", "translation" : "/Localization/StringsConvertor/Intents/input/%locale_with_underscore%/%original_file_name%", - "update_option" : "update_as_unapproved", + # "update_option" : "update_as_unapproved", }, { # intents strings dict "source" : "/MastodonIntent/en.lproj/Intents.stringsdict", "translation" : "/Localization/StringsConvertor/Intents/input/%locale_with_underscore%/%original_file_name%", - "update_option" : "update_as_unapproved", + # "update_option" : "update_as_unapproved", }, ] \ No newline at end of file From 975f8205d2183900c5363cdf40bce1f833a8008a Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 11:50:04 +0800 Subject: [PATCH 212/571] chore: fix placeholders conflict for some languages issue --- crowdin.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/crowdin.yml b/crowdin.yml index 526099422..9fdca4a22 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -14,7 +14,7 @@ files: [ # Where translations will be placed # e.g. "/resources/%two_letters_code%/%original_file_name%" # - "translation" : "/Localization/StringsConvertor/input/%locale_with_underscore%/%original_file_name%", + "translation" : "/Localization/StringsConvertor/input/%osx_code%/%original_file_name%", # # The parameter "update_option" is optional. If it is not set, after the files update the translations for changed strings will be removed. Use to fix typos and for minor changes in the source strings @@ -26,25 +26,25 @@ files: [ { # App info plist strings template "source" : "/Localization/ios-infoPlist.json", - "translation" : "/Localization/StringsConvertor/input/%locale_with_underscore%/%original_file_name%", + "translation" : "/Localization/StringsConvertor/input/%osx_code%/%original_file_name%", "update_option" : "update_as_unapproved", }, { # App strings dict "source" : "/Localization/Localizable.stringsdict", - "translation" : "/Localization/StringsConvertor/input/%locale_with_underscore%/%original_file_name%", + "translation" : "/Localization/StringsConvertor/input/%osx_code%/%original_file_name%", # "update_option" : "update_as_unapproved", }, { # intents strings "source" : "/MastodonIntent/en.lproj/Intents.strings", - "translation" : "/Localization/StringsConvertor/Intents/input/%locale_with_underscore%/%original_file_name%", + "translation" : "/Localization/StringsConvertor/Intents/input/%osx_code%/%original_file_name%", # "update_option" : "update_as_unapproved", }, { # intents strings dict "source" : "/MastodonIntent/en.lproj/Intents.stringsdict", - "translation" : "/Localization/StringsConvertor/Intents/input/%locale_with_underscore%/%original_file_name%", + "translation" : "/Localization/StringsConvertor/Intents/input/%osx_code%/%original_file_name%", # "update_option" : "update_as_unapproved", }, ] \ No newline at end of file From a82914841c2b1b24886a7ce55eb8e90e2d9e0fb5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:25 +0200 Subject: [PATCH 213/571] New translations app.json (Catalan) --- .../StringsConvertor/input/ca.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ca.lproj/app.json diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json new file mode 100644 index 000000000..b17a80774 --- /dev/null +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Si us plau intenta-ho de nou.", + "please_try_again_later": "Si us plau, prova-ho més tard." + }, + "sign_up_failure": { + "title": "Error en el registre" + }, + "server_error": { + "title": "Error del Servidor" + }, + "vote_failure": { + "title": "Error del Vot", + "poll_ended": "L'enquesta ha finalitzat" + }, + "discard_post_content": { + "title": "Descarta l'esborrany", + "message": "Confirma per a descartar el contingut de la publicació composta." + }, + "publish_post_failure": { + "title": "Error de Publicació", + "message": "No s'ha pogut enviar la publicació.\nComprova la teva connexió a Internet.", + "attachments_message": { + "video_attach_with_photo": "No es pot adjuntar un vídeo a una publicació que ja contingui imatges.", + "more_than_one_video": "No pots adjuntar més d'un vídeo." + } + }, + "edit_profile_failure": { + "title": "Error al Editar el Perfil", + "message": "No es pot editar el perfil. Si us plau torna-ho a provar." + }, + "sign_out": { + "title": "Tancar Sessió", + "message": "Estàs segur que vols tancar la sessió?", + "confirm": "Tancar Sessió" + }, + "block_domain": { + "title": "Estàs segur, realment segur que vols bloquejar totalment %s? En la majoria dels casos bloquejar o silenciar uns pocs objectius és suficient i preferible. No veureu contingut d’aquest domini i se suprimirà qualsevol dels vostres seguidors d’aquest domini.", + "block_entire_domain": "Bloquejar Domini" + }, + "save_photo_failure": { + "title": "Error al Desar la Foto", + "message": "Activa el permís d'accés a la biblioteca de fotos per desar-la." + }, + "delete_post": { + "title": "Esborrar Publicació", + "message": "Estàs segur que vols suprimir aquesta publicació?" + }, + "clean_cache": { + "title": "Neteja la memòria cau", + "message": "S'ha netejat correctament la memòria cau de %s." + } + }, + "controls": { + "actions": { + "back": "Enrere", + "next": "Següent", + "previous": "Anterior", + "open": "Obre", + "add": "Afegeix", + "remove": "Elimina", + "edit": "Edita", + "save": "Desa", + "ok": "D'acord", + "done": "Fet", + "confirm": "Confirma", + "continue": "Continua", + "compose": "Composa", + "cancel": "Cancel·la", + "discard": "Descarta", + "try_again": "Torna a provar", + "take_photo": "Fes una foto", + "save_photo": "Desa la foto", + "copy_photo": "Copia la foto", + "sign_in": "Iniciar sessió", + "sign_up": "Registre", + "see_more": "Veure més", + "preview": "Vista prèvia", + "share": "Comparteix", + "share_user": "Compartir %s", + "share_post": "Compartir Publicació", + "open_in_safari": "Obrir a Safari", + "open_in_browser": "Obre al navegador", + "find_people": "Busca persones a seguir", + "manually_search": "Cerca manualment a canvi", + "skip": "Omet", + "reply": "Respon", + "report_user": "Informa sobre %s", + "block_domain": "Bloqueja %s", + "unblock_domain": "Desbloqueja %s", + "settings": "Configuració", + "delete": "Suprimeix" + }, + "tabs": { + "home": "Inici", + "search": "Cerca", + "notification": "Notificació", + "profile": "Perfil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Canviar a %s", + "compose_new_post": "Redacta un nova publicació", + "show_favorites": "Mostra els Favorits", + "open_settings": "Obre la configuració" + }, + "timeline": { + "previous_status": "Publicació anterior", + "next_status": "Publicació següent", + "open_status": "Obre la publicació", + "open_author_profile": "Obre el Perfil de l'Autor", + "open_reblogger_profile": "Obre el Perfil del Impulsor", + "reply_status": "Respon a la Publicació", + "toggle_reblog": "Commuta l'Impuls de la Publicació", + "toggle_favorite": "Commuta el Favorit de la Publicació", + "toggle_content_warning": "Commuta l'Avís de Contingut", + "preview_image": "Vista prèvia de l'Imatge" + }, + "segmented_control": { + "previous_section": "Secció Anterior", + "next_section": "Secció Següent" + } + }, + "status": { + "user_reblogged": "%s ha impulsat", + "user_replied_to": "Ha respòs a %s", + "show_post": "Mostra la Publicació", + "show_user_profile": "Mostra el perfil de l'usuari", + "content_warning": "Advertència de Contingut", + "sensitive_content": "Contingut sensible", + "media_content_warning": "Toca qualsevol lloc per a mostrar", + "tap_to_reveal": "Toca per a mostrar", + "poll": { + "vote": "Vota", + "closed": "Finalitzada" + }, + "actions": { + "reply": "Respon", + "reblog": "Impuls", + "unreblog": "Desfer l'impuls", + "favorite": "Favorit", + "unfavorite": "Desfer Favorit", + "menu": "Menú", + "hide": "Amaga", + "show_image": "Mostra la imatge", + "show_gif": "Mostra el GIF", + "show_video_player": "Mostra el reproductor de vídeo", + "tap_then_hold_to_show_menu": "Toca i manté per a veure el menú" + }, + "tag": { + "url": "URL", + "mention": "Menciona", + "link": "Enllaç", + "hashtag": "Etiqueta", + "email": "Correu electrònic", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Tothom pot veure aquesta publicació però no es mostra en la línia de temps pública.", + "private": "Només els seus seguidors poden veure aquesta publicació.", + "private_from_me": "Només els meus seguidors poden veure aquesta publicació.", + "direct": "Només l'usuari mencionat pot veure aquesta publicació." + } + }, + "friendship": { + "follow": "Segueix", + "following": "Seguint", + "request": "Petició", + "pending": "Pendent", + "block": "Bloqueja", + "block_user": "Bloqueja %s", + "block_domain": "Bloqueja %s", + "unblock": "Desbloqueja", + "unblock_user": "Desbloqueja %s", + "blocked": "Bloquejat", + "mute": "Silencia", + "mute_user": "Silencia %s", + "unmute": "Deixa de silenciar", + "unmute_user": "Treure silenci de %s", + "muted": "Silenciat", + "edit_info": "Edita" + }, + "timeline": { + "filtered": "Filtrat", + "timestamp": { + "now": "Ara" + }, + "loader": { + "load_missing_posts": "Carrega les publicacions faltants", + "loading_missing_posts": "Carregant les publicacions faltants...", + "show_more_replies": "Mostra més respostes" + }, + "header": { + "no_status_found": "No s'ha trobat cap publicació", + "blocking_warning": "No pots veure el perfil d'aquest usuari\n fins que el desbloquegis.\nEl teu perfil els sembla així.", + "user_blocking_warning": "No pots veure el perfil de %s\n fins que el desbloquegis.\nEl teu perfil els sembla així.", + "blocked_warning": "No pots veure el perfil d'aquest usuari\nfins que et desbloquegi.", + "user_blocked_warning": "No pots veure el perfil de %s\n fins que et desbloquegi.", + "suspended_warning": "Aquest usuari ha estat suspès.", + "user_suspended_warning": "El compte de %s ha estat suspès." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Xarxa social\nde nou a les teves mans.", + "get_started": "Comença", + "log_in": "Inicia sessió" + }, + "server_picker": { + "title": "Mastodon està fet d'usuaris en diferents comunitats.", + "subtitle": "Tria una comunitat segons els teus interessos, regió o una de propòsit general.", + "subtitle_extend": "Tria una comunitat segons els teus interessos, regió o una de propòsit general. Cada comunitat és operada per una organització totalment independent o individualment.", + "button": { + "category": { + "all": "Totes", + "all_accessiblity_description": "Categoria: Totes", + "academia": "acadèmia", + "activism": "activisme", + "food": "menjar", + "furry": "peluts", + "games": "jocs", + "general": "general", + "journalism": "periodisme", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "música", + "tech": "tecnologia" + }, + "see_less": "Veure Menys", + "see_more": "Veure Més" + }, + "label": { + "language": "LLENGUATGE", + "users": "USUARIS", + "category": "CATEGORIA" + }, + "input": { + "placeholder": "Cerca servidors", + "search_servers_or_enter_url": "Cerca comunitats o introdueix l'URL" + }, + "empty_state": { + "finding_servers": "Cercant els servidors disponibles...", + "bad_network": "Alguna cosa no ha anat bé en carregar les dades. Comprova la teva connexió a Internet.", + "no_results": "No hi ha resultats" + } + }, + "register": { + "title": "Anem a configurar-te a %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Suprimeix" + }, + "username": { + "placeholder": "nom d'usuari", + "duplicate_prompt": "Aquest nom d'usuari ja està en ús." + }, + "display_name": { + "placeholder": "nom visible" + }, + "email": { + "placeholder": "correu electrònic" + }, + "password": { + "placeholder": "contrasenya", + "require": "La teva contrasenya com a mínim necessita:", + "character_limit": "8 caràcters", + "accessibility": { + "checked": "verificat", + "unchecked": "no verificat" + }, + "hint": "La teva contrasenya ha de tenir com a mínim vuit caràcters" + }, + "invite": { + "registration_user_invite_request": "Perquè vols unir-te?" + } + }, + "error": { + "item": { + "username": "Nom d'usuari", + "email": "Correu electrònic", + "password": "Contrasenya", + "agreement": "Acord", + "locale": "Idioma", + "reason": "Motiu" + }, + "reason": { + "blocked": "%s conté un proveïdor de correu electrònic no autoritzat", + "unreachable": "%s sembla que no existeix", + "taken": "%s ja s’està fent servir", + "reserved": "%s és una paraula clau reservada", + "accepted": "%s ha de ser acceptat", + "blank": "%s és requerit", + "invalid": "%s no és vàlid", + "too_long": "%s és massa llarg", + "too_short": "%s és massa curt", + "inclusion": "%s no és un valor suportat" + }, + "special": { + "username_invalid": "El nom d'usuari ha de contenir només caràcters alfanumèrics i guions baixos", + "username_too_long": "El nom d'usuari és massa llarg (no pot ser més llarg de 30 caràcters)", + "email_invalid": "Aquesta no és una adreça de correu electrònic vàlida", + "password_too_short": "La contrasenya és massa curta (ha de tenir 8 caràcters com a mínim)" + } + } + }, + "server_rules": { + "title": "Algunes regles bàsiques.", + "subtitle": "Aquestes regles estan establertes i aplicades per els moderadors de %s.", + "prompt": "Al continuar, estàs subjecte als termes de servei i a la política de privacitat de %s.", + "terms_of_service": "termes del servei", + "privacy_policy": "política de privadesa", + "button": { + "confirm": "Hi estic d'acord" + } + }, + "confirm_email": { + "title": "Una última cosa.", + "subtitle": "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Obre l'aplicació de correu", + "resend": "Reenvia" + }, + "dont_receive_email": { + "title": "Comprova el teu correu", + "description": "Comprova que la teva adreça de correu electrònic és correcte i revisa la carpeta de correu brossa si encara no ho has fet.", + "resend_email": "Torna a enviar el correu" + }, + "open_email_app": { + "title": "Comprova la teva safata d'entrada.", + "description": "Acabem d'enviar-te un correu electrònic. Revisa la carpeta de correu brossa si encara no ho has fet.", + "mail": "Correu electrònic", + "open_email_client": "Obre el Client de Correu electrònic" + } + }, + "home_timeline": { + "title": "Inici", + "navigation_bar_state": { + "offline": "Fora de línia", + "new_posts": "Veure noves publicacions", + "published": "Publicat!", + "Publishing": "S'està publicant...", + "accessibility": { + "logo_label": "Botó de logotip", + "logo_hint": "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior" + } + } + }, + "suggestion_account": { + "title": "Cerca Persones a Seguir", + "follow_explain": "Quan segueixes algú, veuràs les seves publicacions a Inici." + }, + "compose": { + "title": { + "new_post": "Nova publicació", + "new_reply": "Nova Resposta" + }, + "media_selection": { + "camera": "Fes una Foto", + "photo_library": "Fototeca", + "browse": "Navega" + }, + "content_input_placeholder": "Escriu o enganxa el que tinguis en ment", + "compose_action": "Publica", + "replying_to_user": "responent a %s", + "attachment": { + "photo": "foto", + "video": "vídeo", + "attachment_broken": "Aquest %s està trencat i no pot ser\ncarregat a Mastodon.", + "description_photo": "Descriu la foto per als disminuïts visuals...", + "description_video": "Descriu el vídeo per als disminuïts visuals..." + }, + "poll": { + "duration_time": "Durada: %s", + "thirty_minutes": "30 minuts", + "one_hour": "1 Hora", + "six_hours": "6 Hores", + "one_day": "1 Dia", + "three_days": "3 Dies", + "seven_days": "7 Dies", + "option_number": "Opció %ld" + }, + "content_warning": { + "placeholder": "Escriu un advertiment precís aquí..." + }, + "visibility": { + "public": "Públic", + "unlisted": "No llistat", + "private": "Només seguidors", + "direct": "Només les persones que menciono" + }, + "auto_complete": { + "space_to_add": "Espai per afegir" + }, + "accessibility": { + "append_attachment": "Afegeix Adjunt", + "append_poll": "Afegir enquesta", + "remove_poll": "Eliminar Enquesta", + "custom_emoji_picker": "Selector d'Emoji Personalitzat", + "enable_content_warning": "Activa l'Avís de Contingut", + "disable_content_warning": "Desactiva l'Avís de Contingut", + "post_visibility_menu": "Menú de Visibilitat de Publicació" + }, + "keyboard": { + "discard_post": "Descarta la Publicació", + "publish_post": "Envia la Publicació", + "toggle_poll": "Commuta l'enquesta", + "toggle_content_warning": "Commuta l'Avís de Contingut", + "append_attachment_entry": "Afegeix Adjunt - %s", + "select_visibility_entry": "Selecciona la Visibilitat - %s" + } + }, + "profile": { + "dashboard": { + "posts": "publicacions", + "following": "seguint", + "followers": "seguidors" + }, + "fields": { + "add_row": "Afegeix fila", + "placeholder": { + "label": "Etiqueta", + "content": "Contingut" + } + }, + "segmented_control": { + "posts": "Publicacions", + "replies": "Respostes", + "posts_and_replies": "Publicacions i Respostes", + "media": "Mèdia", + "about": "Quant a" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Silencia el Compte", + "message": "Confirma per a silenciar %s" + }, + "confirm_unmute_user": { + "title": "Desfer silenciar compte", + "message": "Confirma deixar de silenciar a %s" + }, + "confirm_block_user": { + "title": "Bloqueja el Compte", + "message": "Confirma per a bloquejar %s" + }, + "confirm_unblock_user": { + "title": "Desbloqueja el Compte", + "message": "Confirma per a desbloquejar %s" + } + }, + "accessibility": { + "show_avatar_image": "Mostra l'imatge del avatar", + "edit_avatar_image": "Edita l'imatge del avatar", + "show_banner_image": "Mostra l'imatge del bàner", + "double_tap_to_open_the_list": "Doble toc per a veure la llista" + } + }, + "follower": { + "footer": "Els seguidors d'altres servidors no son mostrats." + }, + "following": { + "footer": "Els seguits d'altres servidors no son mostrats." + }, + "search": { + "title": "Cerca", + "search_bar": { + "placeholder": "Cerca etiquetes i usuaris", + "cancel": "Cancel·la" + }, + "recommend": { + "button_text": "Mostra-ho tot", + "hash_tag": { + "title": "Tendència a Mastodon", + "description": "Etiquetes que estan reben força atenció", + "people_talking": "%s persones hi estan parlant" + }, + "accounts": { + "title": "Comptes que et podrien agradar", + "description": "Potser t'agradaria seguir aquests comptes", + "follow": "Segueix" + } + }, + "searching": { + "segment": { + "all": "Tots", + "people": "Gent", + "hashtags": "Etiquetes", + "posts": "Publicacions" + }, + "empty_state": { + "no_results": "No hi ha resultats" + }, + "recent_search": "Cerques recents", + "clear": "Neteja" + } + }, + "discovery": { + "tabs": { + "posts": "Publicacions", + "hashtags": "Etiquetes", + "news": "Notícies", + "community": "Comunitat", + "for_you": "Per a tu" + }, + "intro": "Aquestes son les publicacions que criden l'atenció en el teu racó de Mastodon." + }, + "favorite": { + "title": "Els teus Favorits" + }, + "notification": { + "title": { + "Everything": "Tot", + "Mentions": "Mencions" + }, + "notification_description": { + "followed_you": "et segueix", + "favorited_your_post": "ha afavorit la teva publicació", + "reblogged_your_post": "ha impulsat la teva publicació", + "mentioned_you": "t'ha mencionat", + "request_to_follow_you": "ha sol·licitat seguir-te", + "poll_has_ended": "la enquesta ha finalitzat" + }, + "keyobard": { + "show_everything": "Mostrar-ho tot", + "show_mentions": "Mostrar Mencions" + } + }, + "thread": { + "back_title": "Publicació", + "title": "Publicació de %s" + }, + "settings": { + "title": "Configuració", + "section": { + "appearance": { + "title": "Aparença", + "automatic": "Automàtic", + "light": "Sempre Clara", + "dark": "Sempre Fosca" + }, + "look_and_feel": { + "title": "Aspecte i Comportament", + "use_system": "Usa el del Sistema", + "really_dark": "Realment Negre", + "sorta_dark": "Una Mena de Fosc", + "light": "Clar" + }, + "notifications": { + "title": "Notificacions", + "favorites": "Ha afavorit el meu estat", + "follows": "Em segueix", + "boosts": "Ha impulsat el meu estat", + "mentions": "M'ha mencionat", + "trigger": { + "anyone": "algú", + "follower": "un seguidor", + "follow": "a qualsevol que segueixi", + "noone": "ningú", + "title": "Notifica'm quan" + } + }, + "preference": { + "title": "Preferències", + "true_black_dark_mode": "Mode negre fosc autèntic", + "disable_avatar_animation": "Desactiva avatars animats", + "disable_emoji_animation": "Desactiva emojis animats", + "using_default_browser": "Utilitza el navegador predeterminat per a obrir enllaços", + "open_links_in_mastodon": "Obre enllaços a Mastodon" + }, + "boring_zone": { + "title": "La Zona Avorrida", + "account_settings": "Paràmetres del Compte", + "terms": "Termes de Servei", + "privacy": "Política de Privacitat" + }, + "spicy_zone": { + "title": "La Zona Picant", + "clear": "Esborra la memòria cau de Mèdia", + "signout": "Tancar Sessió" + } + }, + "footer": { + "mastodon_description": "Mastodon és un programari de codi obert. Pots informar de problemes a GitHub a %s (%s)" + }, + "keyboard": { + "close_settings_window": "Tancar la Finestra de Configuració" + } + }, + "report": { + "title_report": "Informe", + "title": "Informa sobre %s", + "step1": "Pas 1 de 2", + "step2": "Pas 2 de 2", + "content1": "Hi ha alguna altre publicació que vulguis afegir a l'informe?", + "content2": "Hi ha alguna cosa que els moderadors hagin de saber sobre aquest informe?", + "report_sent_title": "Gràcies per informar, ho investigarem.", + "send": "Envia Informe", + "skip_to_send": "Envia sense comentaris", + "text_placeholder": "Escriu o enganxa comentaris addicionals", + "reported": "REPORTAT", + "step_one": { + "step_1_of_4": "Pas 1 de 4", + "whats_wrong_with_this_post": "Quin és el problema amb aquesta publicació?", + "whats_wrong_with_this_account": "Quin és el problema amb aquest compte?", + "whats_wrong_with_this_username": "Quin és el problema amb %s?", + "select_the_best_match": "Selecciona la millor coincidència", + "i_dont_like_it": "No m'agrada", + "it_is_not_something_you_want_to_see": "No és una cosa que vulguis veure", + "its_spam": "És contingut brossa", + "malicious_links_fake_engagement_or_repetetive_replies": "Enllaços maliciosos, compromís falç o respostes repetitives", + "it_violates_server_rules": "Infringeix les normes del servidor", + "you_are_aware_that_it_breaks_specific_rules": "Ets conscient que incompleix normes específiques", + "its_something_else": "És una altra cosa", + "the_issue_does_not_fit_into_other_categories": "El problema no encaixa en altres categories" + }, + "step_two": { + "step_2_of_4": "Pas 2 de 4", + "which_rules_are_being_violated": "Quines normes s'estan infringint?", + "select_all_that_apply": "Selecciona tot el que correspongui", + "i_just_don’t_like_it": "Simplement no m'agrada" + }, + "step_three": { + "step_3_of_4": "Pas 3 de 4", + "are_there_any_posts_that_back_up_this_report": "Hi ha alguna publicació que recolzi aquest informe?", + "select_all_that_apply": "Selecciona tot el que correspongui" + }, + "step_four": { + "step_4_of_4": "Pas 4 de 4", + "is_there_anything_else_we_should_know": "Hi ha res més que hauríem de saber?" + }, + "step_final": { + "dont_want_to_see_this": "No vols veure això?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quan veus alguna cosa que no t'agrada a Mastodon, pots eliminar la persona de la vostra experiència.", + "unfollow": "Deixa de seguir", + "unfollowed": "S'ha deixat de seguir", + "unfollow_user": "Deixa de seguir %s", + "mute_user": "Silencia %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats.", + "block_user": "Bloca %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats.", + "while_we_review_this_you_can_take_action_against_user": "Mentre ho revisem, pots prendre mesures contra %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Tanca la Vista Prèvia", + "show_next": "Mostrar Següent", + "show_previous": "Mostrar Anterior" + } + }, + "account_list": { + "tab_bar_hint": "Perfil actual seleccionat: %s. Toca dues vegades i manté el dit per a mostrar el commutador de comptes", + "dismiss_account_switcher": "Descartar el commutador de comptes", + "add_account": "Afegir compte" + }, + "wizard": { + "new_in_mastodon": "Nou a Mastodon", + "multiple_account_switch_intro_description": "Commuta entre diversos comptes mantenint premut el botó del perfil.", + "accessibility_hint": "Toca dues vegades per descartar l'assistent" + } + } +} \ No newline at end of file From d661c558d78b1b6912f117f9c295acaffbec6f96 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:26 +0200 Subject: [PATCH 214/571] New translations Intents.stringsdict (Galician) --- .../input/gl.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/gl.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.stringsdict new file mode 100644 index 000000000..6e3a897f0 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Hai %#@count_option@ coincidencias con '${content}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opcións + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Hai %#@count_option@ coincidentes con '${visibility}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opcións + + + + From 2fb7b344f8909fcba41ee2776afa8d54013c6087 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:27 +0200 Subject: [PATCH 215/571] New translations app.json (Scottish Gaelic) --- .../StringsConvertor/input/gd.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/gd.lproj/app.json diff --git a/Localization/StringsConvertor/input/gd.lproj/app.json b/Localization/StringsConvertor/input/gd.lproj/app.json new file mode 100644 index 000000000..d5555b8f9 --- /dev/null +++ b/Localization/StringsConvertor/input/gd.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Feuch ris a-rithist.", + "please_try_again_later": "Feuch ris a-rithist an ceann greis." + }, + "sign_up_failure": { + "title": "Dh’fhàillig leis a’ chlàradh" + }, + "server_error": { + "title": "Mearachd an fhrithealaiche" + }, + "vote_failure": { + "title": "Dh’fhàillig leis a’ bhòt", + "poll_ended": "Thàinig an cunntas-bheachd gu crìoch" + }, + "discard_post_content": { + "title": "Tilg air falbh an dreachd", + "message": "Dearbh tilgeil air falbh susbaint a’ phuist a sgrìobh thu." + }, + "publish_post_failure": { + "title": "Dh’fhàillig leis an fhoillseachadh", + "message": "Cha deach leinn am post fhoillseachadh.\nThoir sùil air a’ cheangal agad ris an eadar-lìon.", + "attachments_message": { + "video_attach_with_photo": "Chan urrainn dhut video a cheangal ri post sa bheil dealbh mu thràth.", + "more_than_one_video": "Chan urrainn dhut barrachd air aon video a cheangal ris." + } + }, + "edit_profile_failure": { + "title": "Mearachd le deasachadh na pròifil", + "message": "Cha b’ urrainn dhuinn a’ pròifil a dheasachadh. Feuch ris a-rithist." + }, + "sign_out": { + "title": "Clàraich a-mach", + "message": "A bheil thu cinnteach gu bheil thu airson clàradh a-mach?", + "confirm": "Clàraich a-mach" + }, + "block_domain": { + "title": "A bheil thu cinnteach dha-rìribh gu bheil thu airson an àrainn %s a bhacadh uile gu lèir? Mar as trice, foghnaidh gun dèan thu bacadh no mùchadh no dhà gu sònraichte agus bhiod sin na b’ fheàrr. Chan fhaic thu susbaint on àrainn ud agus thèid an luchd-leantainn agad on àrainn ud a thoirt air falbh.", + "block_entire_domain": "Bac an àrainn" + }, + "save_photo_failure": { + "title": "Dh’fhàillig le sàbhaladh an deilbh", + "message": "Cuir cead inntrigidh do thasg-lann nan dealbhan an comas gus an dealbh a shàbhaladh." + }, + "delete_post": { + "title": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?", + "message": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?" + }, + "clean_cache": { + "title": "Falamhaich an tasgadan", + "message": "Chaidh %s a thasgadan fhalamhachadh." + } + }, + "controls": { + "actions": { + "back": "Air ais", + "next": "Air adhart", + "previous": "Air ais", + "open": "Fosgail", + "add": "Cuir ris", + "remove": "Thoir air falbh", + "edit": "Deasaich", + "save": "Sàbhail", + "ok": "Ceart ma-thà", + "done": "Deiseil", + "confirm": "Dearbh", + "continue": "Lean air adhart", + "compose": "Sgrìobh", + "cancel": "Sguir dheth", + "discard": "Tilg air falbh", + "try_again": "Feuch ris a-rithist", + "take_photo": "Tog dealbh", + "save_photo": "Sàbhail an dealbh", + "copy_photo": "Dèan lethbhreac dhen dealbh", + "sign_in": "Clàraich a-steach", + "sign_up": "Clàraich leinn", + "see_more": "Seall a bharrachd", + "preview": "Ro-sheall", + "share": "Co-roinn", + "share_user": "Co-roinn %s", + "share_post": "Co-roinn am post", + "open_in_safari": "Fosgail ann an Safari", + "open_in_browser": "Fosgail sa bhrabhsair", + "find_people": "Lorg daoine a leanas tu", + "manually_search": "Lorg a làimh ’na àite", + "skip": "Leum thairis air", + "reply": "Freagair", + "report_user": "Dèan gearan mu %s", + "block_domain": "Bac %s", + "unblock_domain": "Dì-bhac %s", + "settings": "Roghainnean", + "delete": "Sguab às" + }, + "tabs": { + "home": "Dachaigh", + "search": "Lorg", + "notification": "Brath", + "profile": "Pròifil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Geàrr leum gu %s", + "compose_new_post": "Sgrìobh post ùr", + "show_favorites": "Seall na h-annsachdan", + "open_settings": "Fosgail na roghainnean" + }, + "timeline": { + "previous_status": "Am post roimhe", + "next_status": "An ath-phost", + "open_status": "Fosgail am post", + "open_author_profile": "Fosgail pròifil an ùghdair", + "open_reblogger_profile": "Fosgail pròifil an neach-brosnachaidh", + "reply_status": "Freagair do phost", + "toggle_reblog": "Toglaich brosnachadh a’ phuist", + "toggle_favorite": "Toglaich annsachd a’ phuist", + "toggle_content_warning": "Toglaich rabhadh susbainte a’ phuist", + "preview_image": "Ro-sheall an dealbh" + }, + "segmented_control": { + "previous_section": "An earrann roimhpe", + "next_section": "An ath earrann" + } + }, + "status": { + "user_reblogged": "Tha %s ’ga bhrosnachadh", + "user_replied_to": "Air %s fhreagairt", + "show_post": "Seall am post", + "show_user_profile": "Seall pròifil a’ chleachdaiche", + "content_warning": "Rabhadh susbainte", + "sensitive_content": "Susbaint fhrionasach", + "media_content_warning": "Thoir gnogag àite sam bith gus a nochdadh", + "tap_to_reveal": "Thoir gnogag gus a nochdadh", + "poll": { + "vote": "Cuir bhòt", + "closed": "Dùinte" + }, + "actions": { + "reply": "Freagair", + "reblog": "Brosnaich", + "unreblog": "Na brosnaich tuilleadh", + "favorite": "Cuir ris na h-annsachdan", + "unfavorite": "Thoir air falbh o na h-annsachdan", + "menu": "Clàr-taice", + "hide": "Falaich", + "show_image": "Seall an dealbh", + "show_gif": "Seall an GIF", + "show_video_player": "Seall cluicheadair video", + "tap_then_hold_to_show_menu": "Thoir gnogag ’s cùm sìos a shealltainn a’ chlàir-thaice" + }, + "tag": { + "url": "URL", + "mention": "Iomradh", + "link": "Ceangal", + "hashtag": "Taga hais", + "email": "Post-d", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Chì a h-uile duine am post seo ach cha nochd e air an loidhne-ama phoblach.", + "private": "Chan fhaic ach an luchd-leantainn aca am post seo.", + "private_from_me": "Chan fhaic ach an luchd-leantainn agam am post seo.", + "direct": "Chan fhaic ach an cleachdaiche air an dugadh iomradh am post seo." + } + }, + "friendship": { + "follow": "Lean air", + "following": "’Ga leantainn", + "request": "Iarrtas", + "pending": "Ri dhèiligeadh", + "block": "Bac", + "block_user": "Bac %s", + "block_domain": "Bac %s", + "unblock": "Dì-bhac", + "unblock_user": "Dì-bhac %s", + "blocked": "’Ga bhacadh", + "mute": "Mùch", + "mute_user": "Mùch %s", + "unmute": "Dì-mhùch", + "unmute_user": "Dì-mhùch %s", + "muted": "’Ga mhùchadh", + "edit_info": "Deasaich" + }, + "timeline": { + "filtered": "Criathraichte", + "timestamp": { + "now": "An-dràsta" + }, + "loader": { + "load_missing_posts": "Luchdaich postaichean a dhìth", + "loading_missing_posts": "A’ luchdadh nam post a tha a dhìth…", + "show_more_replies": "Seall barrachd freagairtean" + }, + "header": { + "no_status_found": "Cha deach post a lorg", + "blocking_warning": "Chan fhaic thu pròifil a’ chleachdaiche seo\n gus an dì-bhac thu iad.\nSeo an coltas a th’ air a’ phròifil agad dhaibh-san.", + "user_blocking_warning": "Chan fhaic thu a’ phròifil aig %s\n gus an dì-bhac thu iad.\nSeo an coltas a th’ air a’ phròifil agad dhaibh-san.", + "blocked_warning": "Chan fhaic thu pròifil a’ chleachdaiche seo\n mus dì-bhac iad thu.", + "user_blocked_warning": "Chan fhaic thu a’ phròifil aig %s\n mus dì-bhac iad thu.", + "suspended_warning": "Chaidh an cleachdaiche seo a chur à rèim.", + "user_suspended_warning": "Chaidh an cunntas aig %s a chur à rèim." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "A’ cur nan lìonraidhean sòisealta\n’nad làmhan fhèin.", + "get_started": "Dèan toiseach-tòiseachaidh", + "log_in": "Clàraich a-steach" + }, + "server_picker": { + "title": "Tagh frithealaiche sam bith.", + "subtitle": "Tagh coimhearsnachd stèidhichte air d’ ùidhean no an roinn-dùthcha agad no tè choitcheann.", + "subtitle_extend": "Tagh coimhearsnachd stèidhichte air d’ ùidhean no an roinn-dùthcha agad no tè choitcheann. Tha gach coimhearsnachd ’ga stiùireadh le buidheann no neach gu neo-eisimeileach.", + "button": { + "category": { + "all": "Na h-uile", + "all_accessiblity_description": "Roinn-seòrsa: Na h-uile", + "academia": "saoghal nan sgoilear", + "activism": "iomairteachd", + "food": "biadh", + "furry": "furry", + "games": "geamannan", + "general": "coitcheann", + "journalism": "naidheachdas", + "lgbt": "LGBT", + "regional": "ionadail", + "art": "ealain", + "music": "ceòl", + "tech": "teicneolas" + }, + "see_less": "Seall nas lugha", + "see_more": "Seall a bharrachd" + }, + "label": { + "language": "CÀNAN", + "users": "CLEACHDAICHEAN", + "category": "ROINN-SEÒRSA" + }, + "input": { + "placeholder": "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "A’ lorg nam frithealaichean ri am faighinn…", + "bad_network": "Chaidh rudeigin ceàrr le luchdadh an dàta. Thoir sùil air a’ cheangal agad ris an eadar-lìon.", + "no_results": "Gun toradh" + } + }, + "register": { + "title": "Innis dhuinn mu do dhèidhinn.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Sguab às" + }, + "username": { + "placeholder": "ainm-cleachdaiche", + "duplicate_prompt": "Tha an t-ainm-cleachdaiche seo aig cuideigin eile." + }, + "display_name": { + "placeholder": "ainm-taisbeanaidh" + }, + "email": { + "placeholder": "post-d" + }, + "password": { + "placeholder": "facal-faire", + "require": "Feumaidh am facal-faire agad co-dhiù:", + "character_limit": "8 caractaran", + "accessibility": { + "checked": "le cromag", + "unchecked": "gun chromag" + }, + "hint": "Feumaidh ochd caractaran a bhith san fhacal-fhaire agad air a char as giorra" + }, + "invite": { + "registration_user_invite_request": "Carson a bu mhiann leat ballrachd fhaighinn?" + } + }, + "error": { + "item": { + "username": "Ainm-cleachdaiche", + "email": "Post-d", + "password": "Facal-faire", + "agreement": "Aonta", + "locale": "Sgeama ionadail", + "reason": "Adhbhar" + }, + "reason": { + "blocked": "Tha solaraiche puist-d nach eil ceadaichte am broinn %s", + "unreachable": "Tha coltas nach eil %s ann", + "taken": "Tha %s ’ga chleachdadh mu thràth", + "reserved": "’S e facal glèidhte a th’ ann an %s", + "accepted": "Feumaidh tu aontachadh ri %s", + "blank": "Tha %s riatanach", + "invalid": "Chan eil %s dligheach", + "too_long": "Tha %s ro fhada", + "too_short": "Tha %s ro ghoirid", + "inclusion": "Cha chuir sinn taic ri luach %s" + }, + "special": { + "username_invalid": "Chan fhaod ach litrichean gun stràcan is fo-loidhnichean a bhith am broinn ainm-cleachdaiche", + "username_too_long": "Tha an t-ainm-cleachdaiche ro fhada (chan fhaod e a bhith nas fhaide na 30 caractar)", + "email_invalid": "Chan e seòladh puist-d dligheach a tha seo", + "password_too_short": "Tha am facal-faire ro ghoirid (feumaidh 8 caractaran a bhith ann air a char as giorra)" + } + } + }, + "server_rules": { + "title": "Riaghailt bhunasach no dhà.", + "subtitle": "Shuidhich rianairean %s na riaghailtean seo.", + "prompt": "Ma leanas tu air adhart, bidh thu fo bhuaidh teirmichean seirbheise is poileasaidh prìobhaideachd %s.", + "terms_of_service": "teirmichean na seirbheise", + "privacy_policy": "poileasaidh prìobhaideachd", + "button": { + "confirm": "Gabhaidh mi ris" + } + }, + "confirm_email": { + "title": "Aon rud eile.", + "subtitle": "Tha sinn air post-d a chur gu %s,\nthoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Fosgail aplacaid a’ phuist-d", + "resend": "Ath-chuir" + }, + "dont_receive_email": { + "title": "Thoir sùil air a’ phost-d agad", + "description": "Dearbh gu bheil an seòladh puist-d agad mar bu chòir agus nach eil dad ann am pasgan an truilleis.", + "resend_email": "Cuir am post-d a-rithist" + }, + "open_email_app": { + "title": "Thoir sùil air a’ bhogsa a-steach agad.", + "description": "Tha sinn air post-d a chur thugad. Thoir sùil air pasgan an truilleis agad mura d’ fhuair thu e.", + "mail": "Post", + "open_email_client": "Fosgail cliant puist-d" + } + }, + "home_timeline": { + "title": "Dachaigh", + "navigation_bar_state": { + "offline": "Far loidhne", + "new_posts": "Seall na postaichean ùra", + "published": "Chaidh fhoillseachadh!", + "Publishing": "A’ foillseachadh a’ phuist…", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Lorg daoine a leanas tu", + "follow_explain": "Nuair a leanas tu air cuideigin, chì thu na puist aca air inbhir na dachaigh agad." + }, + "compose": { + "title": { + "new_post": "Post ùr", + "new_reply": "Freagairt ùr" + }, + "media_selection": { + "camera": "Tog dealbh", + "photo_library": "Leabhar-lann nan dealbhan", + "browse": "Rùraich" + }, + "content_input_placeholder": "Sgrìobh no cuir ann na tha air d’ aire", + "compose_action": "Foillsich", + "replying_to_user": "a’ freagairt gu %s", + "attachment": { + "photo": "dealbh", + "video": "video", + "attachment_broken": "Seo %s a tha briste is cha ghabh\na luchdadh suas gu Mastodon.", + "description_photo": "Mìnich an dealbh dhan fheadhainn air a bheil cion-lèirsinne…", + "description_video": "Mìnich a’ video dhan fheadhainn air a bheil cion-lèirsinne…" + }, + "poll": { + "duration_time": "Faide: %s", + "thirty_minutes": "Leth-uair a thìde", + "one_hour": "Uair a thìde", + "six_hours": "6 uairean a thìde", + "one_day": "Latha", + "three_days": "3 làithean", + "seven_days": "Seachdain", + "option_number": "Roghainn %ld" + }, + "content_warning": { + "placeholder": "Sgrìobh rabhadh pongail an-seo…" + }, + "visibility": { + "public": "Poblach", + "unlisted": "Falaichte o liostaichean", + "private": "Luchd-leantainn a-mhàin", + "direct": "Daoine air an dug mi iomradh a-mhàin" + }, + "auto_complete": { + "space_to_add": "Brùth air Space gus a chur ris" + }, + "accessibility": { + "append_attachment": "Cuir ceanglachan ris", + "append_poll": "Cuir cunntas-bheachd ris", + "remove_poll": "Thoir air falbh an cunntas-bheachd", + "custom_emoji_picker": "Roghnaichear nan Emoji gnàthaichte", + "enable_content_warning": "Cuir rabhadh susbainte an comas", + "disable_content_warning": "Cuir rabhadh susbainte à comas", + "post_visibility_menu": "Clàr-taice faicsinneachd a’ phuist" + }, + "keyboard": { + "discard_post": "Tilg air falbh am post", + "publish_post": "Foillsich am post", + "toggle_poll": "Toglaich an cunntas-bheachd", + "toggle_content_warning": "Toglaich rabhadh susbainte", + "append_attachment_entry": "Cuir ceanglachan ris – %s", + "select_visibility_entry": "Tagh an fhaicsinneachd – %s" + } + }, + "profile": { + "dashboard": { + "posts": "postaichean", + "following": "a’ leantainn", + "followers": "luchd-leantainn" + }, + "fields": { + "add_row": "Cuir ràgh ris", + "placeholder": { + "label": "Leubail", + "content": "Susbaint" + } + }, + "segmented_control": { + "posts": "Postaichean", + "replies": "Freagairtean", + "posts_and_replies": "Postaichean ’s freagairtean", + "media": "Meadhanan", + "about": "Mu dhèidhinn" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mùch an cunntas", + "message": "Dearbh mùchadh %s" + }, + "confirm_unmute_user": { + "title": "Dì-mhùch an cunntas", + "message": "Dearbh dì-mhùchadh %s" + }, + "confirm_block_user": { + "title": "Bac an cunntas", + "message": "Dearbh bacadh %s" + }, + "confirm_unblock_user": { + "title": "Dì-bhac an cunntas", + "message": "Dearbh dì-bhacadh %s" + } + }, + "accessibility": { + "show_avatar_image": "Seall dealbh an avatar", + "edit_avatar_image": "Deasaich dealbh an avatar", + "show_banner_image": "Seall dealbh brataich", + "double_tap_to_open_the_list": "Thoir gnogag dhùbailte a dh’fhosgladh na liosta" + } + }, + "follower": { + "footer": "Cha dèid luchd-leantainn o fhrithealaichean eile a shealltainn." + }, + "following": { + "footer": "Cha dèid cò air a leanas tu air frithealaichean eile a shealltainn." + }, + "search": { + "title": "Lorg", + "search_bar": { + "placeholder": "Lorg sna tagaichean hais is cleachdaichean", + "cancel": "Sguir dheth" + }, + "recommend": { + "button_text": "Seall na h-uile", + "hash_tag": { + "title": "A’ treandadh air Mastodon", + "description": "Tagaichean hais le aire orra an-dràsta", + "people_talking": "Tha %s a’ bruidhinn" + }, + "accounts": { + "title": "Cunntasan a chòrdas riut ma dh’fhaoidte", + "description": "Saoil am bu toigh leat leantainn air na cunntasan seo?", + "follow": "Lean air" + } + }, + "searching": { + "segment": { + "all": "Na h-uile", + "people": "Daoine", + "hashtags": "Tagaichean hais", + "posts": "Postaichean" + }, + "empty_state": { + "no_results": "Gun toradh" + }, + "recent_search": "Na lorg thu o chionn goirid", + "clear": "Falamhaich" + } + }, + "discovery": { + "tabs": { + "posts": "Postaichean", + "hashtags": "Tagaichean hais", + "news": "Naidheachdan", + "community": "Coimhearsnachd", + "for_you": "Dhut-sa" + }, + "intro": "Seo na postaichean fèillmhor ’nad cheàrnaidh de Mhastodon." + }, + "favorite": { + "title": "Na h-annsachdan agad" + }, + "notification": { + "title": { + "Everything": "A h-uile rud", + "Mentions": "Iomraidhean" + }, + "notification_description": { + "followed_you": "– ’s iad ’gad leantainn a-nis", + "favorited_your_post": "– is annsa leotha am post agad", + "reblogged_your_post": "– ’s iad air am post agad a bhrosnachadh", + "mentioned_you": "– ’s iad air iomradh a thoirt ort", + "request_to_follow_you": "iarrtas leantainn ort", + "poll_has_ended": "thàinig cunntas-bheachd gu crìoch" + }, + "keyobard": { + "show_everything": "Seall a h-uile càil", + "show_mentions": "Seall na h-iomraidhean" + } + }, + "thread": { + "back_title": "Post", + "title": "Post le %s" + }, + "settings": { + "title": "Roghainnean", + "section": { + "appearance": { + "title": "Coltas", + "automatic": "Fèin-obrachail", + "light": "Soilleir an-còmhnaidh", + "dark": "Dorcha an-còmhnaidh" + }, + "look_and_feel": { + "title": "Coltas", + "use_system": "Cleachd coltas an t-siostaim", + "really_dark": "Glè dhorcha", + "sorta_dark": "Caran dorcha", + "light": "Soilleir" + }, + "notifications": { + "title": "Brathan", + "favorites": "Nuair as annsa leotha am post agam", + "follows": "Nuair a leanas iad orm", + "boosts": "Nuair a bhrosnaicheas iad post uam", + "mentions": "Nuair a bheir iad iomradh orm", + "trigger": { + "anyone": "Airson duine sam bith, cuir brath thugam", + "follower": "Airson luchd-leantainn, cuir brath thugam", + "follow": "Airson daoine air a leanas mi, cuir brath thugam", + "noone": "Na cuir brath thugam idir", + "title": " " + } + }, + "preference": { + "title": "Roghainnean", + "true_black_dark_mode": "Modh dubh dorcha", + "disable_avatar_animation": "Cuir beothachadh nan avataran à comas", + "disable_emoji_animation": "Cuir beothachadh nan Emojis à comas", + "using_default_browser": "Cleachd am brabhsair bunaiteach airson ceanglaichean fhosgladh", + "open_links_in_mastodon": "Fosgail ceanglaichean ann am Mastodon" + }, + "boring_zone": { + "title": "An earrann ràsanach", + "account_settings": "Roghainnean a’ chunntais", + "terms": "Teirmichean na seirbheise", + "privacy": "Am poileasaidh prìobhaideachd" + }, + "spicy_zone": { + "title": "Gnìomhan", + "clear": "Falamhaich tasgadan nam meadhanan", + "signout": "Clàraich a-mach" + } + }, + "footer": { + "mastodon_description": "’S e bathar-bog le bun-tùs fosgailte a th’ ann am Mastodon. ’S urrainn dhut aithris a dhèanamh air duilgheadasan air GitHub fo %s (%s)" + }, + "keyboard": { + "close_settings_window": "Dùin uinneag nan roghainnean" + } + }, + "report": { + "title_report": "Dèan gearan", + "title": "Dèan gearan mu %s", + "step1": "Ceum 1 à 2", + "step2": "Ceum 2 à 2", + "content1": "A bheil post sam bith eile ann a bu mhiann leat cur ris a’ ghearan?", + "content2": "A bheil rud sam bith ann a bu mhiann leat innse dha na maoir mun ghearan seo?", + "report_sent_title": "Mòran taing airson a’ ghearain, bheir sinn sùil air.", + "send": "Cuir an gearan", + "skip_to_send": "Cuir gun bheachd ris", + "text_placeholder": "Sgrìobh no cuir ann beachdan a bharrachd", + "reported": "CHAIDH GEARAN A DHÈANAMH", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Dùin an ro-shealladh", + "show_next": "Air adhart", + "show_previous": "Air ais" + } + }, + "account_list": { + "tab_bar_hint": "A’ phròifil air a taghadh: %s. Thoir gnogag dhùbailte is cùm sìos a ghearradh leum gu cunntas eile", + "dismiss_account_switcher": "Leig seachad taghadh a’ chunntais", + "add_account": "Cuir cunntas ris" + }, + "wizard": { + "new_in_mastodon": "Na tha ùr ann am Mastodon", + "multiple_account_switch_intro_description": "Geàrr leum eadar iomadh cunntas le cumail sìos putan na pròifil.", + "accessibility_hint": "Thoir gnogag dhùbailte a’ leigeil seachad an draoidh seo" + } + } +} \ No newline at end of file From d2dc20cce2da1ceb1112ca35c67f17f085698374 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:27 +0200 Subject: [PATCH 216/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/kmr.lproj/app.json diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json new file mode 100644 index 000000000..d1f93719a --- /dev/null +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Ji kerema xwe dîsa biceribîne.", + "please_try_again_later": "Ji kerema xwe paşê dîsa biceribîne." + }, + "sign_up_failure": { + "title": "Tomarkirin têkçû" + }, + "server_error": { + "title": "Çewtiya rajekar" + }, + "vote_failure": { + "title": "Dengdayîn têkçû", + "poll_ended": "Rapirsîya qediya" + }, + "discard_post_content": { + "title": "Reşnivîsê paşguh bike", + "message": "Bipejrîne ku naveroka şandiyê ya hatiye nivîsandin paşguh bikî." + }, + "publish_post_failure": { + "title": "Weşandin têkçû", + "message": "Weşandina şandiyê têkçû.\nJkx girêdana înternetê xwe kontrol bike.", + "attachments_message": { + "video_attach_with_photo": "Nikare vîdyoyekê tevlî şandiyê ku berê wêne tê de heye bike.", + "more_than_one_video": "Nikare ji bêtirî yek vîdyoyekê tevlî şandiyê bike." + } + }, + "edit_profile_failure": { + "title": "Di serrastkirina profîlê çewtî", + "message": "Nikare profîlê serrast bike. Jkx dîsa biceribîne." + }, + "sign_out": { + "title": "Derkeve", + "message": "Ma tu dixwazî ku derkevî?", + "confirm": "Derkeve" + }, + "block_domain": { + "title": "Tu ji xwe bawerî, bi rastî tu dixwazî hemû %s asteng bikî? Di gelek rewşan de asteng kirin an jî bêdeng kirin têrê dike û tê tercîh kirin. Tu nikarî naveroka vê navperê di demnameyê an jî agahdariyên xwe de bibînî. Şopînerên te yê di vê navperê were jêbirin.", + "block_entire_domain": "Navperê asteng bike" + }, + "save_photo_failure": { + "title": "Tomarkirina wêneyê têkçû", + "message": "Ji kerema xwe mafê bide gihîştina wênegehê çalak bike da ku wêne werin tomarkirin." + }, + "delete_post": { + "title": "Şandiyê jê bibe", + "message": "Ma tu dixwazî vê şandiyê jê bibî?" + }, + "clean_cache": { + "title": "Pêşbîrê pak bike", + "message": "Pêşbîra %s biserketî hate pakkirin." + } + }, + "controls": { + "actions": { + "back": "Vegere", + "next": "Pêş", + "previous": "Paş", + "open": "Veke", + "add": "Tevlî bike", + "remove": "Rake", + "edit": "Serrast bike", + "save": "Tomar bike", + "ok": "BAŞ E", + "done": "Qediya", + "confirm": "Bipejirîne", + "continue": "Bidomîne", + "compose": "Binivîsîne", + "cancel": "Dev jê berde", + "discard": "Biavêje", + "try_again": "Dîsa biceribîne", + "take_photo": "Wêne bikişîne", + "save_photo": "Wêneyê tomar bike", + "copy_photo": "Wêneyê jê bigire", + "sign_in": "Têkeve", + "sign_up": "Tomar bibe", + "see_more": "Bêtir bibîne", + "preview": "Pêşdîtin", + "share": "Parve bike", + "share_user": "%s parve bike", + "share_post": "Şandiyê parve bike", + "open_in_safari": "Di Safariyê de veke", + "open_in_browser": "Di gerokê de veke", + "find_people": "Mirovan bo şopandinê bibîne", + "manually_search": "Ji devlê bi destan lêgerînê bike", + "skip": "Derbas bike", + "reply": "Bersivê bide", + "report_user": "%s ragihîne", + "block_domain": "%s asteng bike", + "unblock_domain": "%s asteng neke", + "settings": "Sazkarî", + "delete": "Jê bibe" + }, + "tabs": { + "home": "Serrûpel", + "search": "Bigere", + "notification": "Agahdarî", + "profile": "Profîl" + }, + "keyboard": { + "common": { + "switch_to_tab": "Biguherîne bo %s", + "compose_new_post": "Şandiyeke nû binivsîne", + "show_favorites": "Bijarteyan nîşan bide", + "open_settings": "Sazkariyan Veke" + }, + "timeline": { + "previous_status": "Şandeya paş", + "next_status": "Şandiya pêş", + "open_status": "Şandiyê veke", + "open_author_profile": "Profîla nivîskaran veke", + "open_reblogger_profile": "Profîla nivîskaran veke", + "reply_status": "Bersivê bide şandiyê", + "toggle_reblog": "Ji nû ve nivîsandin di şandiyê de biguherîne", + "toggle_favorite": "Li ser şandiyê bijarte biguherîne", + "toggle_content_warning": "Hişyariya naverokê biguherîne", + "preview_image": "Pêşdîtina wêneyê" + }, + "segmented_control": { + "previous_section": "Beşa paş", + "next_section": "Beşa pêş" + } + }, + "status": { + "user_reblogged": "%s ji nû ve nivîsand", + "user_replied_to": "Bersiv da %s", + "show_post": "Şandiyê nîşan bide", + "show_user_profile": "Profîla bikarhêner nîşan bide", + "content_warning": "Hişyariya naverokê", + "sensitive_content": "Naveroka hestiyarî", + "media_content_warning": "Ji bo eşkerekirinê li derekî bitikîne", + "tap_to_reveal": "Ji bo dîtinê bitikîne", + "poll": { + "vote": "Deng bide", + "closed": "Girtî" + }, + "actions": { + "reply": "Bersivê bide", + "reblog": "Ji nû ve nivîsandin", + "unreblog": "Ji nû ve nivîsandinê vegere", + "favorite": "Bijarte", + "unfavorite": "Nebijarte", + "menu": "Kulîn", + "hide": "Veşêre", + "show_image": "Wêneyê nîşan bide", + "show_gif": "GIF nîşan bide", + "show_video_player": "Lêdera vîdyoyê nîşan bide", + "tap_then_hold_to_show_menu": "Ji bo nîşandana menuyê dirêj bitikîne" + }, + "tag": { + "url": "URL", + "mention": "Qalkirin", + "link": "Girêdan", + "hashtag": "Hashtag", + "email": "E-name", + "emoji": "Emojî" + }, + "visibility": { + "unlisted": "Her kes dikare vê şandiyê bibîne lê nayê nîşandan di demnameya gelemperî de.", + "private": "Tenê şopînerên wan dikarin vê şandiyê bibînin.", + "private_from_me": "Tenê şopînerên min dikarin vê şandiyê bibînin.", + "direct": "Tenê bikarhênerê qalkirî dikare vê şandiyê bibîne." + } + }, + "friendship": { + "follow": "Bişopîne", + "following": "Dişopîne", + "request": "Daxwaz bike", + "pending": "Tê nirxandin", + "block": "Asteng bike", + "block_user": "%s asteng bike", + "block_domain": "%s asteng bike", + "unblock": "Astengiyê rake", + "unblock_user": "%s asteng neke", + "blocked": "Astengkirî", + "mute": "Bêdeng bike", + "mute_user": "%s bêdeng bike", + "unmute": "Bêdeng neke", + "unmute_user": "%s bêdeng neke", + "muted": "Bêdengkirî", + "edit_info": "Zanyariyan serrast bike" + }, + "timeline": { + "filtered": "Parzûnkirî", + "timestamp": { + "now": "Niha" + }, + "loader": { + "load_missing_posts": "Şandiyên wendayî bar bike", + "loading_missing_posts": "Şandiyên wendayî tên barkirin...", + "show_more_replies": "Bêtir bersivan nîşan bide" + }, + "header": { + "no_status_found": "Tu şandî nehate dîtin", + "blocking_warning": "Tu nikarî profîla vî/ê bikarhênerî bibînî\nHeya ku tu astengiyê li ser wî/ê ranekî.\nProfîla te ji wan ra wiha xuya dike.", + "user_blocking_warning": "Tu nikarî profîla %s bibînî\nHeya ku tu astengiyê li ser wî/ê ranekî.\nProfîla te ji wan ra wiha xuya dike.", + "blocked_warning": "Tu nikarî profîla vî/ê bikarhênerî bibînî\nheya ku ew astengiyê li ser te rakin.", + "user_blocked_warning": "Tu nikarî profîla %s bibînî\nHeta ku astengîya te rakin.", + "suspended_warning": "Ev bikarhêner hatiye rawestandin.", + "user_suspended_warning": "Ajimêra %s hatiye rawestandin." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Torên civakî\ndi destên te de.", + "get_started": "Dest pê bike", + "log_in": "Têkeve" + }, + "server_picker": { + "title": "Mastodon ji bikarhênerên di civakên cuda de pêk tê.", + "subtitle": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre.", + "subtitle_extend": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre. Her civakek ji hêla rêxistinek an kesek bi tevahî serbixwe ve tê xebitandin.", + "button": { + "category": { + "all": "Hemû", + "all_accessiblity_description": "Beş: Hemû", + "academia": "akademî", + "activism": "çalakî", + "food": "xwarin", + "furry": "furry", + "games": "lîsk", + "general": "giştî", + "journalism": "rojnamevanî", + "lgbt": "lgbt", + "regional": "herêmî", + "art": "huner", + "music": "muzîk", + "tech": "teknolojî" + }, + "see_less": "Kêmtir bibîne", + "see_more": "Bêtir bibîne" + }, + "label": { + "language": "ZIMAN", + "users": "BIKARHÊNER", + "category": "BEŞ" + }, + "input": { + "placeholder": "Li rajekaran bigere", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Peydakirina rajekarên berdest...", + "bad_network": "Di dema barkirina daneyan da çewtî derket. Girêdana xwe ya înternetê kontrol bike.", + "no_results": "Encam tune" + } + }, + "register": { + "title": "Ji me re hinekî qala xwe bike %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Jê bibe" + }, + "username": { + "placeholder": "navê bikarhêner", + "duplicate_prompt": "Navê vê bikarhêner tê girtin." + }, + "display_name": { + "placeholder": "navê nîşanê" + }, + "email": { + "placeholder": "e-name" + }, + "password": { + "placeholder": "pêborîn", + "require": "Pêdiviya pêborîna te ya herî kêm:", + "character_limit": "8 tîp", + "accessibility": { + "checked": "hate kontrolkirin", + "unchecked": "nehate kontrolkirin" + }, + "hint": "Pêborîna te herî kêm divê ji 8 tîpan pêk bê" + }, + "invite": { + "registration_user_invite_request": "Tu çima dixwazî beşdar bibî?" + } + }, + "error": { + "item": { + "username": "Navê bikarhêner", + "email": "E-name", + "password": "Pêborîn", + "agreement": "Peyman", + "locale": "Zimanê navrûyê", + "reason": "Sedem" + }, + "reason": { + "blocked": "%s peydekerê e-peyamê yê qedexekirî dihewîne", + "unreachable": "%s xuya ye ku tune ye", + "taken": "%s jixwe tê bikaranîn", + "reserved": "%s peyveke parastî ye", + "accepted": "%s divê were pejirandin", + "blank": "%s pêwist e", + "invalid": "%s ne derbasdar e", + "too_long": "%s pir dirêj e", + "too_short": "%s pir kurt e", + "inclusion": "%s ne nirxek piştgirî ye" + }, + "special": { + "username_invalid": "Navê bikarhêner divê tenê ji tîpên alfajimarî û binxêz pêk be", + "username_too_long": "Navê bikarhêner pir dirêj e (ji 30 tîpan dirêjtir nabe)", + "email_invalid": "Ev navnîşaneke e-nameyê ne derbasdar e", + "password_too_short": "Pêborîn pir kurt e (divê herî kêm 8 tîp be)" + } + } + }, + "server_rules": { + "title": "Hinek rêzikên bingehîn.", + "subtitle": "Ev rêzik ji aliyê çavdêrên %s ve tên sazkirin.", + "prompt": "Bi domandinê, tu ji bo %s di bin mercên bikaranînê û polîtîkaya nepenîtiyê dipejirînî.", + "terms_of_service": "mercên bikaranînê", + "privacy_policy": "polîtikaya nihêniyê", + "button": { + "confirm": "Ez dipejirînim" + } + }, + "confirm_email": { + "title": "Tiştekî dawî.", + "subtitle": "Me tenê e-nameyek ji %s re şand,\ngirêdanê bitikne da ku ajimêra xwe bidî piştrastkirin.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Sepana e-nameyê veke", + "resend": "Ji nû ve bişîne" + }, + "dont_receive_email": { + "title": "E-nameyê xwe kontrol bike", + "description": "Kontrol bike ka navnîşana e-nameya te rast e û her wiha peldanka xwe ya spam.", + "resend_email": "E-namyê yê dîsa bişîne" + }, + "open_email_app": { + "title": "Nameyên xwe yên wergirtî kontrol bike.", + "description": "Me tenê ji te re e-nameyek şand. Heke nehatiye peldanka xwe ya spamê kontrol bike.", + "mail": "E-name", + "open_email_client": "Rajegirê e-nameyê veke" + } + }, + "home_timeline": { + "title": "Serrûpel", + "navigation_bar_state": { + "offline": "Derhêl", + "new_posts": "Şandiyên nû bibîne", + "published": "Hate weşandin!", + "Publishing": "Şandî tê weşandin...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Kesên bo ku bişopînî bibîne", + "follow_explain": "Gava tu kesekî dişopînî, tu yê şandiyê wan di serrûpelê de bibîne." + }, + "compose": { + "title": { + "new_post": "Şandiya nû", + "new_reply": "Bersiva nû" + }, + "media_selection": { + "camera": "Wêne bikişîne", + "photo_library": "Wênegeh", + "browse": "Bigere" + }, + "content_input_placeholder": "Tiştê ku di hişê te de ye binivîsin an jî pêve bike", + "compose_action": "Biweşîne", + "replying_to_user": "bersiv bide %s", + "attachment": { + "photo": "wêne", + "video": "vîdyo", + "attachment_broken": "Ev %s naxebite û nayê barkirin\n li ser Mastodon.", + "description_photo": "Wêneyê ji bo kêmbînên dîtbar bide nasîn...", + "description_video": "Vîdyoyê ji bo kêmbînên dîtbar bide nasîn..." + }, + "poll": { + "duration_time": "Dirêjî: %s", + "thirty_minutes": "30 xulek", + "one_hour": "1 Demjimêr", + "six_hours": "6 Demjimêr", + "one_day": "1 Roj", + "three_days": "3 Roj", + "seven_days": "7 Roj", + "option_number": "Vebijêrk %ld" + }, + "content_warning": { + "placeholder": "Li vir hişyariyek hûrgilî binivîsine..." + }, + "visibility": { + "public": "Gelemperî", + "unlisted": "Nerêzokkirî", + "private": "Tenê şopîneran", + "direct": "Tenê mirovên ku min qalkirî" + }, + "auto_complete": { + "space_to_add": "Bicîhkirinê tevlî bike" + }, + "accessibility": { + "append_attachment": "Pêvek tevlî bike", + "append_poll": "Rapirsî tevlî bike", + "remove_poll": "Rapirsî rake", + "custom_emoji_picker": "Hilbijêrê emojî yên kesanekirî", + "enable_content_warning": "Hişyariya naverokê çalak bike", + "disable_content_warning": "Hişyariya naverokê neçalak bike", + "post_visibility_menu": "Kulîna xuyabûna şandiyê" + }, + "keyboard": { + "discard_post": "Şandî paşguh bike", + "publish_post": "Şandiyê biweşîne", + "toggle_poll": "Rapirsiyê biguherîne", + "toggle_content_warning": "Hişyariya naverokê biguherîne", + "append_attachment_entry": "Pêvek tevlî bike - %s", + "select_visibility_entry": "Xuyabûnê hilbijêre - %s" + } + }, + "profile": { + "dashboard": { + "posts": "şandî", + "following": "dişopîne", + "followers": "şopîner" + }, + "fields": { + "add_row": "Rêzê tevlî bike", + "placeholder": { + "label": "Nîşan", + "content": "Naverok" + } + }, + "segmented_control": { + "posts": "Şandî", + "replies": "Bersiv", + "posts_and_replies": "Şandî û bersiv", + "media": "Medya", + "about": "Derbar" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Ajimêrê bêdeng bike", + "message": "Ji bo bêdengkirina %s bipejirîne" + }, + "confirm_unmute_user": { + "title": "Ajimêrê bêdeng neke", + "message": "Ji bo vekirina bêdengkirinê %s bipejirîne" + }, + "confirm_block_user": { + "title": "Ajimêr asteng bike", + "message": "Ji bo rakirina astengkirinê %s bipejirîne" + }, + "confirm_unblock_user": { + "title": "Astengiyê li ser ajimêr rake", + "message": "Ji bo rakirina astengkirinê %s bipejirîne" + } + }, + "accessibility": { + "show_avatar_image": "Wêneya avatar nîşan bide", + "edit_avatar_image": "Wêneya avatar serrast bike", + "show_banner_image": "Wêneya paşrûyê nîşan bide", + "double_tap_to_open_the_list": "Ducaran bitikîne bo vekirina listeyê" + } + }, + "follower": { + "footer": "Şopîner ji rajekerên din nayê dîtin." + }, + "following": { + "footer": "Şopandin ji rajekerên din nayê dîtin." + }, + "search": { + "title": "Bigere", + "search_bar": { + "placeholder": "Li hashtag û bikarhêneran bigere", + "cancel": "Dev jê berde" + }, + "recommend": { + "button_text": "Hemûyan bibîne", + "hash_tag": { + "title": "Rojev li ser Mastodon", + "description": "Hashtag ên ku pir balê dikişînin", + "people_talking": "%s kes diaxivin" + }, + "accounts": { + "title": "Ajimêrên ku belkî tu jê hez bikî", + "description": "Dibe ku tu bixwazî van ajimêran bişopînî", + "follow": "Bişopîne" + } + }, + "searching": { + "segment": { + "all": "Hemû", + "people": "Mirov", + "hashtags": "Hashtag", + "posts": "Şandî" + }, + "empty_state": { + "no_results": "Encam tune" + }, + "recent_search": "Lêgerînên dawî", + "clear": "Pak bike" + } + }, + "discovery": { + "tabs": { + "posts": "Şandî", + "hashtags": "Hashtag", + "news": "Nûçe", + "community": "Civak", + "for_you": "Ji bo te" + }, + "intro": "Ev şandiyên ku di quncika Mastodon balê dikişîne." + }, + "favorite": { + "title": "Bijarteyên te" + }, + "notification": { + "title": { + "Everything": "Her tişt", + "Mentions": "Qalkirin" + }, + "notification_description": { + "followed_you": "te şopand", + "favorited_your_post": "şandiya te hez kir", + "reblogged_your_post": "şandiya te ji nû ve nivisand", + "mentioned_you": "qale te kir", + "request_to_follow_you": "dixwazê te bişopîne", + "poll_has_ended": "rapirsî qediya" + }, + "keyobard": { + "show_everything": "Her tiştî nîşan bide", + "show_mentions": "Qalkirinan nîşan bike" + } + }, + "thread": { + "back_title": "Şandî", + "title": "Şandî ji %s" + }, + "settings": { + "title": "Sazkarî", + "section": { + "appearance": { + "title": "Xuyang", + "automatic": "Xweber", + "light": "Her dem ronahî", + "dark": "Her dem tarî" + }, + "look_and_feel": { + "title": "Xuyang", + "use_system": "Pergalê bi kar bîne", + "really_dark": "Tarî", + "sorta_dark": "Hinekî tarî", + "light": "Ronahî" + }, + "notifications": { + "title": "Agahdarî", + "favorites": "Şandiyên min hez kir", + "follows": "Min dişopîne", + "boosts": "Şandiya min ji nû ve nivîsand", + "mentions": "Qale min kir", + "trigger": { + "anyone": "her kes", + "follower": "şopînerek", + "follow": "her kesê ku dişopînim", + "noone": "ne yek", + "title": "Min agahdar bike gava" + } + }, + "preference": { + "title": "Sazkarî", + "true_black_dark_mode": "Moda tarî ya reş a rastîn", + "disable_avatar_animation": "Avatarên anîmasyonî neçalak bike", + "disable_emoji_animation": "Emojiyên anîmasyonî neçalak bike", + "using_default_browser": "Ji bo vekirina girêdanan geroka berdest bi kar bîne", + "open_links_in_mastodon": "Girêdanan di Mastodon de veke" + }, + "boring_zone": { + "title": "Devera acizker", + "account_settings": "Sazkariyên ajimêr", + "terms": "Mercên bikaranînê", + "privacy": "Polîtikaya nihêniyê" + }, + "spicy_zone": { + "title": "Devera germ", + "clear": "Pêşbîra medyayê pak bike", + "signout": "Derkeve" + } + }, + "footer": { + "mastodon_description": "Mastodon nermalava çavkaniya vekirî ye. Tu dikarî pirsgirêkan li ser GitHub-ê ragihînî di %s (%s) de" + }, + "keyboard": { + "close_settings_window": "Sazkariyên çarçoveyê bigire" + } + }, + "report": { + "title_report": "Ragihandin", + "title": "%s ragihîne", + "step1": "Gav 1 ji 2", + "step2": "Gav 2 ji 2", + "content1": "Şandiyên din hene ku tu dixwazî tevlî ragihandinê bikî?", + "content2": "Derbarê vê ragihandinê de tiştek heye ku divê çavdêr bizanin?", + "report_sent_title": "Spas ji bo ragihandina te, em ê binirxînin.", + "send": "Ragihandinê bişîne", + "skip_to_send": "Bêyî şirove bişîne", + "text_placeholder": "Şiroveyên daxwazkirê binivîsine an jî pê ve bike", + "reported": "HATE RAGIHANDIN", + "step_one": { + "step_1_of_4": "Gav 1 ji 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "Ez jê hez nakim", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "Ew spam e", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Gav 2 ji 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "Tenê ez jê hez nakim" + }, + "step_three": { + "step_3_of_4": "Gav 3 ji 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Gav 4 ji 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Tu naxwazî vê bibînî?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Neşopîne", + "unfollowed": "Ji şopê hate derketin", + "unfollow_user": "%s neşopîne", + "mute_user": "%s bêdeng bike", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "%s asteng bike", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Pêşdîtin bigire", + "show_next": "A pêş nîşan bide", + "show_previous": "A paş nîşan bide" + } + }, + "account_list": { + "tab_bar_hint": "Profîla hilbijartî ya niha: %s. Du caran bitikîne û paşê dest bide ser da ku guhêrbara ajimêr were nîşandan", + "dismiss_account_switcher": "Guherkera ajimêrê paş guh bike", + "add_account": "Ajimêr tevlî bike" + }, + "wizard": { + "new_in_mastodon": "Nû di Mastodon de", + "multiple_account_switch_intro_description": "Dest bide ser bişkoja profîlê da ku di navbera gelek ajimêrann de biguherînî.", + "accessibility_hint": "Du caran bitikîne da ku çarçoveyahilpekok ji holê rakî" + } + } +} \ No newline at end of file From 9d6a389b9cd18004a8744a097581e374cb2892e3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:28 +0200 Subject: [PATCH 217/571] New translations app.json (Kabyle) --- .../StringsConvertor/input/kab.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/kab.lproj/app.json diff --git a/Localization/StringsConvertor/input/kab.lproj/app.json b/Localization/StringsConvertor/input/kab.lproj/app.json new file mode 100644 index 000000000..f93146903 --- /dev/null +++ b/Localization/StringsConvertor/input/kab.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Ttxil εreḍ tikelt-nniḍen.", + "please_try_again_later": "Ttxil εreḍ tikelt-nniḍen ticki." + }, + "sign_up_failure": { + "title": "Tuccḍa deg unekcum" + }, + "server_error": { + "title": "Tuccḍa n uqeddac" + }, + "vote_failure": { + "title": "Tuccḍa deg ufran", + "poll_ended": "Tafrant tfuk" + }, + "discard_post_content": { + "title": "Kkes arewway", + "message": "Sentem i wakken ad yettusefsax ugbur n tsuffeɣt." + }, + "publish_post_failure": { + "title": "Yecceḍ usuffeɣ", + "message": "Yecceḍ usuffeɣ n tsuffeɣt.\nMa ulac aɣilif, senqed tuqqna-inek internet.", + "attachments_message": { + "video_attach_with_photo": "Ur tezmireḍ ara ad tsedduḍ tavidyut deg tsuffeɣt ideg llant yakan tugniwin.", + "more_than_one_video": "Ur tezmireḍ ara ad ugar n tvidyut." + } + }, + "edit_profile_failure": { + "title": "Ẓreg tuccḍa n umaɣnu", + "message": "Yegguma ad yettwaẓreg umaɣnu. Ɛreḍ tikkelt-nniḍen." + }, + "sign_out": { + "title": "Ffeɣ", + "message": "Tebɣiḍ ad teffɣeḍ?", + "confirm": "Ffeɣ" + }, + "block_domain": { + "title": "D tidet, d tidet tebɣiḍ ad tesweḥleḍ %s akken ma yella? Deg tuget, kra n yisewḥal d ugdal ad yili d ayen iwulmen, yettwafernen. Ur tettwaliḍ ara agbur seg taɣult-nni neɣ kra seg yineḍfaren-ik i tt-yesseqdacen.", + "block_entire_domain": "Sewḥel taɣult" + }, + "save_photo_failure": { + "title": "Tuccḍa deg usekles n tewlaft", + "message": "Ma ulac aɣilif, rmed tasiregt n unekcum ɣer temkarḍit n tewlafin i usekles n tewlaft." + }, + "delete_post": { + "title": "Tebɣiḍ s tidet ad tekkseḍ tasuffeɣt-agi?", + "message": "Tebɣiḍ s tidet ad tekkseḍ tasuffeɣt-agi?" + }, + "clean_cache": { + "title": "Sfeḍ tuffirt", + "message": "Yettwasfeḍ %s n tkatut tuffirt akken iwata." + } + }, + "controls": { + "actions": { + "back": "Tuɣalin", + "next": "Uḍfir", + "previous": "Uzwir", + "open": "Ldi", + "add": "Rnu", + "remove": "Kkes", + "edit": "Ẓreg", + "save": "Sekles", + "ok": "IH", + "done": "Immed", + "confirm": "Sentem", + "continue": "Kemmel", + "compose": "Sudes", + "cancel": "Sefsex", + "discard": "Sefsex", + "try_again": "Ɛreḍ tikkelt-nniḍen", + "take_photo": "Ṭṭef tawlaft", + "save_photo": "Sekles tawlaft", + "copy_photo": "Nɣel tawlaft", + "sign_in": "Qqen", + "sign_up": "Jerred amiḍan", + "see_more": "Wali ugar", + "preview": "Taskant", + "share": "Bḍu", + "share_user": "Bḍu %s", + "share_post": "Bḍu tasuffeɣt", + "open_in_safari": "Ldi deg Safari", + "open_in_browser": "Ldi deg yiminig", + "find_people": "Af imdanen ara tḍefreḍ", + "manually_search": "Anadi s ufus deg wadeg-is", + "skip": "Zgel", + "reply": "Err", + "report_user": "Cetki ɣef %s", + "block_domain": "Sewḥel %s", + "unblock_domain": "Serreḥ i %s", + "settings": "Iɣewwaṛen", + "delete": "Kkes" + }, + "tabs": { + "home": "Agejdan", + "search": "Nadi", + "notification": "Tilɣa", + "profile": "Amaɣnu" + }, + "keyboard": { + "common": { + "switch_to_tab": "Ddu ɣer %s", + "compose_new_post": "Aru tasuffeɣt tamaynut", + "show_favorites": "Sken-d ismenyifen", + "open_settings": "Ldi iɣewwaren" + }, + "timeline": { + "previous_status": "Amagrad uzwir", + "next_status": "Amagrad uḍfir", + "open_status": "Ldi tasuffeɣt", + "open_author_profile": "Ldi amaɣnu n umeskar", + "open_reblogger_profile": "Ldi amaɣnu n win i yulsen asuffeɣ", + "reply_status": "Err ɣef tsuffeɣt", + "toggle_reblog": "Abeddel n unallas n tsuffeɣt", + "toggle_favorite": "Abeddel n usmenyaf i tsuffeɣt", + "toggle_content_warning": "Beddel alɣu n ugbur", + "preview_image": "Asenqed n tugna" + }, + "segmented_control": { + "previous_section": "Tafrant tuzwirt", + "next_section": "Tigezmi tuḍfirt" + } + }, + "status": { + "user_reblogged": "Tettwasuffeɣ-d %s i tikkelt-nniḍen", + "user_replied_to": "Yerra ɣef %s", + "show_post": "Sken-d tasuffeɣt", + "show_user_profile": "Ssken-d amaɣnu n useqdac", + "content_warning": "Alɣu n ugbur", + "sensitive_content": "Agbur amḥulfu", + "media_content_warning": "Sit anida tebɣiḍ i wakken ad twaliḍ", + "tap_to_reveal": "Sit i uskan", + "poll": { + "vote": "Dɣeṛ", + "closed": "Ifukk" + }, + "actions": { + "reply": "Err", + "reblog": "Aɛiwed n usuffeɣ", + "unreblog": "Sefsex allus n usuffeɣ", + "favorite": "Anurif", + "unfavorite": "Kkes seg yismenyifen", + "menu": "Umuɣ", + "hide": "Ffer", + "show_image": "Sken tugna", + "show_gif": "Sken GIF", + "show_video_player": "Sken ameɣri n tvidyut", + "tap_then_hold_to_show_menu": "Sit teǧǧeḍ aḍad-ik•im i wakken ad d-iffeɣ wumuɣ" + }, + "tag": { + "url": "URL", + "mention": "Tabdart", + "link": "Aseɣwen", + "hashtag": "Ahacṭag", + "email": "Imayl", + "emoji": "Emuji" + }, + "visibility": { + "unlisted": "Yal wa yezmer ad iwali tsuffeɣt-a maca ur d-tettwaskaneḍ ara deg yizirig n wakud azayaz.", + "private": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a.", + "private_from_me": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a.", + "direct": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a." + } + }, + "friendship": { + "follow": "Ḍfeṛ", + "following": "Yettwaḍfar", + "request": "Tuttra", + "pending": "Yegguni", + "block": "Sewḥel", + "block_user": "Sewḥel %s", + "block_domain": "Sewḥel %s", + "unblock": "Serreḥ", + "unblock_user": "Serreḥ i %s", + "blocked": "Yettusewḥel", + "mute": "Sgugem", + "mute_user": "Sgugem %s", + "unmute": "Kkes asgugem", + "unmute_user": "Kkes asgugem ɣef %s", + "muted": "Yettwasgugem", + "edit_info": "Ẓreg talɣut" + }, + "timeline": { + "filtered": "Yettwasizdeg", + "timestamp": { + "now": "Tura" + }, + "loader": { + "load_missing_posts": "Sali tisuffaɣ i iruḥen", + "loading_missing_posts": "Asali n tsuffaɣ i iruḥen...", + "show_more_replies": "Ssken-d ugar n tririyin" + }, + "header": { + "no_status_found": "Ulac tasuffeɣt yettwafen", + "blocking_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n useqdac-a\nalamma tekkseḍ-as asewḥel.\nAkka i as-d-yettban umaɣnu-inek.", + "user_blocking_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n %s\nalamma tekkseḍ-as asewḥel.\nAkka i as-d-yettban umaɣnu-inek.", + "blocked_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n useqdac-a\nAkka i as-d-yettban umaɣnu-inek.", + "user_blocked_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n %s\nAkka i as-d-yettban umaɣnu-inek.", + "suspended_warning": "Yettwaseḥbes useqdac-a.", + "user_suspended_warning": "Yettwaseḥbes umiḍan n %s." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Izeḍwa inmettiyen\nuɣalen-d ɣer ufus-ik.", + "get_started": "Aha bdu tura", + "log_in": "Qqen" + }, + "server_picker": { + "title": "Mastodon yettwaxdem i yiseqdacen deg waṭas n temɣiwnin.", + "subtitle": "Fren tamɣiwent almend n wayen tḥemmleḍ, n tmurt-ik neɣ n yiswi-inek amatu.", + "subtitle_extend": "Fren tamɣiwent almend n wayen tḥemmleḍ, n tmurt-ik neɣ n yiswi-inek amatu. Yal tamɣiwent tsedday-itt tkebbanit neɣ amdan ilelliyen.", + "button": { + "category": { + "all": "Akk", + "all_accessiblity_description": "Taggayt: Akk", + "academia": "akadimi", + "activism": "tinuɣmest", + "food": "učči", + "furry": "s taḍut", + "games": "uraren", + "general": "amatu", + "journalism": "taɣamsa", + "lgbt": "lgbt", + "regional": "amnaḍan", + "art": "taẓuri", + "music": "aẓawan", + "tech": "atiknikan" + }, + "see_less": "Sken cwiṭ", + "see_more": "Wali ugar" + }, + "label": { + "language": "TUTLAYT", + "users": "ISEQDACEN", + "category": "TAGGAYT" + }, + "input": { + "placeholder": "Nadi timɣiwnin", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Tifin n yiqeddacen yellan...", + "bad_network": "Tella-d tuccḍa lawan n usali n yisefka. Senqed tuqqna-ink internet.", + "no_results": "Ulac igemmaḍ" + } + }, + "register": { + "title": "Aha ad nebdu asbadu ɣef %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Kkes" + }, + "username": { + "placeholder": "isem n useqdac", + "duplicate_prompt": "Isem-ayi n umseqdac yettwaṭṭef yakan." + }, + "display_name": { + "placeholder": "isem ara d-yettwaskanen" + }, + "email": { + "placeholder": "imayl" + }, + "password": { + "placeholder": "awal uffir", + "require": "Awal-ik uffir yesra ma drus:", + "character_limit": "8 n yisekkilen", + "accessibility": { + "checked": "yettwasenqed", + "unchecked": "ur yettwasenqed ara" + }, + "hint": "Awal-ik uffir yesra ma drus ṭam n yisekkilen" + }, + "invite": { + "registration_user_invite_request": "Acimi tebγiḍ ad ternuḍ iman-ik?" + } + }, + "error": { + "item": { + "username": "Isem n useqdac", + "email": "Imayl", + "password": "Awal uffir", + "agreement": "Amtawa", + "locale": "Tadigant", + "reason": "Taɣẓint" + }, + "reason": { + "blocked": "%s deg-s asaǧǧăw n yimayl ur nettusireg ara", + "unreachable": "%s ur yettban ara yella", + "taken": "%s yettwaseqdec yakan", + "reserved": "%s d awal uffir yettwaḥarren", + "accepted": "%s ilaq ad yettwaqbal", + "blank": "isra %s", + "invalid": "%s d arameɣtu", + "too_long": "%s ɣezzif aṭas", + "too_short": "%s wezzil aṭas", + "inclusion": "%s mačči d azal yettusefraken" + }, + "special": { + "username_invalid": "Isem n useqdac ilaq ad yesɛu kan isekkilen igmumḍinen d wid yettujerrden", + "username_too_long": "Isem n useqdac ɣezzif aṭas (ur ilaq ara ad iɛeddi nnig 30 yisekkilen)", + "email_invalid": "Tagi mačči d tansa n yimayl tameɣtut", + "password_too_short": "Awal uffir wezzil aṭas (ilaq ad yesɛu ma drus 8 yisekkilen)" + } + } + }, + "server_rules": { + "title": "Kra n yilugan igejdanen.", + "subtitle": "Ilugan-a ttusbadun sɣur inedbalen n %s.", + "prompt": "Mi ara tkemmleḍ, ilaq ad tqebleḍ tiwtilin n yimeẓla d tsertit tabaḍnit n %s.", + "terms_of_service": "tiwetlin n useqdec", + "privacy_policy": "tasertit tabaḍnit", + "button": { + "confirm": "Qebleɣ" + } + }, + "confirm_email": { + "title": "Taɣawsa taneggarut.", + "subtitle": "Sit ɣef useɣwen i ak-n-uznen i wakken ad tesneqdeḍ amiḍan-ik.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Ldi asnas n yimayl", + "resend": "Ales tuzna" + }, + "dont_receive_email": { + "title": "Senqed imayl-ik·im", + "description": "Senqed ma yella tansa-inek n imayl d tameɣut akked uspam ma yella ur t-tufiḍ ara.", + "resend_email": "Ales tuzna n yimayl" + }, + "open_email_app": { + "title": "Sefqed Tanaka-inek.", + "description": "Akken kan i ak-n-nuzen imayl. Sefqed aspam ma yella ur t-tufiḍ ara.", + "mail": "Imayl", + "open_email_client": "Ldi amsaɣ n yimayl" + } + }, + "home_timeline": { + "title": "Agejdan", + "navigation_bar_state": { + "offline": "Beṛṛa n tuqqna", + "new_posts": "Tissufaɣ timaynutin", + "published": "Yettwasuffeɣ!", + "Publishing": "Asuffeɣ tasuffeɣt...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Af imdanen ara tḍefreḍ", + "follow_explain": "Mi ara teṭṭafareḍ albaɛḍ, ad twaliḍ tisuffaɣ-is deg usuddem-inek agejdan." + }, + "compose": { + "title": { + "new_post": "Tasuffeɣt tamaynut", + "new_reply": "Tiririt tamaynut" + }, + "media_selection": { + "camera": "Ṭṭef tawlaft", + "photo_library": "Tanedlist n tewlaft", + "browse": "Snirem" + }, + "content_input_placeholder": "Aru neɣ senteḍ ayen yellan deg wallaɣ-ik", + "compose_action": "Sufeɣ", + "replying_to_user": "tiririt ɣef %s", + "attachment": { + "photo": "tawlaft", + "video": "tavidyutt", + "attachment_broken": "%s-a yerreẓ, ur yezmir ara\nAd d-yettwasali ɣef Mastodon.", + "description_photo": "Glem-d tawlaft i wid yesɛan ugur deg yiẓri...", + "description_video": "Glem-d tavidyut i wid yesɛan ugur deg yiẓri..." + }, + "poll": { + "duration_time": "Tangazt: %s", + "thirty_minutes": "30 n tesdatin", + "one_hour": "1 n wesrag", + "six_hours": "6 n yisragen", + "one_day": "1 n wass", + "three_days": "3 n wussan", + "seven_days": "7 n wussan", + "option_number": "Taxtiṛt %ld" + }, + "content_warning": { + "placeholder": "Aru alɣu-inek s telqeyt da..." + }, + "visibility": { + "public": "Azayez", + "unlisted": "War tabdert", + "private": "Imeḍfaṛen kan", + "direct": "Imdanen i d-bedreɣ kan" + }, + "auto_complete": { + "space_to_add": "Tallunt ara yettwarnun" + }, + "accessibility": { + "append_attachment": "Rnu taceqquft yeddan", + "append_poll": "Rnu asenqed", + "remove_poll": "Kkes asenqed", + "custom_emoji_picker": "Amefran n yimujiten udmawanen", + "enable_content_warning": "Rmed alɣu n ugbur", + "disable_content_warning": "Sens alɣu n ugbur", + "post_visibility_menu": "Umuɣ n ubani n tsuffeɣt" + }, + "keyboard": { + "discard_post": "Sefsex tasuffeɣt", + "publish_post": "Suffeɣ tasuffeɣt", + "toggle_poll": "Beddel asenqed", + "toggle_content_warning": "Beddel alɣu n ugbur", + "append_attachment_entry": "Rnu taceqquft yeddan - %s", + "select_visibility_entry": "Fren timeẓriwt - %s" + } + }, + "profile": { + "dashboard": { + "posts": "tisuffaɣ", + "following": "iṭafaṛ", + "followers": "imeḍfaren" + }, + "fields": { + "add_row": "Rnu izirig", + "placeholder": { + "label": "Tabzimt", + "content": "Agbur" + } + }, + "segmented_control": { + "posts": "Imagraden", + "replies": "Tiririyin", + "posts_and_replies": "Tisuffaɣ d tririyin", + "media": "Amidya", + "about": "Ɣef" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Sgugem amiḍan", + "message": "Sentem asgugem i %s" + }, + "confirm_unmute_user": { + "title": "Kkes asgugem i umiḍan", + "message": "Sentem tukksa n usgugem i %s" + }, + "confirm_block_user": { + "title": "Sewḥel amiḍan", + "message": "Sentem asewḥel n %s" + }, + "confirm_unblock_user": { + "title": "Kkes asewḥel i umiḍan", + "message": "Sentem tukksa n usgugem i %s" + } + }, + "accessibility": { + "show_avatar_image": "Sken tugna n avaṭar", + "edit_avatar_image": "Ẓreg tugna n avaṭar", + "show_banner_image": "Sken tugna n uɣerrac", + "double_tap_to_open_the_list": "Sin isitiyen i twaledyawt n tebdart" + } + }, + "follower": { + "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." + }, + "following": { + "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." + }, + "search": { + "title": "Nadi", + "search_bar": { + "placeholder": "Nadi hashtags d yiseqdacen", + "cancel": "Sefsex" + }, + "recommend": { + "button_text": "Wali akk", + "hash_tag": { + "title": "Ayen mucaɛen ɣef Mastodon", + "description": "Hashtags i d-ijebbden aṭas lwelha", + "people_talking": "%s yimdanen i yettmeslayen" + }, + "accounts": { + "title": "Imiḍanen i tzemreḍ ad tḥemmleḍ", + "description": "Ahat tebɣiḍ ad tḍefreḍ imiḍanen-a", + "follow": "Ḍfeṛ" + } + }, + "searching": { + "segment": { + "all": "Akk", + "people": "Imdanen", + "hashtags": "Ihacṭagen", + "posts": "Tisuffaɣ" + }, + "empty_state": { + "no_results": "Ulac igemmaḍ" + }, + "recent_search": "Inadiyen imaynuten", + "clear": "Sfeḍ" + } + }, + "discovery": { + "tabs": { + "posts": "Tisuffaɣ", + "hashtags": "Ihacṭagen", + "news": "Isallen", + "community": "Community", + "for_you": "I kečč·kem" + }, + "intro": "Tigi d tisuffaɣ i d-ijebbden s waṭas deg tama-inek•inem n Mastodon." + }, + "favorite": { + "title": "Ismenyifen-ik·im" + }, + "notification": { + "title": { + "Everything": "Akk", + "Mentions": "Abdar" + }, + "notification_description": { + "followed_you": "iṭṭafar-ik·ikem", + "favorited_your_post": "yesmenyef tasuffeɣt-ik·im", + "reblogged_your_post": "iɛawed-as asuffeɣ i tsuffeɣt-ik·im", + "mentioned_you": "yebder-ik·ikem-id", + "request_to_follow_you": "issuter aḍfar-inek", + "poll_has_ended": "asenqed iffuk" + }, + "keyobard": { + "show_everything": "Sken yal taɣawsa", + "show_mentions": "Sken tisedmirin" + } + }, + "thread": { + "back_title": "Amagrad", + "title": "Tasuffeɣt sɣur %s" + }, + "settings": { + "title": "Iɣewwaṛen", + "section": { + "appearance": { + "title": "Apparence", + "automatic": "Awurman", + "light": "Yezga d aceεlal", + "dark": "Yezga d aberkan" + }, + "look_and_feel": { + "title": "Wali, tḥalfuḍ", + "use_system": "Seqdec anagraw", + "really_dark": "D aberkan s tidet", + "sorta_dark": "D aberkan cwiya", + "light": "Aceɛlal" + }, + "notifications": { + "title": "Tilɣa", + "favorites": "Yerna tasuffeɣt-iw ɣer yismenyafen-ines", + "follows": "Yeṭṭafar-iyi", + "boosts": "Yules asuffeɣ n tduffeɣt-iw", + "mentions": "Ibder-iyi-d", + "trigger": { + "anyone": "yal yiwen", + "follower": "ameḍfar", + "follow": "yal win ara ḍefreɣ", + "noone": "ula yiwen", + "title": "Selɣu-yi-d mi ara" + } + }, + "preference": { + "title": "Imenyafen", + "true_black_dark_mode": "Askar aberkan n tidet", + "disable_avatar_animation": "Sens ivaṭaren yettembiwilen", + "disable_emoji_animation": "Sens imujiten yettembiwilen", + "using_default_browser": "Seqdec iminig amezwer i twaledyawt n yiseɣwan", + "open_links_in_mastodon": "Ldi iseɣwan deg Mastodon" + }, + "boring_zone": { + "title": "Tamnaḍt yessefcalen", + "account_settings": "Iɣewwaṛen n umiḍan", + "terms": "Tiwtilin n useqdec", + "privacy": "Tasertit tabaḍnit" + }, + "spicy_zone": { + "title": "Tamnaḍt tamihawt", + "clear": "Sfeḍ takatut tuffirt n umidyat", + "signout": "Senser" + } + }, + "footer": { + "mastodon_description": "Maṣṭudun d aseɣzan s uɣbalu yeldin. Tzemreḍ ad temmleḍ uguren deg GitHub %s (%s)" + }, + "keyboard": { + "close_settings_window": "Mdel asfaylu n iɣewwaṛen" + } + }, + "report": { + "title_report": "Aneqqis", + "title": "Aneqqis %s", + "step1": "Aḥric 1 seg 2", + "step2": "Aḥric 2 seg 2", + "content1": "Tebɣiḍ ad ternuḍ tisuffaɣ-nniḍen ɣer uneqqis?", + "content2": "Yella wayen i ilaqen ad teẓren yimḍebbren ɣef uneqqis-a?", + "report_sent_title": "Tanemmirt ɣef uneqqis, ad nwali deg waya.", + "send": "Azen aneqis", + "skip_to_send": "Azen s war awennit", + "text_placeholder": "Aru neɣ senteḍ iwenniten-nniḍen", + "reported": "YETTWAMMEL", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Mdel timeẓri", + "show_next": "Sken uḍfir", + "show_previous": "Sken udfir" + } + }, + "account_list": { + "tab_bar_hint": "Amaɣnu amiran yettwafernen: %s. Sit berdayen syen teǧǧeḍ aḍad-ik·im i uskan abeddel n umiḍan", + "dismiss_account_switcher": "Sefsex abeddel n umiḍan", + "add_account": "Rnu amiḍan" + }, + "wizard": { + "new_in_mastodon": "Amaynut deg Maṣṭudun", + "multiple_account_switch_intro_description": "Beddel gar waṭas n yimiḍanen s tussda ɣezzifen ɣef tqeffalt n umaɣnu.", + "accessibility_hint": "Sin isitiyen i usefsex n umarag-a" + } + } +} \ No newline at end of file From f2e7fe46da228b743320e952e60106ad846f0303 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:29 +0200 Subject: [PATCH 218/571] New translations Localizable.stringsdict (French) --- .../input/fr.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict new file mode 100644 index 000000000..d251c82f3 --- /dev/null +++ b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notification non lue + other + %ld notifications non lues + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + La limite d’entrée dépasse %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caractère + other + %ld caractères + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + La limite d'entrée reste %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caractère + other + %ld caractères + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + publication + other + publications + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 publication + other + %ld publications + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favoris + other + %ld favoris + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 réponse + other + %ld réponses + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votant + other + %ld votants + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 personne en parle + other + %ld personnes en parlent + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 abonnement + other + %ld abonnements + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 abonné·e + other + %ld abonné·e·s + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Il reste 1 an + other + %ld ans restants + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mois restant + other + %ld mois restants + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Il reste 1 jour + other + il reste %ld jours + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 heure restante + other + %ld heures restantes + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute restante + other + %ld minutes restantes + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Il reste 1 seconde + other + %ld secondes restantes + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + il y a 1 année + other + il y a %ld ans + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + il y a 1 mois + other + il y a %ld mois + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + il y a 1j + other + il y a %ldj + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + il y a 1h + other + il y a %ldh + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Il y a 1 m + other + il y a %ld m + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Il y a 1 s + other + il y a %ld s + + + + From b588dd87f6e88ef55b0ecbf9c872af157d523574 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:30 +0200 Subject: [PATCH 219/571] New translations Localizable.stringsdict (Spanish) --- .../input/es.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict new file mode 100644 index 000000000..31cd9d237 --- /dev/null +++ b/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notificación no leída + other + %ld notificaciones no leídas + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Límite de entrada superado en %#@character_count@ caracteres + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carácter + other + %ld caracteres + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Límite de entrada restante: %#@character_count@ caracteres + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carácter + other + %ld caracteres + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + publicación + other + publicaciones + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 publicación + other + %ld publicaciones + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorito + other + %ld favoritos + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblogueo + other + %ld reblogueos + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 respuesta + other + %ld respuestas + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voto + other + %ld votos + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votante + other + %ld votantes + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 persona hablando + other + %ld personas están hablando de esto + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 siguiendo + other + %ld siguiendo + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguidor + other + %ld seguidores + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 año restante + other + %ld años restantes + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mes restante + other + %ld meses restantes + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 día restante + other + %ld días restantes + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hora restante + other + %ld horas restantes + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuto restante + other + %ld minutos restantes + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 segundo restante + other + %ld segundos restantes + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 año + other + Hace %ld años + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 mes + other + Hace %ld meses + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 día + other + Hace %ld días + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 h + other + Hace %ld h + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 min + other + Hace %ld min + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hace 1 s + other + Hace %ld s + + + + From 77f061c95ac377d2467bfbc6dcc7e232d62c284b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:31 +0200 Subject: [PATCH 220/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/gl.lproj/app.json diff --git a/Localization/StringsConvertor/input/gl.lproj/app.json b/Localization/StringsConvertor/input/gl.lproj/app.json new file mode 100644 index 000000000..5eaf5b06d --- /dev/null +++ b/Localization/StringsConvertor/input/gl.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Inténtao de novo.", + "please_try_again_later": "Inténtao de novo máis tarde." + }, + "sign_up_failure": { + "title": "Fallou o rexistro" + }, + "server_error": { + "title": "Erro do servidor" + }, + "vote_failure": { + "title": "Fallou a votación", + "poll_ended": "A enquisa rematou" + }, + "discard_post_content": { + "title": "Descartar Borrador", + "message": "Confirma que queres descartar o contido do borrador." + }, + "publish_post_failure": { + "title": "Fallou a publicación", + "message": "Fallou a publicación.\nComproba a conexión a internet.", + "attachments_message": { + "video_attach_with_photo": "Non podes anexar un vídeo a unha publicación que xa contén imaxes.", + "more_than_one_video": "Non podes anexar máis de un vídeo." + } + }, + "edit_profile_failure": { + "title": "Erro ao editar o perfil", + "message": "Non se editou o perfil. Inténtao máis tarde." + }, + "sign_out": { + "title": "Pechar sesión", + "message": "Tes a certeza de queres pechar a sesión?", + "confirm": "Pechar sesión" + }, + "block_domain": { + "title": "Tes a certeza de querer bloquear todo de %s? Na meirande parte dos casos uns bloqueos ou silenciados específicos son suficientes e preferibles. Non verás máis o contido deste dominio en ningunha cronoloxía pública e as túas seguidoras deste dominio serán eliminadas.", + "block_entire_domain": "Bloquear Dominio" + }, + "save_photo_failure": { + "title": "Erro ao gardar a fotografía", + "message": "Activa o permiso de acceso á galería de fotos para gardar a foto." + }, + "delete_post": { + "title": "Eliminar publicación", + "message": "Tes a certeza de querer eliminar esta publicación?" + }, + "clean_cache": { + "title": "Limpar caché", + "message": "Baleirouse %s da caché correctamente." + } + }, + "controls": { + "actions": { + "back": "Volver", + "next": "Seguinte", + "previous": "Anterior", + "open": "Abrir", + "add": "Engadir", + "remove": "Eliminar", + "edit": "Editar", + "save": "Gardar", + "ok": "OK", + "done": "Feito", + "confirm": "Confirmar", + "continue": "Continuar", + "compose": "Escribir", + "cancel": "Cancelar", + "discard": "Descartar", + "try_again": "Intentar de novo", + "take_photo": "Facer foto", + "save_photo": "Gardar foto", + "copy_photo": "Copiar foto", + "sign_in": "Acceder", + "sign_up": "Inscribirse", + "see_more": "Ver máis", + "preview": "Vista previa", + "share": "Compartir", + "share_user": "Compartir %s", + "share_post": "Compartir publicación", + "open_in_safari": "Abrir en Safari", + "open_in_browser": "Abrir no navegador", + "find_people": "Atopar persoas para seguir", + "manually_search": "Buscar de xeito manual", + "skip": "Omitir", + "reply": "Responder", + "report_user": "Denunciar a %s", + "block_domain": "Bloquear a %s", + "unblock_domain": "Desbloquear a %s", + "settings": "Axustes", + "delete": "Eliminar" + }, + "tabs": { + "home": "Inicio", + "search": "Busca", + "notification": "Notificación", + "profile": "Perfil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Cambiar a %s", + "compose_new_post": "Escribir Nova publicación", + "show_favorites": "Mostrar Favoritos", + "open_settings": "Abrir axustes" + }, + "timeline": { + "previous_status": "Publicación anterior", + "next_status": "Publicación seguinte", + "open_status": "Abrir publicación", + "open_author_profile": "Ver Perfil da autora", + "open_reblogger_profile": "Ver perfil de quen promoveu", + "reply_status": "Responder á publicación", + "toggle_reblog": "Promover a publicación", + "toggle_favorite": "Engadir publicación a Favoritas", + "toggle_content_warning": "Marcar con Aviso sobre o contido", + "preview_image": "Previsualización da imaxe" + }, + "segmented_control": { + "previous_section": "Sección anterior", + "next_section": "Sección seguinte" + } + }, + "status": { + "user_reblogged": "%s promoveu", + "user_replied_to": "Respondeu a %s", + "show_post": "Mostrar publicación", + "show_user_profile": "Mostrar perfil da usuaria", + "content_warning": "Aviso sobre o contido", + "sensitive_content": "Contido sensible", + "media_content_warning": "Toca nalgures para mostrar", + "tap_to_reveal": "Toca para mostrar", + "poll": { + "vote": "Votar", + "closed": "Pechada" + }, + "actions": { + "reply": "Responder", + "reblog": "Promover", + "unreblog": "Retirar promoción", + "favorite": "Favorecer", + "unfavorite": "Eliminar dos favoritos", + "menu": "Menú", + "hide": "Agochar", + "show_image": "Mostrar a imaxe", + "show_gif": "Mostrar GIF", + "show_video_player": "Mostrar reprodutor de vídeo", + "tap_then_hold_to_show_menu": "Toca e mantén preso para menú" + }, + "tag": { + "url": "URL", + "mention": "Mención", + "link": "Ligazón", + "hashtag": "Cancelo", + "email": "Email", + "emoji": "Emoticona" + }, + "visibility": { + "unlisted": "A publicación é visible para calquera pero non aparece na cronoloxía pública.", + "private": "Só as seguidoras poden ver a publicación.", + "private_from_me": "Só as miñas seguidoras poden ver esta publicación.", + "direct": "Só a usuaria mencionada pode ver a publicación." + } + }, + "friendship": { + "follow": "Seguir", + "following": "Seguindo", + "request": "Solicitar", + "pending": "Pendente", + "block": "Bloquear", + "block_user": "Bloquear a %s", + "block_domain": "Bloquear a %s", + "unblock": "Desbloquear", + "unblock_user": "Desbloquear a %s", + "blocked": "Bloqueada", + "mute": "Acalar", + "mute_user": "Acalar a %s", + "unmute": "Non Acalar", + "unmute_user": "Deixar de acalar a @%s", + "muted": "Acalada", + "edit_info": "Editar info" + }, + "timeline": { + "filtered": "Filtrado", + "timestamp": { + "now": "Agora" + }, + "loader": { + "load_missing_posts": "Cargar publicacións que faltan", + "loading_missing_posts": "Cargando as publicacións que faltan...", + "show_more_replies": "Mostrar máis respostas" + }, + "header": { + "no_status_found": "Non se atopa a publicación", + "blocking_warning": "Non podes ver o perfil da usuaria\nata que a desbloquees.\nAsí ven outras o teu perfil.", + "user_blocking_warning": "Non podes ver o perfil de %s\nata que o desbloquees.\nAsí se ve o teu perfil.", + "blocked_warning": "Non podes ver o perfil desta usuaria\nata que te desbloquee.", + "user_blocked_warning": "Non podes ver o perfil de %s\nata que te desbloquee.", + "suspended_warning": "Esta usuaria foi suspendida.", + "user_suspended_warning": "A conta de %s foi suspendida." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Comunicación social\nde volta ás túas mans.", + "get_started": "Comezar", + "log_in": "Acceder" + }, + "server_picker": { + "title": "Mastodon fórmano as persoas das diferentes comunidades.", + "subtitle": "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral.", + "subtitle_extend": "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral. Cada comunidade está xestionada por unha organización totalmente independente ou unha única persoa.", + "button": { + "category": { + "all": "Todo", + "all_accessiblity_description": "Categoría: Todo", + "academia": "academia", + "activism": "activismo", + "food": "comida", + "furry": "peluxos", + "games": "xogos", + "general": "xeral", + "journalism": "xornalismo", + "lgbt": "lgbt", + "regional": "rexional", + "art": "arte", + "music": "música", + "tech": "tecnoloxía" + }, + "see_less": "Ver menos", + "see_more": "Ver máis" + }, + "label": { + "language": "IDIOMA", + "users": "USUARIAS", + "category": "CATEGORÍA" + }, + "input": { + "placeholder": "Buscar comunidades", + "search_servers_or_enter_url": "Busca comunidades ou escribe URL" + }, + "empty_state": { + "finding_servers": "Buscando servidores dispoñibles...", + "bad_network": "Algo fallou ao cargar os datos. Comproba a conexión a internet.", + "no_results": "Sen resultados" + } + }, + "register": { + "title": "Imos crear a túa conta en %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Eliminar" + }, + "username": { + "placeholder": "identificador", + "duplicate_prompt": "Este nome de usuaria xa está en uso." + }, + "display_name": { + "placeholder": "nome público" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "contrasinal", + "require": "O contrasinal debe ter polo menos:", + "character_limit": "8 caracteres", + "accessibility": { + "checked": "validado", + "unchecked": "non validado" + }, + "hint": "O teu contrasinal debe ter cando menos oito caracteres" + }, + "invite": { + "registration_user_invite_request": "Por que queres unirte?" + } + }, + "error": { + "item": { + "username": "Identificador", + "email": "Email", + "password": "Contrasinal", + "agreement": "Acordo", + "locale": "Locale", + "reason": "Razón" + }, + "reason": { + "blocked": "%s é un provedor de email non autorizado", + "unreachable": "%s semella que non existe", + "taken": "%s xa está en uso", + "reserved": "%s é unha palabra reservada", + "accepted": "%s debe ser aceptado", + "blank": "%s é requerido", + "invalid": "%s non é válido", + "too_long": "%s é demasiado longo", + "too_short": "%s é demasiado curto", + "inclusion": "%s non é un valor soportado" + }, + "special": { + "username_invalid": "O nome de usuaria só pode ter caracteres alfanuméricos e trazos baixos", + "username_too_long": "O nome de usuaria é demasiado longo (maior de 30 caracteres)", + "email_invalid": "Este non é un enderezo válido de email", + "password_too_short": "O contrasinal é demasiado curto (debe ter 8 caracteres como mínimo)" + } + } + }, + "server_rules": { + "title": "Algunhas regras básicas.", + "subtitle": "Son establecidas e aplicadas pola moderación de %s.", + "prompt": "Ao continuar, acatas os termos do servizo e a política de privacidade para %s.", + "terms_of_service": "termos do servizo", + "privacy_policy": "polícica de privacidade", + "button": { + "confirm": "Acepto" + } + }, + "confirm_email": { + "title": "O último detalle.", + "subtitle": "Preme na ligazón que che enviamos ao email para verificar a conta.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Abrir app de email", + "resend": "Reenviar" + }, + "dont_receive_email": { + "title": "Revisa o teu correo", + "description": "Comproba que o enderezo de email é correcto e que non vaia directo ao cartafol de spam.", + "resend_email": "Volver enviar o correo" + }, + "open_email_app": { + "title": "Mira na caixa de correo.", + "description": "Enviámosche un email. Se non aparece, mira no cartafol do lixo.", + "mail": "Correo", + "open_email_client": "Abrir cliente de email" + } + }, + "home_timeline": { + "title": "Inicio", + "navigation_bar_state": { + "offline": "Sen conexión", + "new_posts": "Novas publicacións", + "published": "Publicado!", + "Publishing": "Publicando...", + "accessibility": { + "logo_label": "Botón do logo", + "logo_hint": "Toca para ir arriba e toca outra vez para volver ao mesmo lugar" + } + } + }, + "suggestion_account": { + "title": "Atopar persoas para seguir", + "follow_explain": "Cando sigas a alguén verás as súas publicacións na cronoloxía de inicio." + }, + "compose": { + "title": { + "new_post": "Nova publicación", + "new_reply": "Nova resposta" + }, + "media_selection": { + "camera": "Facer foto", + "photo_library": "Biblioteca de fotos", + "browse": "Explorar" + }, + "content_input_placeholder": "Escribe o que che apeteza", + "compose_action": "Publicar", + "replying_to_user": "en resposta a %s", + "attachment": { + "photo": "foto", + "video": "vídeo", + "attachment_broken": "Este %s está estragado e non pode\nser subido a Mastodon.", + "description_photo": "Describe a foto para persoas con problemas visuais...", + "description_video": "Describe o vídeo para persoas con problemas visuais..." + }, + "poll": { + "duration_time": "Duración: %s", + "thirty_minutes": "30 minutos", + "one_hour": "1 Hora", + "six_hours": "6 Horas", + "one_day": "1 Día", + "three_days": "3 Días", + "seven_days": "7 Días", + "option_number": "Opción %ld" + }, + "content_warning": { + "placeholder": "Escribe o teu aviso aquí..." + }, + "visibility": { + "public": "Público", + "unlisted": "Non listado", + "private": "Só para seguidoras", + "direct": "Só para persoas mencionadas" + }, + "auto_complete": { + "space_to_add": "Barra de espazo engade" + }, + "accessibility": { + "append_attachment": "Engadir anexo", + "append_poll": "Engadir enquisa", + "remove_poll": "Eliminar enquisa", + "custom_emoji_picker": "Selector emoji personalizado", + "enable_content_warning": "Marcar con Aviso sobre o contido", + "disable_content_warning": "Retirar Aviso sobre o contido", + "post_visibility_menu": "Visibilidade da publicación" + }, + "keyboard": { + "discard_post": "Descartar publicación", + "publish_post": "Publicar", + "toggle_poll": "Activar enquisa", + "toggle_content_warning": "Marcar con Aviso sobre o contido", + "append_attachment_entry": "Engadir anexo - %s", + "select_visibility_entry": "Elexir visibilidade - %s" + } + }, + "profile": { + "dashboard": { + "posts": "publicacións", + "following": "seguindo", + "followers": "seguidoras" + }, + "fields": { + "add_row": "Engadir fila", + "placeholder": { + "label": "Etiqueta", + "content": "Contido" + } + }, + "segmented_control": { + "posts": "Publicacións", + "replies": "Respostas", + "posts_and_replies": "Publicacións e respostas", + "media": "Multimedia", + "about": "Acerca de" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Acalar conta", + "message": "Confirma Acalar a %s" + }, + "confirm_unmute_user": { + "title": "Retirar acalado da Conta", + "message": "Confirma restablecer a %s" + }, + "confirm_block_user": { + "title": "Bloquear Conta", + "message": "Confirma o bloqueo de %s" + }, + "confirm_unblock_user": { + "title": "Desbloquear Conta", + "message": "Confirma o desbloqueo de %s" + } + }, + "accessibility": { + "show_avatar_image": "Mostrar imaxe de avatar", + "edit_avatar_image": "Editar imaxe de avatar", + "show_banner_image": "Mostrar imaxe de cabeceira", + "double_tap_to_open_the_list": "Dous toques para abrir a lista" + } + }, + "follower": { + "footer": "Non se mostran seguidoras desde outros servidores." + }, + "following": { + "footer": "Non se mostran os seguimentos desde outros servidores." + }, + "search": { + "title": "Procurar", + "search_bar": { + "placeholder": "Buscar cancelos e usuarias", + "cancel": "Cancelar" + }, + "recommend": { + "button_text": "Ver todo", + "hash_tag": { + "title": "En voga en Mastodon", + "description": "Cancelos que están recibindo moita atención", + "people_talking": "%s persoas están comentando" + }, + "accounts": { + "title": "Contas que poderían gustarche", + "description": "Mira se che interesan estas contas", + "follow": "Seguir" + } + }, + "searching": { + "segment": { + "all": "Todo", + "people": "Persoas", + "hashtags": "Cancelos", + "posts": "Publicacións" + }, + "empty_state": { + "no_results": "Sen resultados" + }, + "recent_search": "Buscas recentes", + "clear": "Limpar" + } + }, + "discovery": { + "tabs": { + "posts": "Publicacións", + "hashtags": "Cancelos", + "news": "Novas", + "community": "Comunidade", + "for_you": "Para ti" + }, + "intro": "Estas son as publicacións en voga no teu recuncho de Mastodon." + }, + "favorite": { + "title": "Publicacións Favoritas" + }, + "notification": { + "title": { + "Everything": "Todo", + "Mentions": "Mencións" + }, + "notification_description": { + "followed_you": "séguete", + "favorited_your_post": "marcou a túa publicación como favorita", + "reblogged_your_post": "compartiu a túa publicación", + "mentioned_you": "mencionoute", + "request_to_follow_you": "solicitou seguirte", + "poll_has_ended": "a enquisa rematou" + }, + "keyobard": { + "show_everything": "Mostrar Todo", + "show_mentions": "Mostrar mencións" + } + }, + "thread": { + "back_title": "Publicación", + "title": "Publicación de %s" + }, + "settings": { + "title": "Axustes", + "section": { + "appearance": { + "title": "Aparencia", + "automatic": "Automático", + "light": "Sempre claro", + "dark": "Sempre escuro" + }, + "look_and_feel": { + "title": "Aparencia", + "use_system": "Seguir o sistema", + "really_dark": "Realmente escuro", + "sorta_dark": "Algo escuro", + "light": "Claro" + }, + "notifications": { + "title": "Notificacións", + "favorites": "Favorece a miña publicación", + "follows": "Me segue", + "boosts": "Promove a miña publicación", + "mentions": "Me menciona", + "trigger": { + "anyone": "calquera", + "follower": "unha seguidora", + "follow": "alguén a quen sigo", + "noone": "ninguén", + "title": "Avisarme cando" + } + }, + "preference": { + "title": "Preferencias", + "true_black_dark_mode": "Modo negro verdadeiro", + "disable_avatar_animation": "Desactivar avatares animados", + "disable_emoji_animation": "Desactivar emojis animados", + "using_default_browser": "Usar navegador por defecto para as ligazóns", + "open_links_in_mastodon": "Abrir ligazóns en Mastodon" + }, + "boring_zone": { + "title": "A zona aburrida", + "account_settings": "Axustes da conta", + "terms": "Termos do Servizo", + "privacy": "Política de Privacidade" + }, + "spicy_zone": { + "title": "A zona picante", + "clear": "Limpar caché multimedia", + "signout": "Pechar sesión" + } + }, + "footer": { + "mastodon_description": "Mastodon é software de código aberto. Podes informar de fallos en GitHub en %s (%s)" + }, + "keyboard": { + "close_settings_window": "Pechar ventá de axustes" + } + }, + "report": { + "title_report": "Denunciar", + "title": "Denunciar a %s", + "step1": "Paso 1 de 2", + "step2": "Paso 2 de 2", + "content1": "Hai outras publicacións que desexes engadir á denuncia?", + "content2": "Hai algo que a moderación deba saber acerca desta denuncia?", + "report_sent_title": "Grazas pola denuncia, investigarémola.", + "send": "Enviar Denuncia", + "skip_to_send": "Enviar sen comentarios", + "text_placeholder": "Escribe ou pega comentarios adicionais", + "reported": "DENUNCIADO", + "step_one": { + "step_1_of_4": "Paso 1 de 4", + "whats_wrong_with_this_post": "Cal é o problema con esta publicación?", + "whats_wrong_with_this_account": "Cal é o problema con esta conta?", + "whats_wrong_with_this_username": "Cal é o problema con %s?", + "select_the_best_match": "Elixe a mellor coincidencia", + "i_dont_like_it": "Non me gusta", + "it_is_not_something_you_want_to_see": "Non é algo que queiras ver", + "its_spam": "É spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Ligazóns perigosas, relacións falsas, ou respostas repetitivas", + "it_violates_server_rules": "Viola as regras do servidor", + "you_are_aware_that_it_breaks_specific_rules": "Décheste conta de que quebra unhas normas en concreto", + "its_something_else": "É outra cousa", + "the_issue_does_not_fit_into_other_categories": "O problema non cae dentro de outras categorías" + }, + "step_two": { + "step_2_of_4": "Paso 2 de 4", + "which_rules_are_being_violated": "Que regras foron incumpridas?", + "select_all_that_apply": "Elixe todo o que sexa de aplicación", + "i_just_don’t_like_it": "Non me gusta" + }, + "step_three": { + "step_3_of_4": "Paso 3 de 4", + "are_there_any_posts_that_back_up_this_report": "Hai algunha publicación que apoie esta denuncia?", + "select_all_that_apply": "Elixe todo o que sexa de aplicación" + }, + "step_four": { + "step_4_of_4": "Paso 4 de 4", + "is_there_anything_else_we_should_know": "Hai algo máis que creas debamos saber?" + }, + "step_final": { + "dont_want_to_see_this": "Non queres ver esto?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Cando ves en Mastodon algo que non che gusta podes retirar a esa persoa da túa experiencia como usuaria.", + "unfollow": "Deixar de seguir", + "unfollowed": "Deixaches de seguir", + "unfollow_user": "Deixar de seguir a %s", + "mute_user": "Acalar a %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non verás as súas publicacións ou repeticións na túa cronoloxía. Non saberá que foi acalada.", + "block_user": "Bloquear a %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non poderá seguirte nin ver o que publicas, pero pode ver se foi bloqueada.", + "while_we_review_this_you_can_take_action_against_user": "Mentras revisamos esto, podes tomar accións contra %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Pechar vista previa", + "show_next": "Mostrar Seguinte", + "show_previous": "Mostar Anterior" + } + }, + "account_list": { + "tab_bar_hint": "Perfil seleccionado: %s. Dobre toque e manter para mostrar o intercambiador de contas", + "dismiss_account_switcher": "Desbotar intercambiador de contas", + "add_account": "Engadir conta" + }, + "wizard": { + "new_in_mastodon": "Novidade en Mastodon", + "multiple_account_switch_intro_description": "Cambia dunha conta a outra mantendo preso o botón do perfil.", + "accessibility_hint": "Dobre toque para desbotar este asistente" + } + } +} \ No newline at end of file From d627643832cf956d27f08d96d34940c958c219f6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:32 +0200 Subject: [PATCH 221/571] New translations ios-infoPlist.json (Galician) --- .../StringsConvertor/input/gl.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/gl.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/gl.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/gl.lproj/ios-infoPlist.json new file mode 100644 index 000000000..e3ec3fb73 --- /dev/null +++ b/Localization/StringsConvertor/input/gl.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Utilizado para facer foto e publicar estado", + "NSPhotoLibraryAddUsageDescription": "Utilizado para gardar a foto na Biblioteca", + "NewPostShortcutItemTitle": "Nova publicación", + "SearchShortcutItemTitle": "Buscar" +} From 092223aae9380e2339ae407f9bdf30672e087059 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:33 +0200 Subject: [PATCH 222/571] New translations Localizable.stringsdict (Galician) --- .../input/gl.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict new file mode 100644 index 000000000..abd72c1b9 --- /dev/null +++ b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notificación non lida + other + %ld notificacións non lidas + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + O límite supera %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caracter + other + %ld caracteres + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + O límite de entrada mantense en %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caracter + other + %ld caracteres + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + publicación + other + publicacións + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mutlimedia + other + %ld multimedias + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 publicación + other + %ld publicacións + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorito + other + %ld favoritos + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 promoción + other + %ld promocións + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 resposta + other + %ld respostas + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voto + other + %ld votos + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votante + other + %ld votantes + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 persoa comentando + other + %ld persoas comentando + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguimento + other + %ld seguimentos + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguidora + other + %ld seguidoras + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 ano + other + Quedan %ld anos + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 mes + other + Quedan %ld meses + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 día + other + Quedan %ld días + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 hora + other + Quedan %ld horas + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 minuto + other + Quedan %ld minutos + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Queda 1 segundo + other + Quedan %ld segundos + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hai 1 ano + other + hai %ld anos + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hai 1 mes + other + hai %ld meses + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hai 1 día + other + hai %ld días + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fai 1 hora + other + fai %ld horas + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fai 1 minuto + other + fai %ld minutos + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fai 1 seg. + other + fai %ld seg. + + + + From 35657d4f1243f9ff70b2e81037cdd8531979023e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:34 +0200 Subject: [PATCH 223/571] New translations Intents.strings (Galician) --- .../Intents/input/gl.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/gl.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.strings new file mode 100644 index 000000000..2083cc701 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/gl.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Publicar en Mastodon"; + +"751xkl" = "Texto a incluír"; + +"CsR7G2" = "Publicar en Mastodon"; + +"HZSGTr" = "Cal é o contido a publicar?"; + +"HdGikU" = "Fallou a publicación"; + +"KDNTJ4" = "Razón do fallo"; + +"RHxKOw" = "Enviar Publicación con texto"; + +"RxSqsb" = "Publicación"; + +"WCIR3D" = "Publicar ${content} en Mastodon"; + +"ZKJSNu" = "Publicación"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilidade"; + +"Zo4jgJ" = "Visibilidade da publicación"; + +"apSxMG-dYQ5NN" = "Hai ${count} opcións que coinciden con ‘Público’."; + +"apSxMG-ehFLjY" = "Hai ${count} opcións que coinciden con 'Só seguidoras’."; + +"ayoYEb-dYQ5NN" = "${content}, Público"; + +"ayoYEb-ehFLjY" = "${content}, Só seguidoras"; + +"dUyuGg" = "Publicar en Mastodon"; + +"dYQ5NN" = "Público"; + +"ehFLjY" = "Só seguidoras"; + +"gfePDu" = "Fallou a publicación. ${failureReason}"; + +"k7dbKQ" = "Publicación correcta."; + +"oGiqmY-dYQ5NN" = "Só para confirmar, querías ’Público'?"; + +"oGiqmY-ehFLjY" = "Só para confirmar, querías ’Só para seguidoras'?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Publicación correcta. "; From 8f40e17aab3369436a5225f80e72eef640fef37c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:35 +0200 Subject: [PATCH 224/571] New translations Localizable.stringsdict (Kabyle) --- .../input/kab.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict new file mode 100644 index 000000000..0fde8d68f --- /dev/null +++ b/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 wulɣu ur nettwaɣra + other + %ld yilɣa ur nettwaɣra + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Talast n unekcum tɛedda %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 usekkil + other + %ld yisekkilen + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Talast n unekcum yeqqim-d seg-s %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 usekkil + other + %ld yisekkilen + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + tasuffeɣt + other + tisuffaɣ + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tsuffeɣt + other + %ld n tsuffaɣ + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1unurif + other + %ld yinurifen + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1uɛiwed n usuffeɣ + other + %ld n uɛiwed n usuffeɣ + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tririt + other + %ld tririyin + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tefrant + other + %ld tefranin + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1umefran + other + %ld imefranen + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 umdan i yettmeslayen + other + %ld yimdanen i yettmeslayen + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 uneḍfar + other + %ld yineḍfaren + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 uneḍfar + other + %ld yineḍfaren + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Yeqqim-d 1 useggas + other + Qqimen-d %ld yiseggasen + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 wayyur i d-yeqqimen + other + %ld wayyuren i d-yeqqimen + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Yeqqim-d 1 wass + other + Qqimen-d %ld wussan + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Yeqqim-d 1 usrag + other + Qqimen-d %ld yisragen + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tesdat i d-yeqqimen + other + %ld tesdatin i d-yeqqimen + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tasint i d-yeqqimen + other + %ld tsinin i d-yeqqimen + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 useggas aya + other + %ld yiseggasen aya + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 wayyur aya + other + %ld wayyuren aya + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 wass aya + other + %ld wussan aya + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 usrag aya + other + %ld yisragen aya + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tesdat aya + other + %ld tesdatin aya + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tasint aya + other + %ld tsinin aya + + + + From 981377ae07fc005c68118f2948ab9fcd691074b1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:36 +0200 Subject: [PATCH 225/571] New translations app.json (English, United States) --- .../input/en-US.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/en-US.lproj/app.json diff --git a/Localization/StringsConvertor/input/en-US.lproj/app.json b/Localization/StringsConvertor/input/en-US.lproj/app.json new file mode 100644 index 000000000..32eaea9d2 --- /dev/null +++ b/Localization/StringsConvertor/input/en-US.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Please try again.", + "please_try_again_later": "Please try again later." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 851bfeb51725226cd47fefcaa6d7c020df867b02 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:37 +0200 Subject: [PATCH 226/571] New translations app.json (Turkish) --- .../StringsConvertor/input/tr.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/tr.lproj/app.json diff --git a/Localization/StringsConvertor/input/tr.lproj/app.json b/Localization/StringsConvertor/input/tr.lproj/app.json new file mode 100644 index 000000000..e0609e2c7 --- /dev/null +++ b/Localization/StringsConvertor/input/tr.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Lütfen tekrar deneyin.", + "please_try_again_later": "Lütfen daha sonra tekrar deneyin." + }, + "sign_up_failure": { + "title": "Kaydolma Başarısız" + }, + "server_error": { + "title": "Sunucu Hatası" + }, + "vote_failure": { + "title": "Oy Verme Başarısız", + "poll_ended": "Anket bitti" + }, + "discard_post_content": { + "title": "Taslağı Sil", + "message": "Yazdığın gönderiyi paylaşmadan silmek istiyor musun?" + }, + "publish_post_failure": { + "title": "Paylaşılamadı", + "message": "Gönderi paylaşılamadı. Lütfen internet bağlantını kontrol et.", + "attachments_message": { + "video_attach_with_photo": "İçeriğinde görseller olan bir gönderiye video eklenemez.", + "more_than_one_video": "Gönderiye birden fazla video eklenemez." + } + }, + "edit_profile_failure": { + "title": "Profil Düzenleme Hatası", + "message": "Profil düzenlenemedi. Lütfen tekrar deneyin." + }, + "sign_out": { + "title": "Oturumu Kapat", + "message": "Oturumu kapatmak istediğinize emin misiniz?", + "confirm": "Oturumu Kapat" + }, + "block_domain": { + "title": "%s alan adını tamamen engellemek istediğine gerçekten emin misiniz? Pek çok durumda o alan adından birkaç kişiyi engellemek ve sessize almak yeterlidir ve tercih edilir. Engellediğinizde bu alan adından herhangi bir içerik görmeyeceksiniz ve o alan adından olan takipçileriniz silinecek.", + "block_entire_domain": "Alan Adını Engelle" + }, + "save_photo_failure": { + "title": "Görsel Kaydetme Hatası", + "message": "Görseli kaydetmek için lütfen galeri erişim iznini aktifleştirin." + }, + "delete_post": { + "title": "Gönderiyi Sil", + "message": "Bu gönderiyi silmek istediğinize emin misiniz?" + }, + "clean_cache": { + "title": "Önbelleği Temizle", + "message": "%s boyutunda önbellek temizlendi." + } + }, + "controls": { + "actions": { + "back": "Geri", + "next": "İleri", + "previous": "Önceki", + "open": "Aç", + "add": "Ekle", + "remove": "Kaldır", + "edit": "Düzenle", + "save": "Kaydet", + "ok": "Tamam", + "done": "Kapat", + "confirm": "Onayla", + "continue": "Devam et", + "compose": "Yaz", + "cancel": "İptal et", + "discard": "Vazgeç", + "try_again": "Tekrar Deneyin", + "take_photo": "Fotoğraf Çek", + "save_photo": "Fotoğrafı Kaydet", + "copy_photo": "Fotoğrafı Kopyala", + "sign_in": "Giriş Yap", + "sign_up": "Kaydol", + "see_more": "Daha Fazla Gör", + "preview": "Önizleme", + "share": "Paylaş", + "share_user": "%s ile paylaş", + "share_post": "Gönderiyi Paylaş", + "open_in_safari": "Safari'de Aç", + "open_in_browser": "Tarayıcıda Aç", + "find_people": "Takip etmek için birkaç kişi bul", + "manually_search": "Onun yerine manuel olarak ara", + "skip": "Atla", + "reply": "Yanıtla", + "report_user": "%s kişisini bildir", + "block_domain": "%s kişisini engelle", + "unblock_domain": "%s kişisinin engelini kaldır", + "settings": "Ayarlar", + "delete": "Sil" + }, + "tabs": { + "home": "Ana Sayfa", + "search": "Arama", + "notification": "Bildirimler", + "profile": "Profil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Geç: %s", + "compose_new_post": "Yeni Gönderi Yaz", + "show_favorites": "Favorilerimi Göster", + "open_settings": "Ayarları Aç" + }, + "timeline": { + "previous_status": "Önceki Gönderi", + "next_status": "Sonraki Gönderi", + "open_status": "Gönderiyi Aç", + "open_author_profile": "Yazarın Profilini Aç", + "open_reblogger_profile": "Yeniden Paylaşanın Profilini Aç", + "reply_status": "Gönderiyi Yanıtla", + "toggle_reblog": "Gönderiyi yeniden paylaşma durumunu değiştir", + "toggle_favorite": "Gönderiyi favorileme durumunu değiştir", + "toggle_content_warning": "İçerik Uyarısı durumunu değiştir", + "preview_image": "Görseli Önizle" + }, + "segmented_control": { + "previous_section": "Önceki Seçim", + "next_section": "Sonraki Bölüm" + } + }, + "status": { + "user_reblogged": "%s yeniden paylaştı", + "user_replied_to": "%s kullanıcısına yanıt verdi", + "show_post": "Gönderiyi Göster", + "show_user_profile": "Kullanıcı profilini göster", + "content_warning": "İçerik Uyarısı", + "sensitive_content": "Hassas İçerik", + "media_content_warning": "Göstermek için herhangi bir yere basın", + "tap_to_reveal": "Göstermek için basın", + "poll": { + "vote": "Oy ver", + "closed": "Kapandı" + }, + "actions": { + "reply": "Yanıtla", + "reblog": "Yeniden paylaş", + "unreblog": "Yeniden paylaşımı geri al", + "favorite": "Favorile", + "unfavorite": "Favorilerden Çıkar", + "menu": "Menü", + "hide": "Gizle", + "show_image": "Görüntüyü göster", + "show_gif": "GIF'i göster", + "show_video_player": "Video oynatıcıyı göster", + "tap_then_hold_to_show_menu": "Menüyü göstermek için dokunun ve basılı tutun" + }, + "tag": { + "url": "Bağlantı", + "mention": "Bahset", + "link": "Bağlantı", + "hashtag": "Etiket", + "email": "E-posta", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Bu gönderiyi herkes görebilir, fakat herkese açık zaman tünelinde gösterilmez.", + "private": "Sadece gönderi sahibinin takipçileri bu gönderiyi görebilir.", + "private_from_me": "Sadece benim takipçilerim bu gönderiyi görebilir.", + "direct": "Sadece bahsedilen kullanıcı bu gönderiyi görebilir." + } + }, + "friendship": { + "follow": "Takip et", + "following": "Takip ediliyor", + "request": "İstek", + "pending": "Bekliyor", + "block": "Engelle", + "block_user": "%s kişisini engelle", + "block_domain": "%s kişisini engelle", + "unblock": "Engeli kaldır", + "unblock_user": "%s kişisinin engelini kaldır", + "blocked": "Engellendi", + "mute": "Sessize al", + "mute_user": "Sustur %s", + "unmute": "Susturmayı kaldır", + "unmute_user": "Sesini aç %s", + "muted": "Susturuldu", + "edit_info": "Bilgiyi Düzenle" + }, + "timeline": { + "filtered": "Filtrelenmiş", + "timestamp": { + "now": "Şimdi" + }, + "loader": { + "load_missing_posts": "Daha fazla gönderi yükle", + "loading_missing_posts": "Daha fazla gönderi yükleniyor...", + "show_more_replies": "Daha fazla yanıt görüntüe" + }, + "header": { + "no_status_found": "Hiçbir Gönderi Bulunamadı", + "blocking_warning": "Bu kişinin engelini kaldırana kadar\nonun profilini göremezsiniz.\nBu kişiye göre profiliniz böyle gözüküyor.", + "user_blocking_warning": "%s kişisinin engelini kaldırana kadar\nonun profilini göremezsiniz.\nBu kişiye göre profiliniz böyle gözüküyor.", + "blocked_warning": "Bu kişi sizin engelinizi kaldırana\nkadar onun profilini göremezsiniz.", + "user_blocked_warning": "%s kişisi sizin engelinizi kaldırana\nkadar onun profilini göremezsiniz.", + "suspended_warning": "Bu kullanıcı askıya alındı.", + "user_suspended_warning": "%s kişisinin hesabı askıya alındı." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Sosyal ağ,\ntekrardan ellerinizde.", + "get_started": "Başlayın", + "log_in": "Oturum Aç" + }, + "server_picker": { + "title": "Mastodon, farklı topluluklardaki kullanıcılardan oluşur.", + "subtitle": "İlgi alanlarınıza, bölgenize veya genel amaçlı bir topluluk seçin.", + "subtitle_extend": "İlgi alanlarınıza, bölgenize veya genel amaçlı bir topluluk seçin. Her topluluk tamamen bağımsız bir kuruluş veya kişi tarafından işletilmektedir.", + "button": { + "category": { + "all": "Tümü", + "all_accessiblity_description": "Kategori: Tümü", + "academia": "akademi", + "activism": "aktivizm", + "food": "yiyecek", + "furry": "furry", + "games": "oyunlar", + "general": "genel", + "journalism": "gazetecilik", + "lgbt": "lgbt", + "regional": "bölgesel", + "art": "sanat", + "music": "müzik", + "tech": "teknoloji" + }, + "see_less": "Daha Az Göster", + "see_more": "Daha Fazla Gör" + }, + "label": { + "language": "DİL", + "users": "KULLANICILAR", + "category": "KATEGORİ" + }, + "input": { + "placeholder": "Toplulukları ara", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Mevcut sunucular aranıyor...", + "bad_network": "Veriyi yüklerken bir hata oluştu. Lütfen internet bağlantınızı kontrol edin.", + "no_results": "Sonuç yok" + } + }, + "register": { + "title": "%s için kurulumunuzu yapalım", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Sil" + }, + "username": { + "placeholder": "kullanıcı adı", + "duplicate_prompt": "Bu kullanıcı adı alınmış." + }, + "display_name": { + "placeholder": "görünen ad" + }, + "email": { + "placeholder": "e-posta" + }, + "password": { + "placeholder": "parola", + "require": "Parolanızda en azından şunlar olmalı:", + "character_limit": "8 karakter", + "accessibility": { + "checked": "işaretli", + "unchecked": "işaretsiz" + }, + "hint": "Parolanız en az sekiz karakter içermelidir" + }, + "invite": { + "registration_user_invite_request": "Neden katılmak istiyorsun?" + } + }, + "error": { + "item": { + "username": "Kullanıcı adı", + "email": "E-posta", + "password": "Parola", + "agreement": "Anlaşma", + "locale": "Locale", + "reason": "Sebep" + }, + "reason": { + "blocked": "%s izin verilmeyen bir e-posta sağlayıcı içeriyor", + "unreachable": "%s mevcut değil", + "taken": "%s zaten kullanımda", + "reserved": "%s rezerve edilen bir kelime", + "accepted": "%s kabul edilmelidir", + "blank": "%s gerekli", + "invalid": "%s geçersiz", + "too_long": "%s çok uzun", + "too_short": "%s çok kısa", + "inclusion": "%s desteklenen bir değer değil" + }, + "special": { + "username_invalid": "Kullanıcı adı yalnızca alfasayısal karakterler ve alt çizgiler içerebilir", + "username_too_long": "Kullanıcı adı çok uzun (30 karakterden uzun olamaz)", + "email_invalid": "Bu geçerli bir e-posta adresi değil", + "password_too_short": "Şifre çok kısa (en az 8 karakter olmalı)" + } + } + }, + "server_rules": { + "title": "Bazı temel kurallar.", + "subtitle": "Bunlar, %s moderatörleri tarafından ayarlanmış ve uygulanmıştır.", + "prompt": "Devam ederek, %s için kullanım şartlarını ve gizlilik politikasını kabul etmiş olursunuz.", + "terms_of_service": "kullanım şartları", + "privacy_policy": "gizlilik politikası", + "button": { + "confirm": "Kabul Ediyorum" + } + }, + "confirm_email": { + "title": "Son bir şey.", + "subtitle": "Hesabınızı doğrulamak için size e-postayla gönderdiğimiz bağlantıya dokunun.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "E-posta Uygulamasını Aç", + "resend": "Yeniden gönder" + }, + "dont_receive_email": { + "title": "Posta kutunuzu kontrol edin", + "description": "E-posta adresinizin doğru olup olmadığını ve doğru ise gereksiz klasörünüzü kontrol edin.", + "resend_email": "E-postayı Yeniden Gönder" + }, + "open_email_app": { + "title": "Gelen kutunuzu kontrol edin.", + "description": "Size bir e-posta gönderdik. Eğer e-postayı almadıysanız, gereksiz klasörünü kontrol edin.", + "mail": "Posta", + "open_email_client": "E-posta İstemcisini Aç" + } + }, + "home_timeline": { + "title": "Ana Sayfa", + "navigation_bar_state": { + "offline": "Çevrimdışı", + "new_posts": "Yeni gönderiler gör", + "published": "Yayınlandı!", + "Publishing": "Gönderi yayınlanıyor...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Takip Edecek İnsanlar Bul", + "follow_explain": "Birisini takip ettiğinizde, ana sayfanızda o kişinin gönderilerini görürsünüz." + }, + "compose": { + "title": { + "new_post": "Yeni Gönderi", + "new_reply": "Yeni Yanıt" + }, + "media_selection": { + "camera": "Fotoğraf Çek", + "photo_library": "Fotoğraf Albümü", + "browse": "Göz at" + }, + "content_input_placeholder": "Aklınızdan geçenleri yazın veya yapıştırın", + "compose_action": "Yayınla", + "replying_to_user": "yanıtlanıyor: %s", + "attachment": { + "photo": "fotoğraf", + "video": "video", + "attachment_broken": "Bu %s bozuk ve Mastodon'a\nyüklenemiyor.", + "description_photo": "Görme engelliler için fotoğrafı tarif edin...", + "description_video": "Görme engelliler için videoyu tarif edin..." + }, + "poll": { + "duration_time": "Süre: %s", + "thirty_minutes": "30 dakika", + "one_hour": "1 Saat", + "six_hours": "6 Saat", + "one_day": "1 Gün", + "three_days": "3 Gün", + "seven_days": "7 Gün", + "option_number": "Seçenek %ld" + }, + "content_warning": { + "placeholder": "Buraya kesin bir uyarı yazın..." + }, + "visibility": { + "public": "Herkese açık", + "unlisted": "Listelenmemiş", + "private": "Yalnızca takipçiler", + "direct": "Sadece bahsettiğim insanlar" + }, + "auto_complete": { + "space_to_add": "Eklemek için boşluk tuşuna basın" + }, + "accessibility": { + "append_attachment": "Dosya Ekle", + "append_poll": "Anket Ekle", + "remove_poll": "Anketi Kaldır", + "custom_emoji_picker": "Özel Emoji Seçici", + "enable_content_warning": "İçerik Uyarısını Etkinleştir", + "disable_content_warning": "İçerik Uyarısını Kapat", + "post_visibility_menu": "Gönderi Görünürlüğü Menüsü" + }, + "keyboard": { + "discard_post": "Gönderiyi İptal Et", + "publish_post": "Gönderiyi Yayınla", + "toggle_poll": "Anketi Aç/Kapat", + "toggle_content_warning": "İçerik Uyarısı durumunu değiştir", + "append_attachment_entry": "Dosya Ekle - %s", + "select_visibility_entry": "Görünürlüğü Seç - %s" + } + }, + "profile": { + "dashboard": { + "posts": "gönderiler", + "following": "takip ediliyor", + "followers": "takipçi" + }, + "fields": { + "add_row": "Satır Ekle", + "placeholder": { + "label": "Etiket", + "content": "İçerik" + } + }, + "segmented_control": { + "posts": "Gönderiler", + "replies": "Yanıtlar", + "posts_and_replies": "Gönderiler ve Yanıtlar", + "media": "Medya", + "about": "Hakkında" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Hesabı sustur", + "message": "%s susturmak için onaylayın" + }, + "confirm_unmute_user": { + "title": "Susturmayı kaldır", + "message": "%s susturmasını kaldırmak için onaylayın" + }, + "confirm_block_user": { + "title": "Hesabı Engelle", + "message": "%s engellemeyi onayla" + }, + "confirm_unblock_user": { + "title": "Hesabın Engelini Kaldır", + "message": "%s engellemeyi kaldırmayı onaylayın" + } + }, + "accessibility": { + "show_avatar_image": "Profil resmini göster", + "edit_avatar_image": "Profil fotoğrafını düzenle", + "show_banner_image": "Kapak fotoğrafını göster", + "double_tap_to_open_the_list": "Listeyi açmak için çift tıklayın" + } + }, + "follower": { + "footer": "Diğer sunucudaki takipçiler gösterilemiyor." + }, + "following": { + "footer": "Diğer sunucudaki takip edilenler gösterilemiyor." + }, + "search": { + "title": "Arama", + "search_bar": { + "placeholder": "Etiketleri ve kullanıcıları ara", + "cancel": "İptal" + }, + "recommend": { + "button_text": "Tümünü Gör", + "hash_tag": { + "title": "Mastodon'da Popüler", + "description": "Oldukça ilgi gören etiketler", + "people_talking": "%s kişi konuşuyor" + }, + "accounts": { + "title": "Hoşunuza gidebilecek hesaplar", + "description": "Bu hesapları takip etmek isteyebilirsiniz", + "follow": "Takip et" + } + }, + "searching": { + "segment": { + "all": "Tümü", + "people": "İnsanlar", + "hashtags": "Etiketler", + "posts": "Gönderiler" + }, + "empty_state": { + "no_results": "Sonuç yok" + }, + "recent_search": "Son aramalar", + "clear": "Temizle" + } + }, + "discovery": { + "tabs": { + "posts": "Gönderiler", + "hashtags": "Etiketler", + "news": "Haberler", + "community": "Topluluk", + "for_you": "Senin İçin" + }, + "intro": "Bunlar, Mastodon'un köşesinde ilgi çeken gönderilerdir." + }, + "favorite": { + "title": "Favorilerin" + }, + "notification": { + "title": { + "Everything": "Her şey", + "Mentions": "Bahsetmeler" + }, + "notification_description": { + "followed_you": "seni takip etti", + "favorited_your_post": "gönderini favoriledi", + "reblogged_your_post": "gönderini yeniden paylaştı", + "mentioned_you": "senden bahsetti", + "request_to_follow_you": "size takip isteği gönderdi", + "poll_has_ended": "anket sona erdi" + }, + "keyobard": { + "show_everything": "Her Şeyi Göster", + "show_mentions": "Bahsetmeleri Göster" + } + }, + "thread": { + "back_title": "Gönderi", + "title": "%s kullanıcının gönderisi" + }, + "settings": { + "title": "Ayarlar", + "section": { + "appearance": { + "title": "Görünüm", + "automatic": "Otomatik", + "light": "Daima Açık", + "dark": "Daima Koyu" + }, + "look_and_feel": { + "title": "Görünüm", + "use_system": "Sistem İle Aynı", + "really_dark": "Gerçek Koyu", + "sorta_dark": "Hafif Koyu", + "light": "Açık" + }, + "notifications": { + "title": "Bildirimler", + "favorites": "Gönderimi favorilerine eklediğinde", + "follows": "Beni takip ettiğinde", + "boosts": "Gönderimi yeniden paylaştığında", + "mentions": "Benden bahsettiğinde", + "trigger": { + "anyone": "herhangi biri", + "follower": "bir takipçim", + "follow": "takip ettiğim biri", + "noone": "bilgilendirme", + "title": "Beni şu durumda bilgilendir: " + } + }, + "preference": { + "title": "Tercihler", + "true_black_dark_mode": "Tam siyah koyu modu", + "disable_avatar_animation": "Hareketli avatarları devre dışı bırak", + "disable_emoji_animation": "Hareketli emojileri devre dışı bırak", + "using_default_browser": "Bağlantıları varsayılan tarayıcıda aç", + "open_links_in_mastodon": "Bağlantıları Mastodon içinden aç" + }, + "boring_zone": { + "title": "Sıkıcı Bölge", + "account_settings": "Hesap Ayarları", + "terms": "Hizmet Şartları", + "privacy": "Gizlilik Politikası" + }, + "spicy_zone": { + "title": "Tehlikeli bölge", + "clear": "Medya Önbelleğini Temizle", + "signout": "Oturumu Kapat" + } + }, + "footer": { + "mastodon_description": "Mastodon açık kaynaklı bir yazılımdır. GitHub'dan %s (%s) üzerinden katkıda bulunabilir veya sorunları bildirebilirsiniz" + }, + "keyboard": { + "close_settings_window": "Ayarlar Penceresini Kapat" + } + }, + "report": { + "title_report": "Raporla", + "title": "%s kişisini bildir", + "step1": "Adım 1/2", + "step2": "Adım 2/2", + "content1": "Bu rapora eklemek istediğiniz başka gönderiler var mı?", + "content2": "Bu rapor hakkında moderatörlerin bilmesi gerektiği bir şey var mı?", + "report_sent_title": "Rapor için teşekkürler, bununla ilgileneceğiz.", + "send": "Raporu Gönder", + "skip_to_send": "Yorum yapmadan gönder", + "text_placeholder": "Ek yorum yazın veya yapıştırın", + "reported": "RAPORLANDI", + "step_one": { + "step_1_of_4": "Adım 1/4", + "whats_wrong_with_this_post": "Bu gönderi ile ilgili sorun nedir?", + "whats_wrong_with_this_account": "Bu hesap ile ilgili sorun nedir?", + "whats_wrong_with_this_username": "%s kişisinin sorunu nedir?", + "select_the_best_match": "En iyi seçeneceği seçiniz", + "i_dont_like_it": "Beğenmedim", + "it_is_not_something_you_want_to_see": "Görmek isteyeceğim bir şey değil", + "its_spam": "Spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "Sunucu kurallarını ihlal ediyor", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "Başka bir şey", + "the_issue_does_not_fit_into_other_categories": "Sorun bunlardan biri değil" + }, + "step_two": { + "step_2_of_4": "Adım 2/4", + "which_rules_are_being_violated": "Hangi kurallar ihlal ediliyor?", + "select_all_that_apply": "Geçerli olan tümünü seçiniz", + "i_just_don’t_like_it": "Beğenmedim" + }, + "step_three": { + "step_3_of_4": "Adım 3/4", + "are_there_any_posts_that_back_up_this_report": "Bu bildirimi destekleyecek herhangi bir gönderi var mı?", + "select_all_that_apply": "Geçerli olanların tümünü seçiniz" + }, + "step_four": { + "step_4_of_4": "Adım 4/4", + "is_there_anything_else_we_should_know": "Bilmemiz gereken başka bir şey var mı?" + }, + "step_final": { + "dont_want_to_see_this": "Bunu görmek istemiyor musunuz?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Takibi bırak", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Önizlemeyi Kapat", + "show_next": "Sonrakini Göster", + "show_previous": "Öncekini Göster" + } + }, + "account_list": { + "tab_bar_hint": "Şu anki seçili profil: %s. Hesap değiştiriciyi göstermek için iki kez dokunun ve basılı tutun", + "dismiss_account_switcher": "Hesap Değiştiriciyi Kapat", + "add_account": "Hesap Ekle" + }, + "wizard": { + "new_in_mastodon": "Mastodon'da Yeni", + "multiple_account_switch_intro_description": "Profil butonuna basılı tutarak birden fazla hesap arasında geçiş yapın.", + "accessibility_hint": "Bu yardımı kapatmak için çift tıklayın" + } + } +} \ No newline at end of file From 90adf3361487f40020358e3e925c0a621bbad200 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:38 +0200 Subject: [PATCH 227/571] New translations ios-infoPlist.json (Turkish) --- .../StringsConvertor/input/tr.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/tr.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/tr.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/tr.lproj/ios-infoPlist.json new file mode 100644 index 000000000..e776179f8 --- /dev/null +++ b/Localization/StringsConvertor/input/tr.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Fotoğraf çekerek durum paylaşmak için kullanılır", + "NSPhotoLibraryAddUsageDescription": "Fotoğraf Albümü'ne fotoğraf kaydetmek için kullanılır", + "NewPostShortcutItemTitle": "Yeni Gönderi", + "SearchShortcutItemTitle": "Arama" +} From cc57d5294e11f66b405b841e6a33e7f6b4d75e5c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:38 +0200 Subject: [PATCH 228/571] New translations Localizable.stringsdict (Turkish) --- .../input/tr.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict new file mode 100644 index 000000000..a512c4a7f --- /dev/null +++ b/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Okunmamış 1 bildirim + other + Okunmamış %ld bildirim + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + %#@character_count@ karakter limiti aşıyor + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 karakter + other + %ld karakter + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + %#@character_count@ karakter limiti var + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 karakter + other + %ld karakter + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + gönderi + other + gönderi + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 gönderi + other + %ld gönderi + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favori + other + %ld favori + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 yeniden paylaşım + other + %ld yeniden paylaşım + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld yanıt + other + %ld yanıt + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 oy + other + %ld oy + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 oy veren + other + %ld oy veren + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 kişi konuşuyor + other + %ld kişi konuşuyor + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 takip edilen + other + %ld takip edilen + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 takipçi + other + %ld takipçi + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 yıl kaldı + other + %ld yıl kaldı + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ay kaldı + other + %ld ay kaldı + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 gün kaldı + other + %ld gün kaldı + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 saat kaldı + other + %ld saat kaldı + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dakika kaldı + other + %ld dakika kaldı + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 saniye kaldı + other + %ld saniye kaldı + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 yıl önce + other + %ld yıl önce + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ay önce + other + %ld ay önce + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 gün önce + other + %ld gün önce + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 saat önce + other + %ld saat önce + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dakika önce + other + %ld dakika önce + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 saniye önce + other + %ld saniye önce + + + + From eca8db2a6781c81e196d1aa01d7f185935f03f17 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:39 +0200 Subject: [PATCH 229/571] New translations Intents.strings (Turkish) --- .../Intents/input/tr.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/tr.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.strings new file mode 100644 index 000000000..dc60dee73 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Mastodon'da paylaş"; + +"751xkl" = "Metin içeriği"; + +"CsR7G2" = "Mastodon'da paylaş"; + +"HZSGTr" = "Ne içeriği paylaşılacak?"; + +"HdGikU" = "Gönderi paylaşılamadı"; + +"KDNTJ4" = "Hata Sebebi"; + +"RHxKOw" = "Metin içeriği ile gönderiyi paylaş"; + +"RxSqsb" = "Gönderi"; + +"WCIR3D" = "${content} içeriğini Mastodon'da paylaş"; + +"ZKJSNu" = "Gönderi"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Gizlilik"; + +"Zo4jgJ" = "Gönderi Gizliliği"; + +"apSxMG-dYQ5NN" = "\"Herkese açık\" ile eşleşen ${count} seçenek var."; + +"apSxMG-ehFLjY" = "\"Sadece takipçiler\" ile eşleşen ${count} seçenek var."; + +"ayoYEb-dYQ5NN" = "${content}, Herkese açık"; + +"ayoYEb-ehFLjY" = "${content}, Sadece takipçiler"; + +"dUyuGg" = "Mastodon'da paylaş"; + +"dYQ5NN" = "Herkese açık"; + +"ehFLjY" = "Sadece takipçiler"; + +"gfePDu" = "Gönderi paylaşılamadı. ${failureReason}"; + +"k7dbKQ" = "Gönderi başarıyla paylaşıldı."; + +"oGiqmY-dYQ5NN" = "\"Herkese açık\" paylaşmak istediğinize emin misiniz?"; + +"oGiqmY-ehFLjY" = "\"Sadece takipçiler\" için paylaşmak istediğinize emin misiniz?"; + +"rM6dvp" = "Bağlantı"; + +"ryJLwG" = "Gönderi başarıyla paylaşıldı. "; From 1f5e55a7e6a29ea6aeb6b074f77480821d8e74cc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:40 +0200 Subject: [PATCH 230/571] New translations Intents.stringsdict (Turkish) --- .../input/tr.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/tr.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.stringsdict new file mode 100644 index 000000000..2e75a0357 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/tr.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + ‘${content}’ ile eşleşen %#@count_option@ var. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 seçenek + other + %ld seçenek + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + ‘${visibility}’ ile eşleşen %#@count_option@ var. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 seçenek + other + %ld seçenek + + + + From 03f9dd6efd94ce9f0a83ac6687f5d22f54153180 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:41 +0200 Subject: [PATCH 231/571] New translations ios-infoPlist.json (Dutch) --- .../StringsConvertor/input/nl.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/nl.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/nl.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/nl.lproj/ios-infoPlist.json new file mode 100644 index 000000000..66b6a9571 --- /dev/null +++ b/Localization/StringsConvertor/input/nl.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Gebruikt om foto's te nemen voor je berichten", + "NSPhotoLibraryAddUsageDescription": "Gebruikt om foto's op te slaan in de fotobibliotheek", + "NewPostShortcutItemTitle": "Nieuw Bericht", + "SearchShortcutItemTitle": "Zoek" +} From 3fee45497f91bc6ab721e62dc1a23d7ac86b5fad Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:42 +0200 Subject: [PATCH 232/571] New translations Localizable.stringsdict (Portuguese, Brazilian) --- .../input/pt-BR.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict new file mode 100644 index 000000000..688ee2b14 --- /dev/null +++ b/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notificação não lida + other + %ld notificações não lidas + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Limite de caracteres excedido %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carácter + other + %ld caracteres + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Limite de caracteres continua excedido %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carácter + other + %ld caracteres + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 toot + other + %ld toots + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorito + other + %ld favoritos + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 resposta + other + %ld respostas + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voto + other + %ld votos + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votante + other + %ld votantes + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 pessoa falando + other + %ld pessoas falando + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguindo + other + %ld seguindo + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguidor + other + %ld seguidores + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ano restante + other + %ld anos restantes + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mês restante + other + %ld meses restantes + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dia restante + other + %ld dias restantes + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hora restante + other + %ld horas restantes + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuto restante + other + %ld minutos restantes + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 segundo restante + other + %ld segundos restantes + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ano atrás + other + %ldy anos atrás + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mês atrás + other + %ldM meses atrás + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dia atrás + other + %ldd dias atrás + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h atrás + other + %ldh horas atrás + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Há 1 min + other + Há %ldm minutos + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Há 1 segundo + other + Há %lds segundos + + + + From 701839a31d68c49d3003472aa19764f4cc1c4fb0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:43 +0200 Subject: [PATCH 233/571] New translations Localizable.stringsdict (Swedish) --- .../input/sv.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict new file mode 100644 index 000000000..653a69373 --- /dev/null +++ b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 oläst notis + other + %ld olästa notiser + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Inmatningsgränsen överskrider %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tecken + other + %ld tecken + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Inmatningsgränsen återstår %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tecken + other + %ld tecken + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + inlägg + other + inläggen + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 inlägg + other + %ld inlägg + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorit + other + %ld favoriter + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ompostning + other + %ld ompostningar + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 svar + other + %ld svar + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 röst + other + %ld röster + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld röstare + other + %ld röster + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld person diskuterar + other + %ld personer diskuterar + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld följer + other + %ld följer + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 följare + other + %ld följare + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld år kvar + other + %ld år kvar + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld månad kvar + other + %ld månader kvar + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld dag kvar + other + %ld dagar kvar + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld timme kvar + other + %ld timmar kvar + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld minut kvar + other + %ld minuter kvar + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld sekund kvar + other + %ld sekunder kvar + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld år sedan + other + %ldå sedan + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld mån sedan + other + %ld mån sedan + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ldd sedan + other + %ldd sedan + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ldt sedan + other + %ldt sedan + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld min sedan + other + %ld min sedan + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %lds sedan + other + %lds sedan + + + + From aca257ac299cd999d2947af648dde355e3f7824c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:44 +0200 Subject: [PATCH 234/571] New translations ios-infoPlist.json (Scottish Gaelic) --- .../StringsConvertor/input/gd.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/gd.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/gd.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/gd.lproj/ios-infoPlist.json new file mode 100644 index 000000000..2e521376d --- /dev/null +++ b/Localization/StringsConvertor/input/gd.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "’Ga chleachdadh airson dealbh a thogail do staid puist", + "NSPhotoLibraryAddUsageDescription": "’Ga chleachdadh airson dealbh a shàbhaladh ann an tasg-lann nan dealbhan", + "NewPostShortcutItemTitle": "Post ùr", + "SearchShortcutItemTitle": "Lorg" +} From 77274d1ca24c9d110f6669fe3ad318866c750938 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:45 +0200 Subject: [PATCH 235/571] New translations Localizable.stringsdict (Scottish Gaelic) --- .../input/gd.lproj/Localizable.stringsdict | 526 ++++++++++++++++++ 1 file changed, 526 insertions(+) create mode 100644 Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict new file mode 100644 index 000000000..c7bc77310 --- /dev/null +++ b/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict @@ -0,0 +1,526 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld bhrath nach deach a leughadh + two + %ld bhrath nach deach a leughadh + few + %ld brathan nach deach a leughadh + other + %ld brath nach deach a leughadh + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Tha d’ ion-chur %#@character_count@ ro fhada + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld charactar + two + %ld charactar + few + %ld caractaran + other + %ld caractar + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Tha %#@character_count@ air fhàgail dhut + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld charactar + two + %ld charactar + few + %ld caractaran + other + %ld caractar + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + phost + two + phost + few + postaichean + other + post + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + two + %ld media + few + %ld media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld phost + two + %ld phost + few + %ld postaichean + other + %ld post + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld annsachd + two + %ld annsachd + few + %ld annsachdan + other + %ld annsachd + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld bhrosnachadh + two + %ld bhrosnachadh + few + %ld brosnachaidhean + other + %ld brosnachadh + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld fhreagairt + two + %ld fhreagairt + few + %ld freagairtean + other + %ld freagairt + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld bhòt + two + %ld bhòt + few + %ld bhòtaichean + other + %ld bhòt + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld neach-bhòtaidh + two + %ld luchd-bhòtaidh + few + %ld luchd-bhòtaidh + other + %ld luchd-bhòtaidh + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld a’ bruidhinn + two + %ld a’ bruidhinn + few + %ld a’ bruidhinn + other + %ld a’ bruidhinn + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + A’ leantainn %ld + two + A’ leantainn %ld + few + A’ leantainn %ld + other + A’ leantainn %ld + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Tha %ld a’ leantainn air + two + Tha %ld a’ leantainn air + few + Tha %ld a’ leantainn air + other + Tha %ld a’ leantainn air + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld bhliadhna air fhàgail + two + %ld bhliadhna air fhàgail + few + %ld bliadhnaichean air fhàgail + other + %ld bliadhna air fhàgail + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld mhìos air fhàgail + two + %ld mhìos air fhàgail + few + %ld mìosan air fhàgail + other + %ld mìos air fhàgail + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld latha air fhàgail + two + %ld latha air fhàgail + few + %ld làithean air fhàgail + other + %ld latha air fhàgail + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld uair a thìde air fhàgail + two + %ld uair a thìde air fhàgail + few + %ld uairean a thìde air fhàgail + other + %ld uair a thìde air fhàgail + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld mhionaid air fhàgail + two + %ld mhionaid air fhàgail + few + %ld mionaidean air fhàgail + other + %ld mionaid air fhàgail + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld diog air fhàgail + two + %ld dhiog air fhàgail + few + %ld diogan air fhàgail + other + %ld diog air fhàgail + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld bhl. air ais + two + %ld bhl. air ais + few + %ld bl. air ais + other + %ld bl. air ais + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld mhì. air ais + two + %ld mhì. air ais + few + %ld mì. air ais + other + %ld mì. air ais + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld là air ais + two + %ld là air ais + few + %ld là. air ais + other + %ld là air ais + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ldu air ais + two + %ldu air ais + few + %ldu air ais + other + %ldu air ais + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ldm air ais + two + %ldm air ais + few + %ldm air ais + other + %ldm air ais + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ldd air ais + two + %ldd air ais + few + %ldd air ais + other + %ldd air ais + + + + From 163aaa2d125b4f8d932970b0c6278069f1ab56b2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:46 +0200 Subject: [PATCH 236/571] New translations app.json (Welsh) --- .../StringsConvertor/input/cy.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/cy.lproj/app.json diff --git a/Localization/StringsConvertor/input/cy.lproj/app.json b/Localization/StringsConvertor/input/cy.lproj/app.json new file mode 100644 index 000000000..59ab278a7 --- /dev/null +++ b/Localization/StringsConvertor/input/cy.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Please try again.", + "please_try_again_later": "Please try again later." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Hybwch", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "postiadau", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Postiadau", + "replies": "Replies", + "posts_and_replies": "Postiadau ac Atebion", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Postiadau" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Postiadau", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From f72d5229860f47fdb03cabb01eda3a02e5479e36 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:47 +0200 Subject: [PATCH 237/571] New translations app.json (Hindi) --- .../StringsConvertor/input/hi.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/hi.lproj/app.json diff --git a/Localization/StringsConvertor/input/hi.lproj/app.json b/Localization/StringsConvertor/input/hi.lproj/app.json new file mode 100644 index 000000000..bcb89170a --- /dev/null +++ b/Localization/StringsConvertor/input/hi.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "कृपया फिर से प्रयास करें।", + "please_try_again_later": "बाद में फिर से प्रयास करें।" + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "पोस्ट को हटाएं", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From e8cfc1d545c862bd0717211437d72ebf92209940 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:48 +0200 Subject: [PATCH 238/571] New translations app.json (Italian) --- .../StringsConvertor/input/it.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/it.lproj/app.json diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json new file mode 100644 index 000000000..50244253b --- /dev/null +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Per favore riprova.", + "please_try_again_later": "Per favore, riprova più tardi." + }, + "sign_up_failure": { + "title": "Iscrizione fallita" + }, + "server_error": { + "title": "Errore del server" + }, + "vote_failure": { + "title": "Voto fallito", + "poll_ended": "Il sondaggio è terminato" + }, + "discard_post_content": { + "title": "Elimina bozza", + "message": "Confermare di scartare il contenuto del post composto." + }, + "publish_post_failure": { + "title": "Pubblicazione fallita", + "message": "Pubblicazione del post fallita.\nPer favore verifica la tua connessione internet.", + "attachments_message": { + "video_attach_with_photo": "Impossibile allegare un filmato a un post che contiene già immagini.", + "more_than_one_video": "Impossibile allegare più di un filmato." + } + }, + "edit_profile_failure": { + "title": "Errore nella modifica del profilo", + "message": "Impossibile modificare il profilo. Per favore, riprova." + }, + "sign_out": { + "title": "Esci", + "message": "Vuoi davvero scollegarti?", + "confirm": "Esci" + }, + "block_domain": { + "title": "Vuoi davvero bloccare %s completamente? Nella maggioranza dei casi, è preferibile e sufficiente bloccare o silenziare pochi account in modo mirato. Non vedrai i contenuti di quel dominio e tutti i tuoi follower da quel dominio verranno rimossi.", + "block_entire_domain": "Blocca il dominio" + }, + "save_photo_failure": { + "title": "Salvataggio foto fallito", + "message": "Si prega di abilitare l'autorizzazione di accesso alla galleria immagini per salvare la foto." + }, + "delete_post": { + "title": "Cancella il post", + "message": "Vuoi veramente eliminare questo post?" + }, + "clean_cache": { + "title": "Pulisci la cache", + "message": "Cache %s pulita con successo." + } + }, + "controls": { + "actions": { + "back": "Indietro", + "next": "Avanti", + "previous": "Precedente", + "open": "Apri", + "add": "Aggiungi", + "remove": "Rimuovi", + "edit": "Modifica", + "save": "Salva", + "ok": "OK", + "done": "Fatto", + "confirm": "Conferma", + "continue": "Continua", + "compose": "Scrivi", + "cancel": "Annulla", + "discard": "Abbandona", + "try_again": "Riprova", + "take_photo": "Scatta foto", + "save_photo": "Salva foto", + "copy_photo": "Copia foto", + "sign_in": "Accedi", + "sign_up": "Registrati", + "see_more": "Visualizza altro", + "preview": "Anteprima", + "share": "Condividi", + "share_user": "Condividi %s", + "share_post": "Condividi il post", + "open_in_safari": "Apri su Safari", + "open_in_browser": "Apri nel browser", + "find_people": "Trova persone da seguire", + "manually_search": "Cerca manualmente invece", + "skip": "Salta", + "reply": "Rispondi", + "report_user": "Segnala %s", + "block_domain": "Blocca %s", + "unblock_domain": "Sblocca %s", + "settings": "Impostazioni", + "delete": "Elimina" + }, + "tabs": { + "home": "Inizio", + "search": "Cerca", + "notification": "Notifiche", + "profile": "Profilo" + }, + "keyboard": { + "common": { + "switch_to_tab": "Passa a %s", + "compose_new_post": "Componi un nuovo post", + "show_favorites": "Mostra preferiti", + "open_settings": "Apri Impostazioni" + }, + "timeline": { + "previous_status": "Post precedente", + "next_status": "Post successivo", + "open_status": "Apri il post", + "open_author_profile": "Apri il profilo dell'autore", + "open_reblogger_profile": "Apri il profilo di chi ha condiviso", + "reply_status": "Rispondi al post", + "toggle_reblog": "Attiva/Disattiva condivisione sul post", + "toggle_favorite": "Attiva/Disattiva preferito nel post", + "toggle_content_warning": "Attiva/Disattiva avvertimento contenuti", + "preview_image": "Anteprima immagine" + }, + "segmented_control": { + "previous_section": "Sezione precedente", + "next_section": "Sezione successiva" + } + }, + "status": { + "user_reblogged": "%s hanno condiviso", + "user_replied_to": "Rispondi a %s", + "show_post": "Mostra il post", + "show_user_profile": "Mostra il profilo dell'utente", + "content_warning": "Avviso sul contenuto", + "sensitive_content": "Contenuto sensibile", + "media_content_warning": "Tocca ovunque per rivelare", + "tap_to_reveal": "Tocca per rivelare", + "poll": { + "vote": "Vota", + "closed": "Chiuso" + }, + "actions": { + "reply": "Rispondi", + "reblog": "Condivisione", + "unreblog": "Annulla condivisione", + "favorite": "Preferito", + "unfavorite": "Non preferito", + "menu": "Menù", + "hide": "Nascondi", + "show_image": "Mostra immagine", + "show_gif": "Mostra GIF", + "show_video_player": "Mostra lettore video", + "tap_then_hold_to_show_menu": "Tocca quindi tieni premuto per mostrare il menu" + }, + "tag": { + "url": "URL", + "mention": "Menzione", + "link": "Collegamento", + "hashtag": "Etichetta", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Tutti possono vedere questo post ma non mostrare nella cronologia pubblica.", + "private": "Solo i loro seguaci possono vedere questo post.", + "private_from_me": "Solo i miei seguaci possono vedere questo post.", + "direct": "Solo l'utente menzionato può vedere questo post." + } + }, + "friendship": { + "follow": "Segui", + "following": "Stai seguendo", + "request": "Richiesta", + "pending": "In attesa", + "block": "Blocca", + "block_user": "Blocca %s", + "block_domain": "Blocca %s", + "unblock": "Sblocca", + "unblock_user": "Sblocca %s", + "blocked": "Bloccato", + "mute": "Silenzia", + "mute_user": "Silenzia %s", + "unmute": "Riattiva", + "unmute_user": "Riattiva %s", + "muted": "Silenziato", + "edit_info": "Modifica info" + }, + "timeline": { + "filtered": "Filtrato", + "timestamp": { + "now": "Ora" + }, + "loader": { + "load_missing_posts": "Carica i post mancanti", + "loading_missing_posts": "Caricamento post mancanti...", + "show_more_replies": "Mostra più risposte" + }, + "header": { + "no_status_found": "Nessun post trovato", + "blocking_warning": "Non puoi visualizzare il profilo di questo utente\nfinché non li sblocchi.\nIl tuo profilo sembra questo per loro.", + "user_blocking_warning": "Non puoi visualizzare il profilo di %s\nfinché non li sblocchi.\nIl tuo profilo sembra questo per loro.", + "blocked_warning": "Non puoi visualizzare il profilo di questo utente\nfino a quando non ti sbloccano.", + "user_blocked_warning": "Non puoi visualizzare il profilo di %s\nfino a quando non ti sbloccano.", + "suspended_warning": "Questo utente è stato sospeso.", + "user_suspended_warning": "L'account di %s è stato sospeso." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Il social network, di nuovo nelle tue mani.", + "get_started": "Inizia", + "log_in": "Accedi" + }, + "server_picker": { + "title": "Mastodon è fatto di utenti in diverse comunità.", + "subtitle": "Scegli una comunità basata sui tuoi interessi, regione o uno scopo generale.", + "subtitle_extend": "Scegli una comunità basata sui tuoi interessi, regione o uno scopo generale. Ogni comunità è gestita da un'organizzazione completamente indipendente o individuale.", + "button": { + "category": { + "all": "Tutti", + "all_accessiblity_description": "Categoria: Tutti", + "academia": "accademia", + "activism": "attivismo", + "food": "cibo", + "furry": "peloso", + "games": "giochi", + "general": "generale", + "journalism": "giornalismo", + "lgbt": "lgbt", + "regional": "locale", + "art": "arte", + "music": "musica", + "tech": "tecnologia" + }, + "see_less": "Vedi meno", + "see_more": "Vedi di più" + }, + "label": { + "language": "LINGUA", + "users": "UTENTI", + "category": "CATEGORIA" + }, + "input": { + "placeholder": "Cerca comunità", + "search_servers_or_enter_url": "Cerca comunità o inserisci l'URL" + }, + "empty_state": { + "finding_servers": "Ricerca server disponibili...", + "bad_network": "Qualcosa è andato storto durante il caricamento dei dati. Controlla la tua connessione internet.", + "no_results": "Nessun risultato" + } + }, + "register": { + "title": "Facciamo in modo che sia configurato il %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Elimina" + }, + "username": { + "placeholder": "nome utente", + "duplicate_prompt": "Questo nome utente è già stato preso." + }, + "display_name": { + "placeholder": "visualizza nome" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "La tua password ha bisogno di almeno:", + "character_limit": "8 caratteri", + "accessibility": { + "checked": "verificato", + "unchecked": "non verificato" + }, + "hint": "La tua password deve essere di almeno 8 caratteri" + }, + "invite": { + "registration_user_invite_request": "Perché vuoi unirti?" + } + }, + "error": { + "item": { + "username": "Nome utente", + "email": "Email", + "password": "Password", + "agreement": "Accordo", + "locale": "Locale", + "reason": "Motivo" + }, + "reason": { + "blocked": "%s contiene un provider email non consentito", + "unreachable": "%s non sembra esistere", + "taken": "%s è già in uso", + "reserved": "%s è una parola chiave riservata", + "accepted": "%s deve essere accettato", + "blank": "%s è richiesto", + "invalid": "%s non è valido", + "too_long": "%s è troppo lungo", + "too_short": "%s è troppo corto", + "inclusion": "%s non è un valore supportato" + }, + "special": { + "username_invalid": "Il nome utente deve contenere solo caratteri alfanumerici e trattini bassi", + "username_too_long": "Il nome utente è troppo lungo (non può essere più lungo di 30 caratteri)", + "email_invalid": "Questo non è un indirizzo email valido", + "password_too_short": "La password è troppo corta (deve contenere almeno 8 caratteri)" + } + } + }, + "server_rules": { + "title": "Alcune regole di base.", + "subtitle": "Questi sono impostati e applicati dai moderatori %s.", + "prompt": "Continuando, sei soggetto alle condizioni di servizio e all'informativa sulla privacy per %s.", + "terms_of_service": "condizioni del servizio", + "privacy_policy": "privacy policy", + "button": { + "confirm": "Accetto" + } + }, + "confirm_email": { + "title": "Un'ultima cosa.", + "subtitle": "Tocca il link che ti abbiamo inviato per verificare il tuo account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Apri l'app Email", + "resend": "Invia di nuovo" + }, + "dont_receive_email": { + "title": "Controlla la tua e-mail", + "description": "Controlla se il tuo indirizzo email sia corretto, così come la tua cartella spazzatura se non ce l'hai.", + "resend_email": "Invia e-mail di nuovo" + }, + "open_email_app": { + "title": "Controlla la tua posta in arrivo.", + "description": "Ti abbiamo appena inviato un'email. Controlla la tua cartella spazzatura se non ce l'hai.", + "mail": "Posta", + "open_email_client": "Apri client Email" + } + }, + "home_timeline": { + "title": "Inizio", + "navigation_bar_state": { + "offline": "Non in linea", + "new_posts": "Vedi nuovi post", + "published": "Pubblicato!", + "Publishing": "Pubblicazione post...", + "accessibility": { + "logo_label": "Pulsante Logo", + "logo_hint": "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente" + } + } + }, + "suggestion_account": { + "title": "Trova alcune persone da seguire", + "follow_explain": "Quando segui qualcuno, vedrai i loro post nella tua home feed." + }, + "compose": { + "title": { + "new_post": "Nuovo post", + "new_reply": "Nuova risposta" + }, + "media_selection": { + "camera": "Scatta foto", + "photo_library": "Libreria foto", + "browse": "Sfoglia" + }, + "content_input_placeholder": "Digita o incolla quello che hai in mente", + "compose_action": "Pubblica", + "replying_to_user": "rispondendo a %s", + "attachment": { + "photo": "foto", + "video": "filmato", + "attachment_broken": "Questo %s è rotto e non può essere\ncaricato su Mastodon.", + "description_photo": "Descrivi la foto per gli utenti ipovedenti...", + "description_video": "Descrivi il filmato per gli utenti ipovedenti..." + }, + "poll": { + "duration_time": "Durata: %s", + "thirty_minutes": "30 minuti", + "one_hour": "1 ora", + "six_hours": "6 ore", + "one_day": "1 giorno", + "three_days": "3 giorni", + "seven_days": "7 giorni", + "option_number": "Opzione %ld" + }, + "content_warning": { + "placeholder": "Scrivi un avviso accurato qui..." + }, + "visibility": { + "public": "Pubblico", + "unlisted": "Non elencato", + "private": "Solo i seguaci", + "direct": "Solo le persone che menziono" + }, + "auto_complete": { + "space_to_add": "Spazio da aggiungere" + }, + "accessibility": { + "append_attachment": "Aggiungi allegato", + "append_poll": "Aggiungi sondaggio", + "remove_poll": "Elimina sondaggio", + "custom_emoji_picker": "Selettore Emoji personalizzato", + "enable_content_warning": "Abilita avvertimento contenuti", + "disable_content_warning": "Disabilita avviso di contenuti", + "post_visibility_menu": "Menu di visibilità del post" + }, + "keyboard": { + "discard_post": "Scarta post", + "publish_post": "Pubblica il post", + "toggle_poll": "Attiva/Disattiva Sondaggio", + "toggle_content_warning": "Attiva/Disattiva avviso contenuti", + "append_attachment_entry": "Aggiungi allegato - %s", + "select_visibility_entry": "Seleziona visibilità - %s" + } + }, + "profile": { + "dashboard": { + "posts": "post", + "following": "seguendo", + "followers": "seguaci" + }, + "fields": { + "add_row": "Aggiungi riga", + "placeholder": { + "label": "Etichetta", + "content": "Contenuto" + } + }, + "segmented_control": { + "posts": "Post", + "replies": "Risposte", + "posts_and_replies": "Post e risposte", + "media": "Media", + "about": "Info su" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Silenzia account", + "message": "Confermi di silenziare %s" + }, + "confirm_unmute_user": { + "title": "Riattiva account", + "message": "Confermi di riattivare %s" + }, + "confirm_block_user": { + "title": "Blocca account", + "message": "Confermi di bloccare %s" + }, + "confirm_unblock_user": { + "title": "Sblocca account", + "message": "Conferma per sbloccare %s" + } + }, + "accessibility": { + "show_avatar_image": "Mostra immagine avatar", + "edit_avatar_image": "Modifica immagine avatar", + "show_banner_image": "Mostra immagine banner", + "double_tap_to_open_the_list": "Doppio tocco per aprire la lista" + } + }, + "follower": { + "footer": "I seguaci da altri server non vengono visualizzati." + }, + "following": { + "footer": "I follow da altri server non vengono visualizzati." + }, + "search": { + "title": "Cerca", + "search_bar": { + "placeholder": "Cerca hashtag e utenti", + "cancel": "Annulla" + }, + "recommend": { + "button_text": "Vedi tutto", + "hash_tag": { + "title": "Di tendenza su Mastodon", + "description": "Hashtag che stanno ottenendo un bel po' di attenzione", + "people_talking": "%s persone ne parlano" + }, + "accounts": { + "title": "Account che potrebbero piacerti", + "description": "Potresti voler seguire questi account", + "follow": "Segui" + } + }, + "searching": { + "segment": { + "all": "Tutto", + "people": "Persone", + "hashtags": "Hashtags", + "posts": "Post" + }, + "empty_state": { + "no_results": "Nessun risultato" + }, + "recent_search": "Ricerche recenti", + "clear": "Cancella" + } + }, + "discovery": { + "tabs": { + "posts": "Post", + "hashtags": "Hashtag", + "news": "Notizie", + "community": "Comunità", + "for_you": "Per Te" + }, + "intro": "Questi sono i post che stanno guadagnando popolarità nel tuo angolo di Mastodon." + }, + "favorite": { + "title": "I tuoi preferiti" + }, + "notification": { + "title": { + "Everything": "Tutto", + "Mentions": "Menzioni" + }, + "notification_description": { + "followed_you": "ti ha seguito", + "favorited_your_post": "ha apprezzato il tuo post", + "reblogged_your_post": "ha ripostato il tuo post", + "mentioned_you": "ti ha menzionato", + "request_to_follow_you": "richiesta di seguirti", + "poll_has_ended": "sondaggio terminato" + }, + "keyobard": { + "show_everything": "Mostra Tutto", + "show_mentions": "Mostra Menzioni" + } + }, + "thread": { + "back_title": "Post", + "title": "Post da %s" + }, + "settings": { + "title": "Impostazioni", + "section": { + "appearance": { + "title": "Aspetto", + "automatic": "Automatico", + "light": "Sempre chiaro", + "dark": "Sempre scuro" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Predefinito di sistema", + "really_dark": "Davvero scuro", + "sorta_dark": "Un po' scuro", + "light": "Chiaro" + }, + "notifications": { + "title": "Notifiche", + "favorites": "Apprezza i miei post", + "follows": "Mi segue", + "boosts": "Condivide i miei post", + "mentions": "Mi menziona", + "trigger": { + "anyone": "chiunque", + "follower": "un seguace", + "follow": "chiunque io segua", + "noone": "nessuno", + "title": "Avvisami quando" + } + }, + "preference": { + "title": "Preferenze", + "true_black_dark_mode": "Modalità molto scura", + "disable_avatar_animation": "Disabilita avatar animati", + "disable_emoji_animation": "Disabilita emoji animate", + "using_default_browser": "Usa browser predefinito per aprire i collegamenti", + "open_links_in_mastodon": "Apri i link in Mastodon" + }, + "boring_zone": { + "title": "La zona boring", + "account_settings": "Impostazioni account", + "terms": "Termini di servizio", + "privacy": "Politica sulla Privacy" + }, + "spicy_zone": { + "title": "La zona piccante", + "clear": "Cancella la cache multimediale", + "signout": "Esci" + } + }, + "footer": { + "mastodon_description": "Mastodon è un software open source. Puoi segnalare problemi su GitHub a %s (%s)" + }, + "keyboard": { + "close_settings_window": "Chiudi la finestra Impostazioni" + } + }, + "report": { + "title_report": "Segnala", + "title": "Segnala %s", + "step1": "Fase 1 di 2", + "step2": "Fase 2 di 2", + "content1": "Ci sono altri post che vorresti aggiungere alla segnalazione?", + "content2": "C'è qualcosa che i moderatori dovrebbero sapere su questa segnalazione?", + "report_sent_title": "Grazie per la segnalazione, esamineremo questo aspetto.", + "send": "Invia segnalazione", + "skip_to_send": "Invia senza commento", + "text_placeholder": "Digita o incolla commenti aggiuntivi", + "reported": "SEGNALATO", + "step_one": { + "step_1_of_4": "Fase 1 di 4", + "whats_wrong_with_this_post": "Cosa c'è che non va con questo post?", + "whats_wrong_with_this_account": "Cosa c'è che non va con questo account?", + "whats_wrong_with_this_username": "Cosa c'è che non va con %s?", + "select_the_best_match": "Scegli la migliore corrispondenza", + "i_dont_like_it": "Non mi piace", + "it_is_not_something_you_want_to_see": "È qualcosa che non vuoi vedere", + "its_spam": "È spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Collegamenti malevoli, false interazioni o risposte ripetitive", + "it_violates_server_rules": "Viola le regole del server", + "you_are_aware_that_it_breaks_specific_rules": "Sei consapevole che violi regole specifiche", + "its_something_else": "È qualcos'altro", + "the_issue_does_not_fit_into_other_categories": "Il problema non rientra in altre categorie" + }, + "step_two": { + "step_2_of_4": "Fase 2 di 4", + "which_rules_are_being_violated": "Quali regole vengono violate?", + "select_all_that_apply": "Seleziona tutte le risposte pertinenti", + "i_just_don’t_like_it": "Non mi piace" + }, + "step_three": { + "step_3_of_4": "Fase 3 di 4", + "are_there_any_posts_that_back_up_this_report": "Ci sono post a sostegno di questa segnalazione?", + "select_all_that_apply": "Seleziona tutte le risposte pertinenti" + }, + "step_four": { + "step_4_of_4": "Fase 4 di 4", + "is_there_anything_else_we_should_know": "C'è altro che dovremmo sapere?" + }, + "step_final": { + "dont_want_to_see_this": "Non vuoi vedere questo?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quando vedi qualcosa che non ti piace su Mastodon, puoi rimuovere la persona dalla tua esperienza.", + "unfollow": "Smetti di seguire", + "unfollowed": "Non seguito", + "unfollow_user": "Smetti di seguire %s", + "mute_user": "Silenzia %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati.", + "block_user": "Blocca %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati.", + "while_we_review_this_you_can_take_action_against_user": "Mentre controlliamo, puoi agire contro %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Chiudi anteprima", + "show_next": "Mostra successivo", + "show_previous": "Mostra precedente" + } + }, + "account_list": { + "tab_bar_hint": "Profilo corrente selezionato: %s. Doppio tocco e tieni premuto per mostrare il cambio account", + "dismiss_account_switcher": "Ignora il cambio account", + "add_account": "Aggiungi account" + }, + "wizard": { + "new_in_mastodon": "Nuovo su Mastodon", + "multiple_account_switch_intro_description": "Passa tra più account tenendo premuto il pulsante del profilo.", + "accessibility_hint": "Doppio tocco per eliminare questa procedura guidata" + } + } +} \ No newline at end of file From 55fcbb47c38c039706f76e607ab87314173c50f7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:49 +0200 Subject: [PATCH 239/571] New translations app.json (Danish) --- .../StringsConvertor/input/da.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/da.lproj/app.json diff --git a/Localization/StringsConvertor/input/da.lproj/app.json b/Localization/StringsConvertor/input/da.lproj/app.json new file mode 100644 index 000000000..32eaea9d2 --- /dev/null +++ b/Localization/StringsConvertor/input/da.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Please try again.", + "please_try_again_later": "Please try again later." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 0b0e28c6d2662dede373da9a4a1540c7afaf129c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:50 +0200 Subject: [PATCH 240/571] New translations app.json (Russian) --- .../StringsConvertor/input/ru.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ru.lproj/app.json diff --git a/Localization/StringsConvertor/input/ru.lproj/app.json b/Localization/StringsConvertor/input/ru.lproj/app.json new file mode 100644 index 000000000..7ef4c705a --- /dev/null +++ b/Localization/StringsConvertor/input/ru.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Пожалуйста, попробуйте ещё раз.", + "please_try_again_later": "Пожалуйста, попробуйте позже." + }, + "sign_up_failure": { + "title": "Ошибка регистрации" + }, + "server_error": { + "title": "Ошибка сервера" + }, + "vote_failure": { + "title": "Не удалось проголосовать", + "poll_ended": "Опрос уже завершился" + }, + "discard_post_content": { + "title": "Удалить черновик", + "message": "Вы действительно хотите удалить набранное содержимое поста?" + }, + "publish_post_failure": { + "title": "Ошибка публикации", + "message": "Не удалось опубликовать пост.\nПожалуйста, проверьте подключение к интернету.", + "attachments_message": { + "video_attach_with_photo": "Невозможно прикрепить видео к посту, содержащему изображения.", + "more_than_one_video": "Невозможно прикрепить более одного видео." + } + }, + "edit_profile_failure": { + "title": "Ошибка изменения профиля", + "message": "Не удаётся изменить профиль. Пожалуйста, попробуйте ещё раз." + }, + "sign_out": { + "title": "Выход", + "message": "Вы действительно хотите выйти из учётной записи?", + "confirm": "Выйти" + }, + "block_domain": { + "title": "Вы очень точно уверены, что хотите полностью заблокировать %s? В большинстве случаев пары блокировок и добавлений в игнорируемые вполне достаточно. Вы перестанете видеть содержимое с этого узла и все ваши подписчики оттуда будут убраны.", + "block_entire_domain": "Заблокировать узел" + }, + "save_photo_failure": { + "title": "Ошибка сохранения изображения", + "message": "Пожалуйста, предоставьте доступ к библиотеке фотографий, чтобы сохранить это изображение." + }, + "delete_post": { + "title": "Вы уверены, что хотите удалить этот пост?", + "message": "Вы уверены, что хотите удалить этот пост?" + }, + "clean_cache": { + "title": "Очистка кэша", + "message": "Успешно очищено %s кэша." + } + }, + "controls": { + "actions": { + "back": "Назад", + "next": "Далее", + "previous": "Прошлые", + "open": "Открыть", + "add": "Добавить", + "remove": "Убрать", + "edit": "Изменить", + "save": "Сохранить", + "ok": "ОК", + "done": "Готово", + "confirm": "Подтвердить", + "continue": "Продолжить", + "compose": "Написать", + "cancel": "Отмена", + "discard": "Отмена", + "try_again": "Попробовать снова", + "take_photo": "Сделать фото", + "save_photo": "Сохранить изображение", + "copy_photo": "Скопировать изображение", + "sign_in": "Войти", + "sign_up": "Зарегистрироваться", + "see_more": "Ещё", + "preview": "Предпросмотр", + "share": "Поделиться", + "share_user": "Поделиться %s", + "share_post": "Поделиться постом", + "open_in_safari": "Открыть в Safari", + "open_in_browser": "Открыть в браузере", + "find_people": "Подпишитесь на людей", + "manually_search": "Найти вручную", + "skip": "Пропустить", + "reply": "Ответить", + "report_user": "Пожаловаться на %s", + "block_domain": "Заблокировать %s", + "unblock_domain": "Разблокировать %s", + "settings": "Настройки", + "delete": "Удалить" + }, + "tabs": { + "home": "Главная", + "search": "Поиск", + "notification": "Уведомление", + "profile": "Профиль" + }, + "keyboard": { + "common": { + "switch_to_tab": "Переключиться на %s", + "compose_new_post": "Создать новый пост", + "show_favorites": "Показать избранные", + "open_settings": "Открыть настройки" + }, + "timeline": { + "previous_status": "Прошлый пост", + "next_status": "Следующий пост", + "open_status": "Открыть пост", + "open_author_profile": "Открыть профиль автора", + "open_reblogger_profile": "Открыть профиль продвинувшего", + "reply_status": "Ответить на пост", + "toggle_reblog": "Продвинуть или убрать продвижение", + "toggle_favorite": "Добавить или убрать из избранного", + "toggle_content_warning": "Раскрыть или спрятать содержимое", + "preview_image": "Предпросмотр изображения" + }, + "segmented_control": { + "previous_section": "Предыдущий раздел", + "next_section": "Следующий раздел" + } + }, + "status": { + "user_reblogged": "%s продвинул(а)", + "user_replied_to": "Ответил(а) %s", + "show_post": "Показать пост", + "show_user_profile": "Показать профиль пользователя", + "content_warning": "Предупреждение о содержании", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Нажмите в любом месте, чтобы показать", + "tap_to_reveal": "Нажмите, чтобы показать", + "poll": { + "vote": "Проголосовать", + "closed": "Завершён" + }, + "actions": { + "reply": "Ответить", + "reblog": "Продвинуть", + "unreblog": "Убрать продвижение", + "favorite": "Добавить в избранное", + "unfavorite": "Убрать из избранного", + "menu": "Меню", + "hide": "Скрыть", + "show_image": "Показать изображение", + "show_gif": "Показать GIF", + "show_video_player": "Показать видеопроигрыватель", + "tap_then_hold_to_show_menu": "Нажмите и удерживайте, чтобы показать меню" + }, + "tag": { + "url": "Ссылка", + "mention": "Упоминание", + "link": "Ссылка", + "hashtag": "Хэштег", + "email": "E-mail", + "emoji": "Эмодзи" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Подписаться", + "following": "В подписках", + "request": "Отправить запрос", + "pending": "Отправлен", + "block": "Заблокировать", + "block_user": "Заблокировать %s", + "block_domain": "Заблокировать %s", + "unblock": "Разблокировать", + "unblock_user": "Разблокировать %s", + "blocked": "В заблокированных", + "mute": "Игнорировать", + "mute_user": "Игнорировать %s", + "unmute": "Убрать из игнорируемых", + "unmute_user": "Убрать %s из игнорируемых", + "muted": "В игнорируемых", + "edit_info": "Изменить" + }, + "timeline": { + "filtered": "Отфильтровано", + "timestamp": { + "now": "Только что" + }, + "loader": { + "load_missing_posts": "Загрузить недостающие посты", + "loading_missing_posts": "Загрузка недостающих постов...", + "show_more_replies": "Показать больше ответов" + }, + "header": { + "no_status_found": "Пост не найден", + "blocking_warning": "Вы не можете просматривать\nпрофиль этого пользователя\nпока не разблокируете его.\n\nПримерно так выглядит\nваш профиль для него.", + "user_blocking_warning": "Вы не можете просматривать\nпрофиль %s\nпока не разблокируете его/её.\n\nПримерно так выглядит\nваш профиль для него/неё.", + "blocked_warning": "Вы не можете просматривать\nпрофиль этого пользователя\nпока он не разблокирует вас.", + "user_blocked_warning": "Вы не можете просматривать\nпрофиль %s\nпока он(а) не разблокирует вас.", + "suspended_warning": "Этот пользователь был заморожен.", + "user_suspended_warning": "Учётная запись %s заморожена." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Социальная сеть\nпод вашим контролем.", + "get_started": "Присоединиться", + "log_in": "Вход" + }, + "server_picker": { + "title": "Выберите сервер,\nлюбой сервер.", + "subtitle": "Выберите сообщество на основе своих интересов, региона или общей тематики.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "Все", + "all_accessiblity_description": "Категория: все", + "academia": "академия", + "activism": "активизм", + "food": "еда", + "furry": "фурри", + "games": "игры", + "general": "общей тематики", + "journalism": "журнализм", + "lgbt": "ЛГБТКИА+", + "regional": "региональные", + "art": "арт", + "music": "музыка", + "tech": "технологии" + }, + "see_less": "Показать меньше", + "see_more": "Ещё" + }, + "label": { + "language": "ЯЗЫК", + "users": "ПОЛЬЗОВАТЕЛИ", + "category": "КАТЕГОРИЯ" + }, + "input": { + "placeholder": "Найдите сервер или присоединитесь к своему...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Ищем доступные сервера...", + "bad_network": "Что-то пошло не так при загрузке данных. Проверьте подключение к интернету.", + "no_results": "Нет результатов" + } + }, + "register": { + "title": "Расскажите нам о себе.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Удалить" + }, + "username": { + "placeholder": "имя пользователя", + "duplicate_prompt": "Это имя пользователя занято." + }, + "display_name": { + "placeholder": "отображаемое имя" + }, + "email": { + "placeholder": "e-mail" + }, + "password": { + "placeholder": "пароль", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Пароль должен содержать не менее восьми символов" + }, + "invite": { + "registration_user_invite_request": "Почему вы хотите присоединиться?" + } + }, + "error": { + "item": { + "username": "Имя пользователя", + "email": "E-mail", + "password": "Пароль", + "agreement": "Соглашение", + "locale": "Язык", + "reason": "Причина" + }, + "reason": { + "blocked": "%s содержит запрещённый e-mail сервис", + "unreachable": "%s не существует", + "taken": "%s уже используется", + "reserved": "%s является зарезервированным ключевым словом", + "accepted": "%s должно быть принято", + "blank": "Поле «%s» обязательно", + "invalid": "Недопустимое значение поля «%s»", + "too_long": "%s слишком длинный", + "too_short": "%s слишком короткий", + "inclusion": "Неподдерживаемое значение «%s»" + }, + "special": { + "username_invalid": "Имя пользователя может содержать только латинские буквы, цифры и подчёркивания", + "username_too_long": "Слишком длинное имя пользователя (не может быть длиннее 30 символов)", + "email_invalid": "Недопустимый e-mail адрес", + "password_too_short": "Пароль слишком короткий (должен содержать не менее 8 символов)" + } + } + }, + "server_rules": { + "title": "Несколько основных правил.", + "subtitle": "Эти правила установлены администраторами %s.", + "prompt": "Продолжая, вы соглашаетесь с условиям использования и политикой конфиденциальности %s.", + "terms_of_service": "условия использования", + "privacy_policy": "политика конфиденциальности", + "button": { + "confirm": "Принимаю" + } + }, + "confirm_email": { + "title": "И ещё кое-что.", + "subtitle": "Мы только что отправили письмо на\n%s.\nНажмите на ссылку в нём, чтобы\nподтвердить свою учётную запись.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Открыть приложение почты", + "resend": "Отправить заново" + }, + "dont_receive_email": { + "title": "Проверьте свой e-mail адрес", + "description": "Проверьте, правильно ли указан ваш e-mail адрес, а также папку «спам», если ещё не сделали этого.", + "resend_email": "Отправить ещё раз" + }, + "open_email_app": { + "title": "Проверьте вашу почту.", + "description": "Мы только что отправили вам e-mail. Проверьте спам, если не нашли его.", + "mail": "Почта", + "open_email_client": "Открыть почтовый клиент" + } + }, + "home_timeline": { + "title": "Главная", + "navigation_bar_state": { + "offline": "Не в сети", + "new_posts": "Показать новые", + "published": "Опубликовано!", + "Publishing": "Публикуем пост...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Подпишитесь на людей", + "follow_explain": "Посты людей, на которых вы подписались, будут видны на главной странице." + }, + "compose": { + "title": { + "new_post": "Новый пост", + "new_reply": "Новый ответ" + }, + "media_selection": { + "camera": "Сделать фото", + "photo_library": "Медиатека", + "browse": "Выбрать" + }, + "content_input_placeholder": "Напишите то, о чём думаете", + "compose_action": "Опубликовать", + "replying_to_user": "ответ %s", + "attachment": { + "photo": "изображение", + "video": "видео", + "attachment_broken": "Это %s повреждено и не может\nбыть отправлено в Mastodon.", + "description_photo": "Опишите фото для людей с нарушениями зрения...", + "description_video": "Опишите видео для людей с нарушениями зрения..." + }, + "poll": { + "duration_time": "Продолжительность: %s", + "thirty_minutes": "30 минут", + "one_hour": "1 час", + "six_hours": "6 часов", + "one_day": "1 день", + "three_days": "3 дня", + "seven_days": "7 дней", + "option_number": "Вариант %ld" + }, + "content_warning": { + "placeholder": "Напишите предупреждение здесь..." + }, + "visibility": { + "public": "Публичный", + "unlisted": "Скрытый", + "private": "Для подписчиков", + "direct": "Только для упомянутых людей" + }, + "auto_complete": { + "space_to_add": "Пробел, чтобы добавить" + }, + "accessibility": { + "append_attachment": "Прикрепить файл", + "append_poll": "Добавить опрос", + "remove_poll": "Убрать опрос", + "custom_emoji_picker": "Меню пользовательских эмодзи", + "enable_content_warning": "Добавить предупреждение о содержании", + "disable_content_warning": "Убрать предупреждение о содержании", + "post_visibility_menu": "Меню видимости поста" + }, + "keyboard": { + "discard_post": "Удалить пост", + "publish_post": "Опубликовать пост", + "toggle_poll": "Добавить/убрать опрос", + "toggle_content_warning": "Добавить/убрать предупреждение о содержании", + "append_attachment_entry": "Прикрепить файл — %s", + "select_visibility_entry": "Выбрать видимость — %s" + } + }, + "profile": { + "dashboard": { + "posts": "посты", + "following": "подписки", + "followers": "подписчики" + }, + "fields": { + "add_row": "Добавить строку", + "placeholder": { + "label": "Ярлык", + "content": "Содержимое" + } + }, + "segmented_control": { + "posts": "Посты", + "replies": "Ответы", + "posts_and_replies": "Посты и ответы", + "media": "Медиа", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Убрать из игнорируемых", + "message": "Убрать %s из игнорируемых?" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Поиск", + "search_bar": { + "placeholder": "Поиск хэштегов и пользователей", + "cancel": "Отмена" + }, + "recommend": { + "button_text": "Посмотреть все", + "hash_tag": { + "title": "Популярно в Mastodon", + "description": "Хэштеги, которым сейчас уделяется немного внимания", + "people_talking": "%s людей разговаривают" + }, + "accounts": { + "title": "Вам может понравится", + "description": "Возможно, вы захотите подписаться на эти профили", + "follow": "Подписаться" + } + }, + "searching": { + "segment": { + "all": "Всё", + "people": "Люди", + "hashtags": "Хэштеги", + "posts": "Посты" + }, + "empty_state": { + "no_results": "Нет результатов" + }, + "recent_search": "Последние запросы", + "clear": "Очистить" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Сообщество", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Ваше избранное" + }, + "notification": { + "title": { + "Everything": "Все", + "Mentions": "Упоминания" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Показать все", + "show_mentions": "Показать упоминания" + } + }, + "thread": { + "back_title": "Пост", + "title": "Пост %s" + }, + "settings": { + "title": "Настройки", + "section": { + "appearance": { + "title": "Внешний вид", + "automatic": "Автоматически", + "light": "Светлая тема", + "dark": "Тёмная тема" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Уведомления", + "favorites": "Добавляет мой пост в избранное", + "follows": "Подписался на меня", + "boosts": "Продвигает мой пост", + "mentions": "Упоминает меня", + "trigger": { + "anyone": "кто угодно", + "follower": "мой подписчик", + "follow": "любой, на кого я подписан(а)", + "noone": "никто", + "title": "Уведомлять меня, когда" + } + }, + "preference": { + "title": "Предпочтения", + "true_black_dark_mode": "Полноценно чёрный режим", + "disable_avatar_animation": "Отключить анимацию аватарок", + "disable_emoji_animation": "Отключить анимацию эмодзи", + "using_default_browser": "Использовать браузер по умолчанию для открытия ссылок", + "open_links_in_mastodon": "Открывать ссылки в Мастодоне" + }, + "boring_zone": { + "title": "Зона скукотищи", + "account_settings": "Настройки аккаунта", + "terms": "Условия использования", + "privacy": "Политика конфиденциальности" + }, + "spicy_zone": { + "title": "Пикантная зона", + "clear": "Очистить кэш медиа", + "signout": "Выйти из учётной записи" + } + }, + "footer": { + "mastodon_description": "Mastodon — проект с открытым исходным кодом. Сообщить о проблемах можно на GitHub по адресу %s (%s)" + }, + "keyboard": { + "close_settings_window": "Закрыть окно настроек" + } + }, + "report": { + "title_report": "Жалоба", + "title": "Пожаловаться на %s", + "step1": "Шаг 1 из 2", + "step2": "Шаг 2 из 2", + "content1": "Есть ли другие сообщения, которые вы хотите добавить в отчёт?", + "content2": "Есть ли что-то, что модераторы должны знать об этом сообщении?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Пожаловаться", + "skip_to_send": "Отправить без комментария", + "text_placeholder": "Дополнительные комментарии", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "Пока мы рассматриваем его, вот действия, которые вы можете предпринять лично против %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Закрыть предпросмотр", + "show_next": "Следующее изображение", + "show_previous": "Предыдущее изображение" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "Новое в Мастодоне", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 8aa8310abb2bd2574712011f1c697bc506368603 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:51 +0200 Subject: [PATCH 241/571] New translations app.json (Chinese Simplified) --- .../input/zh-Hans.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hans.lproj/app.json diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json new file mode 100644 index 000000000..feb294d9a --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "请重试。", + "please_try_again_later": "请稍后重试。" + }, + "sign_up_failure": { + "title": "注册失败" + }, + "server_error": { + "title": "服务器错误" + }, + "vote_failure": { + "title": "投票失败", + "poll_ended": "投票已结束" + }, + "discard_post_content": { + "title": "丢弃草案", + "message": "确认要丢弃正在编辑的内容" + }, + "publish_post_failure": { + "title": "发送失败", + "message": "帖子发送失败。\n请检查你的网络连接。", + "attachments_message": { + "video_attach_with_photo": "无法在帖子中同时插入视频和图片。", + "more_than_one_video": "最多添加一个视频。" + } + }, + "edit_profile_failure": { + "title": "编辑个人资料出现错误", + "message": "无法编辑个人资料,请重试。" + }, + "sign_out": { + "title": "退出", + "message": "您确定要退出吗?", + "confirm": "退出" + }, + "block_domain": { + "title": "你真的确定要屏蔽所有来自 %s 的内容吗?多数情况下,屏蔽或隐藏几个特定的用户就已经足够了。来自该网站的内容将不再出现在你的任何公共时间轴或通知列表里。来自该网站的关注者将会被移除。", + "block_entire_domain": "屏蔽域名" + }, + "save_photo_failure": { + "title": "保存照片失败", + "message": "请启用照片库访问权限以保存照片。" + }, + "delete_post": { + "title": "确定要删除这条消息吗?", + "message": "确定要删除这个帖子吗?" + }, + "clean_cache": { + "title": "清除缓存", + "message": "成功清除 %s 缓存。" + } + }, + "controls": { + "actions": { + "back": "返回", + "next": "下一个", + "previous": "上一个", + "open": "打开", + "add": "添加", + "remove": "删除", + "edit": "编辑", + "save": "保存", + "ok": "好的", + "done": "完成", + "confirm": "确认", + "continue": "继续", + "compose": "撰写", + "cancel": "取消", + "discard": "放弃", + "try_again": "再试一次", + "take_photo": "拍照", + "save_photo": "保存照片", + "copy_photo": "拷贝照片", + "sign_in": "登录", + "sign_up": "注册", + "see_more": "查看更多", + "preview": "预览", + "share": "分享", + "share_user": "分享 %s", + "share_post": "分享帖子", + "open_in_safari": "在 Safari 中打开", + "open_in_browser": "在浏览器中打开", + "find_people": "查看推荐关注的用户", + "manually_search": "手动搜索用户", + "skip": "跳过", + "reply": "回复", + "report_user": "举报 %s", + "block_domain": "屏蔽 %s", + "unblock_domain": "解除屏蔽 %s", + "settings": "设置", + "delete": "删除" + }, + "tabs": { + "home": "主页", + "search": "搜索", + "notification": "通知", + "profile": "个人资料" + }, + "keyboard": { + "common": { + "switch_to_tab": "切换到 %s", + "compose_new_post": "撰写新帖子", + "show_favorites": "显示喜欢", + "open_settings": "打开设置" + }, + "timeline": { + "previous_status": "上一个帖子", + "next_status": "下一个帖子", + "open_status": "打开帖子", + "open_author_profile": "打开作者的个人资料", + "open_reblogger_profile": "打开转发者的个人资料", + "reply_status": "回复此帖子", + "toggle_reblog": "转发此帖子", + "toggle_favorite": "喜欢此帖子", + "toggle_content_warning": "启用或关闭内容警告", + "preview_image": "预览照片" + }, + "segmented_control": { + "previous_section": "上一节", + "next_section": "下一节" + } + }, + "status": { + "user_reblogged": "%s 转发", + "user_replied_to": "回复给 %s", + "show_post": "显示帖子", + "show_user_profile": "查看用户个人资料", + "content_warning": "内容警告", + "sensitive_content": "敏感内容", + "media_content_warning": "点击任意位置显示", + "tap_to_reveal": "点击以显示", + "poll": { + "vote": "投票", + "closed": "已关闭" + }, + "actions": { + "reply": "回复", + "reblog": "转发", + "unreblog": "取消转发", + "favorite": "喜欢", + "unfavorite": "取消喜欢", + "menu": "菜单", + "hide": "隐藏", + "show_image": "显示图片", + "show_gif": "显示 GIF", + "show_video_player": "显示视频播放器", + "tap_then_hold_to_show_menu": "长按以显示菜单" + }, + "tag": { + "url": "URL", + "mention": "提及", + "link": "链接", + "hashtag": "标签", + "email": "电子邮箱", + "emoji": "表情" + }, + "visibility": { + "unlisted": "任何人都可以看到这个帖子,但不会在公开的时间线中显示。", + "private": "只有作者的关注者才能看到此帖子。", + "private_from_me": "只有我的关注者才能看到此帖子。", + "direct": "只有提到的用户才能看到此帖子。" + } + }, + "friendship": { + "follow": "关注", + "following": "正在关注", + "request": "请求", + "pending": "待确认", + "block": "屏蔽", + "block_user": "屏蔽 %s", + "block_domain": "屏蔽 %s", + "unblock": "解除屏蔽", + "unblock_user": "解除屏蔽 %s", + "blocked": "已屏蔽", + "mute": "静音", + "mute_user": "静音 %s", + "unmute": "取消静音", + "unmute_user": "取消静音 %s", + "muted": "已静音", + "edit_info": "编辑" + }, + "timeline": { + "filtered": "已过滤", + "timestamp": { + "now": "现在" + }, + "loader": { + "load_missing_posts": "加载帖子", + "loading_missing_posts": "正在加载帖子...", + "show_more_replies": "显示更多回复" + }, + "header": { + "no_status_found": "没有找到帖子", + "blocking_warning": "您无法查看此用户的个人资料\n直到您解除屏蔽他们。\n您的个人资料看起来对他们来说是这样的。", + "user_blocking_warning": "您无法查看 %s 的个人资料\n直到您解除屏蔽他们。\n您的个人资料看起来对他们来说是这样的。", + "blocked_warning": "您不能查看此用户的个人资料\n直到他们解除屏蔽。", + "user_blocked_warning": "您不能查看 %s 的个人资料\n直到他们解除屏蔽。", + "suspended_warning": "此用户已被封禁。", + "user_suspended_warning": "%s 已被封禁。" + } + } + } + }, + "scene": { + "welcome": { + "slogan": "社交网络\n回到你的手中。", + "get_started": "开始使用", + "log_in": "登录" + }, + "server_picker": { + "title": "挑选一个服务器,\n任意服务器。", + "subtitle": "根据你的兴趣、区域或一般目的选择一个社区。", + "subtitle_extend": "根据你的兴趣、区域或一般目的选择一个社区。每个社区都由完全独立的组织或个人管理。", + "button": { + "category": { + "all": "全部", + "all_accessiblity_description": "类别:全部", + "academia": "学术", + "activism": "行动主义", + "food": "美食", + "furry": "兽迷", + "games": "游戏", + "general": "通用", + "journalism": "新闻", + "lgbt": "lgbt", + "regional": "地区", + "art": "艺术", + "music": "音乐", + "tech": "科技" + }, + "see_less": "隐藏", + "see_more": "更多" + }, + "label": { + "language": "语言", + "users": "用户", + "category": "类别" + }, + "input": { + "placeholder": "查找或加入你自己的服务器...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "正在查找可用的服务器...", + "bad_network": "出了些问题。请检查你的互联网连接", + "no_results": "无结果" + } + }, + "register": { + "title": "让我们在 %s 上开始", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "删除" + }, + "username": { + "placeholder": "用户名", + "duplicate_prompt": "此用户名已被使用" + }, + "display_name": { + "placeholder": "昵称" + }, + "email": { + "placeholder": "电子邮箱" + }, + "password": { + "placeholder": "密码", + "require": "您的密码至少需要:", + "character_limit": "8 个字符", + "accessibility": { + "checked": "已选中", + "unchecked": "未选中" + }, + "hint": "密码长度至少为 8 个字符" + }, + "invite": { + "registration_user_invite_request": "加入的理由是?" + } + }, + "error": { + "item": { + "username": "用户名", + "email": "电子邮箱", + "password": "密码", + "agreement": "协议", + "locale": "地区", + "reason": "原因" + }, + "reason": { + "blocked": "%s 包含一个不允许的电子邮件提供商", + "unreachable": "%s 似乎不存在", + "taken": "%s 已被使用", + "reserved": "%s 是一个保留的关键字", + "accepted": "%s 必须被接受", + "blank": "%s 为必需项", + "invalid": "%s 无效", + "too_long": "%s 长度过长", + "too_short": "%s 长度太短", + "inclusion": "%s 是不支持的值" + }, + "special": { + "username_invalid": "用户名只能包含字母数字和下划线字符", + "username_too_long": "用户名太长(不能超过 30 个字符)", + "email_invalid": "这不是一个有效的电子邮件地址", + "password_too_short": "密码太短(至少需要 8 个字符)" + } + } + }, + "server_rules": { + "title": "一些基本规则。", + "subtitle": "这些规则由 %s 的管理员设置。", + "prompt": "如果继续,你必须遵守 %s 的服务条款和隐私政策。", + "terms_of_service": "服务条款", + "privacy_policy": "隐私政策", + "button": { + "confirm": "我同意" + } + }, + "confirm_email": { + "title": "最后一件事。", + "subtitle": "点击我们发送给您的链接来验证您的账户。", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "打开电子邮件应用", + "resend": "重新发送" + }, + "dont_receive_email": { + "title": "请检查你的邮箱。", + "description": "检查您的电子邮件地址是否正确,同时请检查你的垃圾箱。", + "resend_email": "重新发送邮件" + }, + "open_email_app": { + "title": "检查你的邮箱", + "description": "我们刚刚向你发送了一封电子邮件。如果未收到,请检查你的垃圾箱。", + "mail": "邮件", + "open_email_client": "打开邮件客户端" + } + }, + "home_timeline": { + "title": "主页", + "navigation_bar_state": { + "offline": "离线", + "new_posts": "查看新帖子", + "published": "已发送", + "Publishing": "正在发送...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "查看推荐关注的用户", + "follow_explain": "当你关注某个人时,你将会在主页看到他们的帖子。" + }, + "compose": { + "title": { + "new_post": "新帖子", + "new_reply": "新回复" + }, + "media_selection": { + "camera": "拍照", + "photo_library": "照片库", + "browse": "浏览" + }, + "content_input_placeholder": "写下你的想法", + "compose_action": "发送", + "replying_to_user": "回复给 %s", + "attachment": { + "photo": "照片", + "video": "视频", + "attachment_broken": "%s已损坏\n无法上传到 Mastodon", + "description_photo": "为视觉障碍人士添加照片的文字说明...", + "description_video": "为视觉障碍人士添加视频的文字说明..." + }, + "poll": { + "duration_time": "时长:%s", + "thirty_minutes": "30 分钟", + "one_hour": "1 小时", + "six_hours": "6 小时", + "one_day": "1 天", + "three_days": "3 天", + "seven_days": "7 天", + "option_number": "选项 %ld" + }, + "content_warning": { + "placeholder": "在这里写下内容的警告消息..." + }, + "visibility": { + "public": "公开", + "unlisted": "不公开", + "private": "仅关注者", + "direct": "仅我提到的人" + }, + "auto_complete": { + "space_to_add": "输入空格键入" + }, + "accessibility": { + "append_attachment": "添加附件", + "append_poll": "添加投票", + "remove_poll": "移除投票", + "custom_emoji_picker": "自定义表情选择器", + "enable_content_warning": "启用内容警告", + "disable_content_warning": "关闭内容警告", + "post_visibility_menu": "帖子可见性" + }, + "keyboard": { + "discard_post": "丢弃帖子", + "publish_post": "发送帖子", + "toggle_poll": "启用或关闭投票", + "toggle_content_warning": "启用或关闭内容警告", + "append_attachment_entry": "添加附件 - %s", + "select_visibility_entry": "选择可见性 - %s" + } + }, + "profile": { + "dashboard": { + "posts": "帖子", + "following": "正在关注", + "followers": "关注者" + }, + "fields": { + "add_row": "添加", + "placeholder": { + "label": "标签", + "content": "内容" + } + }, + "segmented_control": { + "posts": "帖子", + "replies": "回复", + "posts_and_replies": "帖子与回复", + "media": "媒体", + "about": "关于" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "静音账户", + "message": "确认静音 %s" + }, + "confirm_unmute_user": { + "title": "取消静音账户", + "message": "确认取消静音 %s" + }, + "confirm_block_user": { + "title": "屏蔽帐户", + "message": "确认屏蔽 %s" + }, + "confirm_unblock_user": { + "title": "解除屏蔽帐户", + "message": "确认取消屏蔽 %s" + } + }, + "accessibility": { + "show_avatar_image": "显示头像", + "edit_avatar_image": "编辑头像", + "show_banner_image": "显示顶部横幅图片", + "double_tap_to_open_the_list": "双击打开列表" + } + }, + "follower": { + "footer": "不会显示来自其它服务器的关注者" + }, + "following": { + "footer": "不会显示来自其它服务器的关注" + }, + "search": { + "title": "搜索", + "search_bar": { + "placeholder": "搜索标签和用户", + "cancel": "取消" + }, + "recommend": { + "button_text": "查看全部", + "hash_tag": { + "title": "在 Mastodon 上的趋势", + "description": "大家感兴趣的标签", + "people_talking": "%s 人正在讨论" + }, + "accounts": { + "title": "你可能感兴趣的用户", + "description": "你可能会喜欢关注这些用户", + "follow": "关注" + } + }, + "searching": { + "segment": { + "all": "全部", + "people": "用户", + "hashtags": "标签", + "posts": "帖子" + }, + "empty_state": { + "no_results": "无结果" + }, + "recent_search": "最近搜索", + "clear": "清除" + } + }, + "discovery": { + "tabs": { + "posts": "嘟文", + "hashtags": "话题标签", + "news": "最新消息", + "community": "社区", + "for_you": "为你推荐" + }, + "intro": "这些嘟文在你的长毛象小宇宙中备受关注。" + }, + "favorite": { + "title": "你的喜欢" + }, + "notification": { + "title": { + "Everything": "全部", + "Mentions": "提及" + }, + "notification_description": { + "followed_you": "关注了你", + "favorited_your_post": "喜欢了你的帖子", + "reblogged_your_post": "转发了你的帖子", + "mentioned_you": "提及了你", + "request_to_follow_you": "关注请求", + "poll_has_ended": "投票已结束" + }, + "keyobard": { + "show_everything": "显示全部", + "show_mentions": "显示提及" + } + }, + "thread": { + "back_title": "帖子", + "title": "来自 %s 的帖子" + }, + "settings": { + "title": "设置", + "section": { + "appearance": { + "title": "外观", + "automatic": "自动", + "light": "浅色", + "dark": "深色" + }, + "look_and_feel": { + "title": "外观和风格", + "use_system": "跟随系统", + "really_dark": "暗色", + "sorta_dark": "深色", + "light": "浅色" + }, + "notifications": { + "title": "通知", + "favorites": "喜欢我的帖子", + "follows": "关注我", + "boosts": "转发我的帖子", + "mentions": "提及我", + "trigger": { + "anyone": "任何人", + "follower": "关注者", + "follow": "我关注的", + "noone": "没有人", + "title": "提示通知来自" + } + }, + "preference": { + "title": "偏好", + "true_black_dark_mode": "纯黑模式", + "disable_avatar_animation": "禁用动画头像", + "disable_emoji_animation": "禁用动画表情", + "using_default_browser": "使用默认浏览器打开链接", + "open_links_in_mastodon": "在 Mastodon 中打开链接" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "账号设置", + "terms": "服务条款", + "privacy": "隐私政策" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "清除图片缓存", + "signout": "退出" + } + }, + "footer": { + "mastodon_description": "Mastodon 是开源软件。欢迎前往 GitHub %s (%s) 贡献代码或反馈问题。" + }, + "keyboard": { + "close_settings_window": "关闭设置窗口" + } + }, + "report": { + "title_report": "举报", + "title": "举报 %s", + "step1": "步骤 1 / 2", + "step2": "步骤 2 / 2", + "content1": "是否有帖子需要举报?", + "content2": "是否有关于此举报的详细描述信息?", + "report_sent_title": "感谢提交举报,我们将会进行处理。", + "send": "发送举报", + "skip_to_send": "直接发送", + "text_placeholder": "输入或粘贴额外的注释", + "reported": "已报告", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "关闭预览", + "show_next": "显示下一个", + "show_previous": "显示前一个" + } + }, + "account_list": { + "tab_bar_hint": "当前账户:%s。 双击并按住来打开账户切换页面", + "dismiss_account_switcher": "关闭账户切换页面", + "add_account": "添加账户" + }, + "wizard": { + "new_in_mastodon": "新功能", + "multiple_account_switch_intro_description": "按住个人资料标签按钮,即可在多个账户之间进行切换。", + "accessibility_hint": "双击关闭此向导" + } + } +} \ No newline at end of file From d075588bae2ccaa8cb8b8850d625825c75d1b576 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:52 +0200 Subject: [PATCH 242/571] New translations app.json (Thai) --- .../StringsConvertor/input/th.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/th.lproj/app.json diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json new file mode 100644 index 000000000..58c4c1a32 --- /dev/null +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "โปรดลองอีกครั้ง", + "please_try_again_later": "โปรดลองอีกครั้งในภายหลัง" + }, + "sign_up_failure": { + "title": "การลงทะเบียนล้มเหลว" + }, + "server_error": { + "title": "ข้อผิดพลาดเซิร์ฟเวอร์" + }, + "vote_failure": { + "title": "การลงคะแนนล้มเหลว", + "poll_ended": "การสำรวจความคิดเห็นได้สิ้นสุดแล้ว" + }, + "discard_post_content": { + "title": "ละทิ้งแบบร่าง", + "message": "ยืนยันที่จะละทิ้งเนื้อหาโพสต์ที่เขียน" + }, + "publish_post_failure": { + "title": "การเผยแพร่ล้มเหลว", + "message": "ไม่สามารถเผยแพร่โพสต์\nโปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ", + "attachments_message": { + "video_attach_with_photo": "ไม่สามารถแนบวิดีโอกับโพสต์ที่มีภาพอยู่แล้ว", + "more_than_one_video": "ไม่สามารถแนบมากกว่าหนึ่งวิดีโอ" + } + }, + "edit_profile_failure": { + "title": "ข้อผิดพลาดการแก้ไขโปรไฟล์", + "message": "ไม่สามารถแก้ไขโปรไฟล์ โปรดลองอีกครั้ง" + }, + "sign_out": { + "title": "ลงชื่อออก", + "message": "คุณแน่ใจหรือไม่ว่าต้องการลงชื่อออก?", + "confirm": "ลงชื่อออก" + }, + "block_domain": { + "title": "คุณแน่ใจจริง ๆ หรือไม่ว่าต้องการปิดกั้นทั้ง %s? ในกรณีส่วนใหญ่ การปิดกั้นหรือการซ่อนแบบกำหนดเป้าหมายไม่กี่รายการนั้นเพียงพอและเป็นที่นิยม คุณจะไม่เห็นเนื้อหาจากโดเมนนั้นและจะเอาผู้ติดตามใดก็ตามของคุณจากโดเมนนั้นออก", + "block_entire_domain": "ปิดกั้นโดเมน" + }, + "save_photo_failure": { + "title": "การบันทึกรูปภาพล้มเหลว", + "message": "โปรดเปิดใช้งานสิทธิอนุญาตการเข้าถึงคลังรูปภาพเพื่อบันทึกรูปภาพ" + }, + "delete_post": { + "title": "ลบโพสต์", + "message": "คุณแน่ใจหรือไม่ว่าต้องการลบโพสต์นี้?" + }, + "clean_cache": { + "title": "ล้างแคช", + "message": "ล้างแคช %s สำเร็จ" + } + }, + "controls": { + "actions": { + "back": "ย้อนกลับ", + "next": "ถัดไป", + "previous": "ก่อนหน้า", + "open": "เปิด", + "add": "เพิ่ม", + "remove": "เอาออก", + "edit": "แก้ไข", + "save": "บันทึก", + "ok": "ตกลง", + "done": "เสร็จสิ้น", + "confirm": "ยืนยัน", + "continue": "ดำเนินการต่อ", + "compose": "เขียน", + "cancel": "ยกเลิก", + "discard": "ละทิ้ง", + "try_again": "ลองอีกครั้ง", + "take_photo": "ถ่ายรูป", + "save_photo": "บันทึกรูปภาพ", + "copy_photo": "คัดลอกรูปภาพ", + "sign_in": "ลงชื่อเข้า", + "sign_up": "ลงทะเบียน", + "see_more": "ดูเพิ่มเติม", + "preview": "แสดงตัวอย่าง", + "share": "แบ่งปัน", + "share_user": "แบ่งปัน %s", + "share_post": "แบ่งปันโพสต์", + "open_in_safari": "เปิดใน Safari", + "open_in_browser": "เปิดในเบราว์เซอร์", + "find_people": "ค้นหาผู้คนที่จะติดตาม", + "manually_search": "ค้นหาด้วยตนเองแทน", + "skip": "ข้าม", + "reply": "ตอบกลับ", + "report_user": "รายงาน %s", + "block_domain": "ปิดกั้น %s", + "unblock_domain": "เลิกปิดกั้น %s", + "settings": "การตั้งค่า", + "delete": "ลบ" + }, + "tabs": { + "home": "หน้าแรก", + "search": "ค้นหา", + "notification": "การแจ้งเตือน", + "profile": "โปรไฟล์" + }, + "keyboard": { + "common": { + "switch_to_tab": "สลับไปยัง %s", + "compose_new_post": "เขียนโพสต์ใหม่", + "show_favorites": "แสดงรายการโปรด", + "open_settings": "เปิดการตั้งค่า" + }, + "timeline": { + "previous_status": "โพสต์ก่อนหน้า", + "next_status": "โพสต์ถัดไป", + "open_status": "เปิดโพสต์", + "open_author_profile": "เปิดโปรไฟล์ของผู้สร้าง", + "open_reblogger_profile": "เปิดโปรไฟล์ของผู้ดัน", + "reply_status": "ตอบกลับโพสต์", + "toggle_reblog": "เปิด/ปิดการดันในโพสต์", + "toggle_favorite": "เปิด/ปิดรายการโปรดในโพสต์", + "toggle_content_warning": "เปิด/ปิดคำเตือนเนื้อหา", + "preview_image": "แสดงตัวอย่างภาพ" + }, + "segmented_control": { + "previous_section": "ส่วนก่อนหน้า", + "next_section": "ส่วนถัดไป" + } + }, + "status": { + "user_reblogged": "%s ได้ดัน", + "user_replied_to": "ตอบกลับ %s", + "show_post": "แสดงโพสต์", + "show_user_profile": "แสดงโปรไฟล์ผู้ใช้", + "content_warning": "คำเตือนเนื้อหา", + "sensitive_content": "เนื้อหาที่ละเอียดอ่อน", + "media_content_warning": "แตะที่ใดก็ตามเพื่อเปิดเผย", + "tap_to_reveal": "แตะเพื่อเปิดเผย", + "poll": { + "vote": "ลงคะแนน", + "closed": "ปิดแล้ว" + }, + "actions": { + "reply": "ตอบกลับ", + "reblog": "ดัน", + "unreblog": "เลิกทำการดัน", + "favorite": "ชื่นชอบ", + "unfavorite": "เลิกชื่นชอบ", + "menu": "เมนู", + "hide": "ซ่อน", + "show_image": "แสดงภาพ", + "show_gif": "แสดง GIF", + "show_video_player": "แสดงตัวเล่นวิดีโอ", + "tap_then_hold_to_show_menu": "แตะค้างไว้เพื่อแสดงเมนู" + }, + "tag": { + "url": "URL", + "mention": "กล่าวถึง", + "link": "ลิงก์", + "hashtag": "แฮชแท็ก", + "email": "อีเมล", + "emoji": "อีโมจิ" + }, + "visibility": { + "unlisted": "ทุกคนสามารถเห็นโพสต์นี้แต่ไม่แสดงในเส้นเวลาสาธารณะ", + "private": "เฉพาะผู้ติดตามของเขาเท่านั้นที่สามารถเห็นโพสต์นี้", + "private_from_me": "เฉพาะผู้ติดตามของฉันเท่านั้นที่สามารถเห็นโพสต์นี้", + "direct": "เฉพาะผู้ใช้ที่กล่าวถึงเท่านั้นที่สามารถเห็นโพสต์นี้" + } + }, + "friendship": { + "follow": "ติดตาม", + "following": "กำลังติดตาม", + "request": "ขอ", + "pending": "รอดำเนินการ", + "block": "ปิดกั้น", + "block_user": "ปิดกั้น %s", + "block_domain": "ปิดกั้น %s", + "unblock": "เลิกปิดกั้น", + "unblock_user": "เลิกปิดกั้น %s", + "blocked": "ปิดกั้นอยู่", + "mute": "ซ่อน", + "mute_user": "ซ่อน %s", + "unmute": "เลิกซ่อน", + "unmute_user": "เลิกซ่อน %s", + "muted": "ซ่อนอยู่", + "edit_info": "แก้ไขข้อมูล" + }, + "timeline": { + "filtered": "กรองอยู่", + "timestamp": { + "now": "ตอนนี้" + }, + "loader": { + "load_missing_posts": "โหลดโพสต์ที่ขาดหายไป", + "loading_missing_posts": "กำลังโหลดโพสต์ที่ขาดหายไป...", + "show_more_replies": "แสดงการตอบกลับเพิ่มเติม" + }, + "header": { + "no_status_found": "ไม่พบโพสต์", + "blocking_warning": "คุณไม่สามารถดูโปรไฟล์ของผู้ใช้นี้\nจนกว่าคุณจะเลิกปิดกั้นเขา\nโปรไฟล์ของคุณมีลักษณะเช่นนี้สำหรับเขา", + "user_blocking_warning": "คุณไม่สามารถดูโปรไฟล์ของ %s\nจนกว่าคุณจะเลิกปิดกั้นเขา\nโปรไฟล์ของคุณมีลักษณะเช่นนี้สำหรับเขา", + "blocked_warning": "คุณไม่สามารถดูโปรไฟล์ของผู้ใช้นี้\nจนกว่าเขาจะเลิกปิดกั้นคุณ", + "user_blocked_warning": "คุณไม่สามารถดูโปรไฟล์ของ %s\nจนกว่าเขาจะเลิกปิดกั้นคุณ", + "suspended_warning": "ผู้ใช้นี้ถูกระงับการใช้งาน", + "user_suspended_warning": "บัญชีของ %s ถูกระงับการใช้งาน" + } + } + } + }, + "scene": { + "welcome": { + "slogan": "ให้เครือข่ายสังคม\nกลับมาอยู่ในมือของคุณ", + "get_started": "เริ่มต้นใช้งาน", + "log_in": "เข้าสู่ระบบ" + }, + "server_picker": { + "title": "Mastodon ประกอบด้วยผู้ใช้ในเซิร์ฟเวอร์ต่าง ๆ", + "subtitle": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ", + "subtitle_extend": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละเซิร์ฟเวอร์ดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง", + "button": { + "category": { + "all": "ทั้งหมด", + "all_accessiblity_description": "หมวดหมู่: ทั้งหมด", + "academia": "สถาบันการศึกษา", + "activism": "กิจกรรมเพื่อการเปลี่ยนแปลง", + "food": "อาหาร", + "furry": "สัตว์ขนยาว", + "games": "เกม", + "general": "ทั่วไป", + "journalism": "วารสารศาสตร์", + "lgbt": "lgbt", + "regional": "ภูมิภาค", + "art": "ศิลปะ", + "music": "ดนตรี", + "tech": "เทคโนโลยี" + }, + "see_less": "ดูน้อยลง", + "see_more": "ดูเพิ่มเติม" + }, + "label": { + "language": "ภาษา", + "users": "ผู้ใช้", + "category": "หมวดหมู่" + }, + "input": { + "placeholder": "ค้นหาเซิร์ฟเวอร์", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", + "bad_network": "มีบางอย่างผิดพลาดขณะโหลดข้อมูล ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ", + "no_results": "ไม่มีผลลัพธ์" + } + }, + "register": { + "title": "มาตั้งค่าของคุณใน %s กันเลย", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "ลบ" + }, + "username": { + "placeholder": "ชื่อผู้ใช้", + "duplicate_prompt": "ชื่อผู้ใช้นี้ถูกใช้ไปแล้ว" + }, + "display_name": { + "placeholder": "ชื่อที่แสดง" + }, + "email": { + "placeholder": "อีเมล" + }, + "password": { + "placeholder": "รหัสผ่าน", + "require": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:", + "character_limit": "8 ตัวอักษร", + "accessibility": { + "checked": "กาเครื่องหมายแล้ว", + "unchecked": "ไม่ได้กาเครื่องหมาย" + }, + "hint": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อยแปดตัวอักษร" + }, + "invite": { + "registration_user_invite_request": "ทำไมคุณจึงต้องการเข้าร่วม?" + } + }, + "error": { + "item": { + "username": "ชื่อผู้ใช้", + "email": "อีเมล", + "password": "รหัสผ่าน", + "agreement": "ข้อตกลง", + "locale": "ตำแหน่งที่ตั้ง", + "reason": "เหตุผล" + }, + "reason": { + "blocked": "%s มีผู้ให้บริการอีเมลที่ไม่ได้รับอนุญาต", + "unreachable": "ดูเหมือนว่า %s จะไม่มีอยู่", + "taken": "%s ถูกใช้งานแล้ว", + "reserved": "%s เป็นคำสงวน", + "accepted": "ต้องยอมรับ %s", + "blank": "ต้องการ %s", + "invalid": "%s ไม่ถูกต้อง", + "too_long": "%s ยาวเกินไป", + "too_short": "%s สั้นเกินไป", + "inclusion": "%s ไม่ใช่ค่าที่รองรับ" + }, + "special": { + "username_invalid": "ชื่อผู้ใช้ต้องมีเฉพาะตัวอักษรและตัวเลขและขีดล่างเท่านั้น", + "username_too_long": "ชื่อผู้ใช้ยาวเกินไป (ไม่สามารถยาวเกิน 30 ตัวอักษร)", + "email_invalid": "นี่ไม่ใช่ที่อยู่อีเมลที่ถูกต้อง", + "password_too_short": "รหัสผ่านสั้นเกินไป (ต้องมีอย่างน้อย 8 ตัวอักษร)" + } + } + }, + "server_rules": { + "title": "กฎพื้นฐานบางประการ", + "subtitle": "มีการตั้งและบังคับใช้กฎเหล่านี้โดยผู้ควบคุมของ %s", + "prompt": "เมื่อคุณดำเนินการต่อ คุณอยู่ภายใต้เงื่อนไขการให้บริการและนโยบายความเป็นส่วนตัวสำหรับ %s", + "terms_of_service": "เงื่อนไขการให้บริการ", + "privacy_policy": "นโยบายความเป็นส่วนตัว", + "button": { + "confirm": "ฉันเห็นด้วย" + } + }, + "confirm_email": { + "title": "หนึ่งสิ่งสุดท้าย", + "subtitle": "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "เปิดแอปอีเมล", + "resend": "ส่งใหม่" + }, + "dont_receive_email": { + "title": "ตรวจสอบอีเมลของคุณ", + "description": "หากคุณยังไม่ได้รับอีเมล ตรวจสอบว่าที่อยู่อีเมลของคุณถูกต้อง รวมถึงโฟลเดอร์อีเมลขยะของคุณ", + "resend_email": "ส่งอีเมลใหม่" + }, + "open_email_app": { + "title": "ตรวจสอบกล่องขาเข้าของคุณ", + "description": "เราเพิ่งส่งอีเมลหาคุณ หากคุณยังไม่ได้รับอีเมล โปรดตรวจสอบโฟลเดอร์อีเมลขยะ", + "mail": "จดหมาย", + "open_email_client": "เปิดไคลเอ็นต์อีเมล" + } + }, + "home_timeline": { + "title": "หน้าแรก", + "navigation_bar_state": { + "offline": "ออฟไลน์", + "new_posts": "ดูโพสต์ใหม่", + "published": "เผยแพร่แล้ว!", + "Publishing": "กำลังเผยแพร่โพสต์...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "ค้นหาผู้คนที่จะติดตาม", + "follow_explain": "เมื่อคุณติดตามใครสักคน คุณจะเห็นโพสต์ของเขาในฟีดหน้าแรกของคุณ" + }, + "compose": { + "title": { + "new_post": "โพสต์ใหม่", + "new_reply": "การตอบกลับใหม่" + }, + "media_selection": { + "camera": "ถ่ายรูป", + "photo_library": "คลังรูปภาพ", + "browse": "เรียกดู" + }, + "content_input_placeholder": "พิมพ์หรือวางสิ่งที่คุณกำลังคิด", + "compose_action": "เผยแพร่", + "replying_to_user": "กำลังตอบกลับ %s", + "attachment": { + "photo": "รูปภาพ", + "video": "วิดีโอ", + "attachment_broken": "%s นี้เสียหายและไม่สามารถ\nอัปโหลดไปยัง Mastodon", + "description_photo": "อธิบายรูปภาพสำหรับผู้บกพร่องทางการมองเห็น...", + "description_video": "อธิบายวิดีโอสำหรับผู้บกพร่องทางการมองเห็น..." + }, + "poll": { + "duration_time": "ระยะเวลา: %s", + "thirty_minutes": "30 นาที", + "one_hour": "1 ชั่วโมง", + "six_hours": "6 ชั่วโมง", + "one_day": "1 วัน", + "three_days": "3 วัน", + "seven_days": "7 วัน", + "option_number": "ตัวเลือก %ld" + }, + "content_warning": { + "placeholder": "เขียนคำเตือนที่ถูกต้องที่นี่..." + }, + "visibility": { + "public": "สาธารณะ", + "unlisted": "ไม่อยู่ในรายการ", + "private": "ผู้ติดตามเท่านั้น", + "direct": "เฉพาะผู้คนที่ฉันกล่าวถึงเท่านั้น" + }, + "auto_complete": { + "space_to_add": "เว้นวรรคเพื่อเพิ่ม" + }, + "accessibility": { + "append_attachment": "เพิ่มไฟล์แนบ", + "append_poll": "เพิ่มการสำรวจความคิดเห็น", + "remove_poll": "เอาการสำรวจความคิดเห็นออก", + "custom_emoji_picker": "ตัวเลือกอีโมจิที่กำหนดเอง", + "enable_content_warning": "เปิดใช้งานคำเตือนเนื้อหา", + "disable_content_warning": "ปิดใช้งานคำเตือนเนื้อหา", + "post_visibility_menu": "เมนูการมองเห็นโพสต์" + }, + "keyboard": { + "discard_post": "ละทิ้งโพสต์", + "publish_post": "เผยแพร่โพสต์", + "toggle_poll": "เปิด/ปิดการสำรวจความคิดเห็น", + "toggle_content_warning": "เปิด/ปิดคำเตือนเนื้อหา", + "append_attachment_entry": "เพิ่มไฟล์แนบ - %s", + "select_visibility_entry": "เลือกการมองเห็น - %s" + } + }, + "profile": { + "dashboard": { + "posts": "โพสต์", + "following": "กำลังติดตาม", + "followers": "ผู้ติดตาม" + }, + "fields": { + "add_row": "เพิ่มแถว", + "placeholder": { + "label": "ป้ายชื่อ", + "content": "เนื้อหา" + } + }, + "segmented_control": { + "posts": "โพสต์", + "replies": "การตอบกลับ", + "posts_and_replies": "โพสต์และการตอบกลับ", + "media": "สื่อ", + "about": "เกี่ยวกับ" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "ซ่อนบัญชี", + "message": "ยืนยันเพื่อซ่อน %s" + }, + "confirm_unmute_user": { + "title": "เลิกซ่อนบัญชี", + "message": "ยืนยันเพื่อเลิกซ่อน %s" + }, + "confirm_block_user": { + "title": "ปิดกั้นบัญชี", + "message": "ยืนยันเพื่อปิดกั้น %s" + }, + "confirm_unblock_user": { + "title": "เลิกปิดกั้นบัญชี", + "message": "ยืนยันเพื่อเลิกปิดกั้น %s" + } + }, + "accessibility": { + "show_avatar_image": "แสดงภาพประจำตัว", + "edit_avatar_image": "แก้ไขภาพประจำตัว", + "show_banner_image": "แสดงภาพแบนเนอร์", + "double_tap_to_open_the_list": "แตะสองครั้งเพื่อเปิดรายการ" + } + }, + "follower": { + "footer": "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ" + }, + "following": { + "footer": "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ" + }, + "search": { + "title": "ค้นหา", + "search_bar": { + "placeholder": "ค้นหาแฮชแท็กและผู้ใช้", + "cancel": "ยกเลิก" + }, + "recommend": { + "button_text": "ดูทั้งหมด", + "hash_tag": { + "title": "กำลังนิยมใน Mastodon", + "description": "แฮชแท็กที่กำลังได้รับความสนใจมาก", + "people_talking": "%s คนกำลังพูดคุย" + }, + "accounts": { + "title": "บัญชีที่คุณอาจชอบ", + "description": "คุณอาจต้องการติดตามบัญชีเหล่านี้", + "follow": "ติดตาม" + } + }, + "searching": { + "segment": { + "all": "ทั้งหมด", + "people": "ผู้คน", + "hashtags": "แฮชแท็ก", + "posts": "โพสต์" + }, + "empty_state": { + "no_results": "ไม่มีผลลัพธ์" + }, + "recent_search": "การค้นหาล่าสุด", + "clear": "ล้าง" + } + }, + "discovery": { + "tabs": { + "posts": "โพสต์", + "hashtags": "แฮชแท็ก", + "news": "ข่าว", + "community": "ชุมชน", + "for_you": "สำหรับคุณ" + }, + "intro": "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ" + }, + "favorite": { + "title": "รายการโปรดของคุณ" + }, + "notification": { + "title": { + "Everything": "ทุกอย่าง", + "Mentions": "การกล่าวถึง" + }, + "notification_description": { + "followed_you": "ได้ติดตามคุณ", + "favorited_your_post": "ได้ชื่นชอบโพสต์ของคุณ", + "reblogged_your_post": "ได้ดันโพสต์ของคุณ", + "mentioned_you": "ได้กล่าวถึงคุณ", + "request_to_follow_you": "ขอติดตามคุณ", + "poll_has_ended": "การสำรวจความคิดเห็นได้สิ้นสุดแล้ว" + }, + "keyobard": { + "show_everything": "แสดงทุกอย่าง", + "show_mentions": "แสดงการกล่าวถึง" + } + }, + "thread": { + "back_title": "โพสต์", + "title": "โพสต์จาก %s" + }, + "settings": { + "title": "การตั้งค่า", + "section": { + "appearance": { + "title": "ลักษณะที่ปรากฏ", + "automatic": "อัตโนมัติ", + "light": "สว่างเสมอ", + "dark": "มืดเสมอ" + }, + "look_and_feel": { + "title": "ลักษณะที่แสดง", + "use_system": "ใช้ของระบบ", + "really_dark": "มืดมาก", + "sorta_dark": "ค่อนข้างมืด", + "light": "สว่าง" + }, + "notifications": { + "title": "การแจ้งเตือน", + "favorites": "ชื่นชอบโพสต์ของฉัน", + "follows": "ติดตามฉัน", + "boosts": "ดันโพสต์ของฉัน", + "mentions": "กล่าวถึงฉัน", + "trigger": { + "anyone": "ใครก็ตาม", + "follower": "ผู้ติดตาม", + "follow": "ใครก็ตามที่ฉันติดตาม", + "noone": "ไม่มีใคร", + "title": "แจ้งเตือนฉันเมื่อ" + } + }, + "preference": { + "title": "การกำหนดลักษณะ", + "true_black_dark_mode": "โหมดมืดดำสนิท", + "disable_avatar_animation": "ปิดใช้งานภาพประจำตัวแบบเคลื่อนไหว", + "disable_emoji_animation": "ปิดใช้งานอีโมจิแบบเคลื่อนไหว", + "using_default_browser": "ใช้เบราว์เซอร์เริ่มต้นเพื่อเปิดลิงก์", + "open_links_in_mastodon": "เปิดลิงก์ใน Mastodon" + }, + "boring_zone": { + "title": "โซนน่าเบื่อ", + "account_settings": "การตั้งค่าบัญชี", + "terms": "เงื่อนไขการให้บริการ", + "privacy": "นโยบายความเป็นส่วนตัว" + }, + "spicy_zone": { + "title": "โซนเผ็ดร้อน", + "clear": "ล้างแคชสื่อ", + "signout": "ลงชื่อออก" + } + }, + "footer": { + "mastodon_description": "Mastodon เป็นซอฟต์แวร์โอเพนซอร์ส คุณสามารถรายงานปัญหาได้ใน GitHub ที่ %s (%s)" + }, + "keyboard": { + "close_settings_window": "ปิดหน้าต่างการตั้งค่า" + } + }, + "report": { + "title_report": "รายงาน", + "title": "รายงาน %s", + "step1": "ขั้นตอนที่ 1 จาก 2", + "step2": "ขั้นตอนที่ 2 จาก 2", + "content1": "มีโพสต์อื่นใดที่คุณต้องการเพิ่มไปยังรายงานหรือไม่?", + "content2": "มีสิ่งใดที่ผู้ควบคุมควรทราบเกี่ยวกับรายงานนี้หรือไม่?", + "report_sent_title": "ขอบคุณสำหรับการรายงาน เราจะตรวจสอบสิ่งนี้", + "send": "ส่งรายงาน", + "skip_to_send": "ส่งโดยไม่มีความคิดเห็น", + "text_placeholder": "พิมพ์หรือวางความคิดเห็นเพิ่มเติม", + "reported": "รายงานแล้ว", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "ปิดตัวอย่าง", + "show_next": "แสดงถัดไป", + "show_previous": "แสดงก่อนหน้า" + } + }, + "account_list": { + "tab_bar_hint": "โปรไฟล์ที่เลือกในปัจจุบัน: %s แตะสองครั้งแล้วกดค้างไว้เพื่อแสดงตัวสลับบัญชี", + "dismiss_account_switcher": "ปิดตัวสลับบัญชี", + "add_account": "เพิ่มบัญชี" + }, + "wizard": { + "new_in_mastodon": "มาใหม่ใน Mastodon", + "multiple_account_switch_intro_description": "สลับระหว่างหลายบัญชีโดยกดปุ่มโปรไฟล์ค้างไว้", + "accessibility_hint": "แตะสองครั้งเพื่อปิดตัวช่วยสร้างนี้" + } + } +} \ No newline at end of file From f5c71c2dada82fc196c3468676dfae633be4c49d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:53 +0200 Subject: [PATCH 243/571] New translations app.json (Vietnamese) --- .../StringsConvertor/input/vi.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/vi.lproj/app.json diff --git a/Localization/StringsConvertor/input/vi.lproj/app.json b/Localization/StringsConvertor/input/vi.lproj/app.json new file mode 100644 index 000000000..1c4bfe074 --- /dev/null +++ b/Localization/StringsConvertor/input/vi.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Vui lòng thử lại.", + "please_try_again_later": "Vui lòng thử lại sau." + }, + "sign_up_failure": { + "title": "Đăng ký không thành công" + }, + "server_error": { + "title": "Lỗi máy chủ" + }, + "vote_failure": { + "title": "Bình chọn không thành công", + "poll_ended": "Cuộc bình chọn đã kết thúc" + }, + "discard_post_content": { + "title": "Bỏ bản nháp", + "message": "Xác nhận bỏ qua nội dung tút đã viết." + }, + "publish_post_failure": { + "title": "Đăng tút không thành công", + "message": "Không thể đăng tút.\nVui lòng kiểm tra kết nối mạng.", + "attachments_message": { + "video_attach_with_photo": "Không thể đính kèm video cùng với hình ảnh.", + "more_than_one_video": "Không thể đính kèm nhiều video." + } + }, + "edit_profile_failure": { + "title": "Lỗi chỉnh sửa hồ sơ", + "message": "Không thể chỉnh sửa hồ sơ. Vui lòng thử lại." + }, + "sign_out": { + "title": "Đăng xuất", + "message": "Bạn có chắc muốn đăng xuất không?", + "confirm": "Đăng xuất" + }, + "block_domain": { + "title": "Bạn thật sự muốn ẩn toàn bộ nội dung từ %s? Sẽ hợp lý hơn nếu bạn chỉ chặn hoặc ẩn một vài tài khoản cụ thể. Ẩn toàn bộ nội dung từ máy chủ sẽ khiến bạn không còn thấy nội dung từ máy chủ đó ở bất kỳ nơi nào, kể cả thông báo. Người theo dõi bạn từ máy chủ đó cũng sẽ bị xóa luôn.", + "block_entire_domain": "Chặn máy chủ" + }, + "save_photo_failure": { + "title": "Lưu hình ảnh không thành công", + "message": "Vui lòng cho phép quyền truy cập thư viện hình ảnh để lưu hình ảnh về máy." + }, + "delete_post": { + "title": "Xóa tút", + "message": "Bạn có chắc muốn xóa tút này không?" + }, + "clean_cache": { + "title": "Xóa bộ nhớ đệm", + "message": "Đã xóa %s bộ nhớ đệm." + } + }, + "controls": { + "actions": { + "back": "Quay lại", + "next": "Kế tiếp", + "previous": "Trước đó", + "open": "Mở", + "add": "Thêm", + "remove": "Xóa", + "edit": "Sửa", + "save": "Lưu", + "ok": "OK", + "done": "Xong", + "confirm": "Xác nhận", + "continue": "Tiếp tục", + "compose": "Viết tút", + "cancel": "Hủy bỏ", + "discard": "Bỏ qua", + "try_again": "Thử lại", + "take_photo": "Chụp ảnh", + "save_photo": "Lưu ảnh", + "copy_photo": "Sao chép ảnh", + "sign_in": "Đăng nhập", + "sign_up": "Đăng ký", + "see_more": "Xem thêm", + "preview": "Xem trước", + "share": "Chia sẻ", + "share_user": "Chia sẻ %s", + "share_post": "Chia sẻ tút", + "open_in_safari": "Mở bằng Safari", + "open_in_browser": "Mở trong trình duyệt", + "find_people": "Đề xuất theo dõi", + "manually_search": "Tự tìm kiếm thủ công", + "skip": "Bỏ qua", + "reply": "Trả lời", + "report_user": "Báo cáo %s", + "block_domain": "Chặn %s", + "unblock_domain": "Bỏ chặn %s", + "settings": "Cài đặt", + "delete": "Xóa" + }, + "tabs": { + "home": "Bảng tin", + "search": "Tìm kiếm", + "notification": "Thông báo", + "profile": "Trang hồ sơ" + }, + "keyboard": { + "common": { + "switch_to_tab": "Chuyển thành %s", + "compose_new_post": "Viết tút mới", + "show_favorites": "Hiện lượt thích", + "open_settings": "Mở cài đặt" + }, + "timeline": { + "previous_status": "Tút trước", + "next_status": "Tút sau", + "open_status": "Mở tút", + "open_author_profile": "Mở trang người viết tút", + "open_reblogger_profile": "Mở trang người đăng lại tút", + "reply_status": "Trả lời tút", + "toggle_reblog": "Chọn đăng lại tút", + "toggle_favorite": "Chọn thích tút", + "toggle_content_warning": "Chọn nội dung ẩn", + "preview_image": "Xem trước hình ảnh" + }, + "segmented_control": { + "previous_section": "Tới phần trước", + "next_section": "Tới phần tiếp theo" + } + }, + "status": { + "user_reblogged": "%s đăng lại", + "user_replied_to": "Trả lời đến %s", + "show_post": "Xem tút", + "show_user_profile": "Xem trang hồ sơ", + "content_warning": "Nội dung ẩn", + "sensitive_content": "Nội dung nhạy cảm", + "media_content_warning": "Nhấn để hiển thị", + "tap_to_reveal": "Nhấn để xem", + "poll": { + "vote": "Bình chọn", + "closed": "Kết thúc" + }, + "actions": { + "reply": "Trả lời", + "reblog": "Đăng lại", + "unreblog": "Hủy đăng lại", + "favorite": "Thích", + "unfavorite": "Bỏ thích", + "menu": "Menu", + "hide": "Ẩn", + "show_image": "Hiển thị hình ảnh", + "show_gif": "Hiển thị GIF", + "show_video_player": "Hiện trình phát video", + "tap_then_hold_to_show_menu": "Nhấn giữ để hiện menu" + }, + "tag": { + "url": "URL", + "mention": "Nhắc đến", + "link": "Liên kết", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Ai cũng thấy tút này nhưng không hiện trên bảng tin máy chủ.", + "private": "Chỉ người theo dõi của họ có thể thấy tút này.", + "private_from_me": "Chỉ người theo dõi tôi có thể thấy tút này.", + "direct": "Chỉ người được nhắc đến có thể thấy tút." + } + }, + "friendship": { + "follow": "Theo dõi", + "following": "Đang theo dõi", + "request": "Yêu cầu", + "pending": "Đang chờ", + "block": "Chặn", + "block_user": "Chặn %s", + "block_domain": "Chặn %s", + "unblock": "Bỏ chặn", + "unblock_user": "Bỏ chặn %s", + "blocked": "Đã chặn", + "mute": "Ẩn", + "mute_user": "Ẩn %s", + "unmute": "Bỏ ẩn", + "unmute_user": "Bỏ ẩn %s", + "muted": "Đã ẩn", + "edit_info": "Chỉnh sửa" + }, + "timeline": { + "filtered": "Bộ lọc", + "timestamp": { + "now": "Vừa xong" + }, + "loader": { + "load_missing_posts": "Tải tút chưa đọc", + "loading_missing_posts": "Đang tải tút chưa đọc...", + "show_more_replies": "Xem lượt trả lời" + }, + "header": { + "no_status_found": "Không tìm thấy tút", + "blocking_warning": "Bạn không thể xem trang người này\ncho tới khi bạn bỏ chặn họ.\nHọ sẽ thấy trang của bạn như thế này.", + "user_blocking_warning": "Bạn không thể xem trang %s\ncho tới khi bạn bỏ chặn họ.\nHọ sẽ thấy trang của bạn như thế này.", + "blocked_warning": "Bạn không thể xem trang người này\ncho tới khi họ bỏ chặn bạn.", + "user_blocked_warning": "Bạn không thể xem trang %s\ncho tới khi họ bỏ chặn bạn.", + "suspended_warning": "Người dùng đã bị vô hiệu hóa.", + "user_suspended_warning": "%s đã bị vô hiệu hóa." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Mạng xã hội\ndo bạn kiểm soát.", + "get_started": "Bắt đầu", + "log_in": "Đăng nhập" + }, + "server_picker": { + "title": "Mastodon gồm nhiều máy chủ với thành viên riêng.", + "subtitle": "Chọn một máy chủ dựa theo sở thích, tôn giáo, hoặc ý muốn của bạn.", + "subtitle_extend": "Chọn một máy chủ dựa theo sở thích, tôn giáo, hoặc ý muốn của bạn. Mỗi máy chủ có thể được vận hành bởi một cá nhân hoặc một tổ chức.", + "button": { + "category": { + "all": "Toàn bộ", + "all_accessiblity_description": "Phân loại: Toàn bộ", + "academia": "học thuật", + "activism": "hoạt động xã hội", + "food": "ăn uống", + "furry": "furry", + "games": "trò chơi điện tử", + "general": "chung", + "journalism": "tin tức", + "lgbt": "lgbt", + "regional": "khu vực", + "art": "nghệ thuật", + "music": "âm nhạc", + "tech": "công nghệ" + }, + "see_less": "Ẩn bớt", + "see_more": "Nhiều hơn" + }, + "label": { + "language": "NGÔN NGỮ", + "users": "NGƯỜI DÙNG", + "category": "PHÂN LOẠI" + }, + "input": { + "placeholder": "Tìm máy chủ", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Đang tìm máy chủ hoạt động...", + "bad_network": "Đã xảy ra lỗi. Hãy thử lại hoặc kiểm tra kết nối internet của bạn.", + "no_results": "Không có kết quả" + } + }, + "register": { + "title": "Hãy để tôi đăng ký trên %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Xóa" + }, + "username": { + "placeholder": "tên người dùng", + "duplicate_prompt": "Tên người dùng đã tồn tại." + }, + "display_name": { + "placeholder": "tên hiển thị" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "mật khẩu", + "require": "Mật khẩu phải tối thiểu:", + "character_limit": "8 ký tự", + "accessibility": { + "checked": "đã ổn", + "unchecked": "chưa ổn" + }, + "hint": "Mật khẩu của bạn phải dài tối thiểu 8 ký tự" + }, + "invite": { + "registration_user_invite_request": "Vì sao bạn muốn tham gia?" + } + }, + "error": { + "item": { + "username": "Tên người dùng", + "email": "Email", + "password": "Mật khẩu", + "agreement": "Thoả thuận", + "locale": "Cục bộ", + "reason": "Lý do" + }, + "reason": { + "blocked": "%s dùng dịch vụ email bị cấm", + "unreachable": "%s không tồn tại", + "taken": "%s đã tồn tại", + "reserved": "%s là một từ khóa hạn chế", + "accepted": "%s phải được đồng ý", + "blank": "%s là bắt buộc", + "invalid": "%s không hợp lệ", + "too_long": "%s quá dài", + "too_short": "%s quá ngắn", + "inclusion": "%s chứa ký tự không được hỗ trợ" + }, + "special": { + "username_invalid": "Tên người dùng chỉ có thể chứa các ký tự chữ và số và dấu gạch dưới", + "username_too_long": "Tên người dùng không thể dài hơn 30 ký tự", + "email_invalid": "Đây không phải là một địa chỉ email khả dụng", + "password_too_short": "Mật khẩu của bạn quá ngắn, phải có ít nhất 8 ký tự" + } + } + }, + "server_rules": { + "title": "Quy tắc máy chủ.", + "subtitle": "Được ban hành và áp dụng bởi quản trị viên %s", + "prompt": "Tiếp tục nghĩa là bạn đồng ý điều khoản dịch vụ và chính sách bảo mật của %s.", + "terms_of_service": "điều khoản dịch vụ", + "privacy_policy": "chính sách bảo mật", + "button": { + "confirm": "Tôi đồng ý" + } + }, + "confirm_email": { + "title": "Còn điều này nữa.", + "subtitle": "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Mở ứng dụng email", + "resend": "Gửi lại" + }, + "dont_receive_email": { + "title": "Kiểm tra email", + "description": "Kiểm tra địa chỉ email của bạn đúng chưa hoặc có bị chuyển vào thư rác.", + "resend_email": "Gửi lại email" + }, + "open_email_app": { + "title": "Kiểm tra hộp thư của bạn.", + "description": "Chúng tôi vừa gửi email cho bạn. Kiểm tra thư rác nếu bạn không thấy.", + "mail": "Email", + "open_email_client": "Mở ứng dụng email" + } + }, + "home_timeline": { + "title": "Bảng tin", + "navigation_bar_state": { + "offline": "Ngoại tuyến", + "new_posts": "Đọc những tút mới", + "published": "Đã đăng!", + "Publishing": "Đang đăng tút...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Đề xuất theo dõi", + "follow_explain": "Khi theo dõi ai đó, bạn sẽ thấy tút của họ trong bảng tin." + }, + "compose": { + "title": { + "new_post": "Viết tút", + "new_reply": "Viết trả lời" + }, + "media_selection": { + "camera": "Chụp ảnh", + "photo_library": "Thư viện hình ảnh", + "browse": "Chọn" + }, + "content_input_placeholder": "Cho thế giới biết bạn đang nghĩ gì", + "compose_action": "Đăng", + "replying_to_user": "trả lời %s", + "attachment": { + "photo": "ảnh", + "video": "video", + "attachment_broken": "%s này bị lỗi và không thể\ntải lên Mastodon.", + "description_photo": "Mô tả hình ảnh cho người khiếm thị...", + "description_video": "Mô tả video cho người khiếm thị..." + }, + "poll": { + "duration_time": "Thời hạn: %s", + "thirty_minutes": "30 phút", + "one_hour": "1 giờ", + "six_hours": "6 giờ", + "one_day": "1 ngày", + "three_days": "3 ngày", + "seven_days": "7 ngày", + "option_number": "Lựa chọn %ld" + }, + "content_warning": { + "placeholder": "Viết nội dung ẩn của bạn ở đây..." + }, + "visibility": { + "public": "Công khai", + "unlisted": "Hạn chế", + "private": "Riêng tư", + "direct": "Nhắn riêng" + }, + "auto_complete": { + "space_to_add": "Khoảng cách để thêm" + }, + "accessibility": { + "append_attachment": "Thêm media", + "append_poll": "Tạo bình chọn", + "remove_poll": "Xóa bình chọn", + "custom_emoji_picker": "Chọn emoji", + "enable_content_warning": "Bật nội dung ẩn", + "disable_content_warning": "Tắt nội dung ẩn", + "post_visibility_menu": "Menu hiển thị tút" + }, + "keyboard": { + "discard_post": "Hủy đăng tút", + "publish_post": "Đăng tút", + "toggle_poll": "Mở bình chọn", + "toggle_content_warning": "Mở nội dung ẩn", + "append_attachment_entry": "Thêm media - %s", + "select_visibility_entry": "Thay đổi quyền riêng tư - %s" + } + }, + "profile": { + "dashboard": { + "posts": "tút", + "following": "theo dõi", + "followers": "người theo dõi" + }, + "fields": { + "add_row": "Thêm hàng", + "placeholder": { + "label": "Nhãn", + "content": "Nội dung" + } + }, + "segmented_control": { + "posts": "Tút", + "replies": "Trả lời", + "posts_and_replies": "Tút và trả lời", + "media": "Media", + "about": "Giới thiệu" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Ẩn người dùng", + "message": "Xác nhận ẩn %s" + }, + "confirm_unmute_user": { + "title": "Bỏ ẩn người dùng", + "message": "Xác nhận bỏ ẩn %s" + }, + "confirm_block_user": { + "title": "Chặn người dùng", + "message": "Xác nhận chặn %s" + }, + "confirm_unblock_user": { + "title": "Bỏ chặn người dùng", + "message": "Xác nhận bỏ chặn %s" + } + }, + "accessibility": { + "show_avatar_image": "Hiển thị ảnh đại diện", + "edit_avatar_image": "Sửa ảnh đại diện", + "show_banner_image": "Hiển thị ảnh bìa", + "double_tap_to_open_the_list": "Nhấn hai lần để mở danh sách" + } + }, + "follower": { + "footer": "Không hiển thị người theo dõi từ máy chủ khác." + }, + "following": { + "footer": "Không hiển thị người bạn theo dõi từ máy chủ khác." + }, + "search": { + "title": "Tìm kiếm", + "search_bar": { + "placeholder": "Tìm hashtag và người dùng", + "cancel": "Hủy bỏ" + }, + "recommend": { + "button_text": "Xem tất cả", + "hash_tag": { + "title": "Xu hướng trên Mastodon", + "description": "Những hashtag đang được sử dụng nhiều nhất", + "people_talking": "%s người đang thảo luận" + }, + "accounts": { + "title": "Những người bạn có thể thích", + "description": "Bạn có thể muốn theo dõi những người này", + "follow": "Theo dõi" + } + }, + "searching": { + "segment": { + "all": "Tất cả", + "people": "Người dùng", + "hashtags": "Hashtag", + "posts": "Tút" + }, + "empty_state": { + "no_results": "Không có kết quả" + }, + "recent_search": "Tìm kiếm gần đây", + "clear": "Xóa" + } + }, + "discovery": { + "tabs": { + "posts": "Tút", + "hashtags": "Hashtag", + "news": "Tin tức", + "community": "Máy chủ", + "for_you": "Dành cho bạn" + }, + "intro": "Đây là những tút thu hút được sự chú ý trong góc Mastodon của bạn." + }, + "favorite": { + "title": "Lượt thích" + }, + "notification": { + "title": { + "Everything": "Mọi thứ", + "Mentions": "Lượt nhắc đến" + }, + "notification_description": { + "followed_you": "đã theo dõi bạn", + "favorited_your_post": "thích tút của bạn", + "reblogged_your_post": "đăng lại tút của bạn", + "mentioned_you": "nhắc đến bạn", + "request_to_follow_you": "yêu cầu theo dõi bạn", + "poll_has_ended": "cuộc bình chọn đã kết thúc" + }, + "keyobard": { + "show_everything": "Hiện mọi thứ", + "show_mentions": "Hiện lượt nhắc" + } + }, + "thread": { + "back_title": "Tút", + "title": "Tút của %s" + }, + "settings": { + "title": "Cài đặt", + "section": { + "appearance": { + "title": "Giao diện", + "automatic": "Tự động", + "light": "Sáng", + "dark": "Tối" + }, + "look_and_feel": { + "title": "Giao diện", + "use_system": "Mặc định hệ thống", + "really_dark": "Tối Mạnh", + "sorta_dark": "Tối Nhẹ", + "light": "Sáng" + }, + "notifications": { + "title": "Thông báo", + "favorites": "Thích tút của tôi", + "follows": "Theo dõi tôi", + "boosts": "Đăng lại tút của tôi", + "mentions": "Nhắc đến tôi", + "trigger": { + "anyone": "ai đó", + "follower": "người theo dõi tôi", + "follow": "người tôi theo dõi", + "noone": "không một ai", + "title": "Thông báo khi" + } + }, + "preference": { + "title": "Chung", + "true_black_dark_mode": "Chế độ tối chân thật", + "disable_avatar_animation": "Tắt ảnh đại diện GIF", + "disable_emoji_animation": "Tắt emoji dạng GIF", + "using_default_browser": "Dùng trình duyệt mặc định", + "open_links_in_mastodon": "Mở liên kết trong Mastodon" + }, + "boring_zone": { + "title": "Nhàm chán", + "account_settings": "Cài đặt tài khoản", + "terms": "Điều khoản dịch vụ", + "privacy": "Chính sách bảo mật" + }, + "spicy_zone": { + "title": "Thú vị", + "clear": "Xóa bộ nhớ đệm", + "signout": "Đăng xuất" + } + }, + "footer": { + "mastodon_description": "Mastodon là phần mềm mã nguồn mở. Bạn có thể báo lỗi trên GitHub tại %s (%s)" + }, + "keyboard": { + "close_settings_window": "Đóng cửa sổ cài đặt" + } + }, + "report": { + "title_report": "Báo cáo", + "title": "Báo cáo %s", + "step1": "Bước 1 trong 2", + "step2": "Bước 2 trong 2", + "content1": "Bạn muốn thêm tút nào vào báo cáo nữa không?", + "content2": "Kiểm duyệt viên cần biết gì về báo cáo này?", + "report_sent_title": "Cảm ơn đã báo cáo, chúng tôi sẽ xem xét kỹ.", + "send": "Gửi báo cáo", + "skip_to_send": "Gửi không ghi chú", + "text_placeholder": "Nhập hoặc bổ sung chú thích", + "reported": "ĐÃ BÁO CÁO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Đóng xem trước", + "show_next": "Hiện kế tiếp", + "show_previous": "Hiện trước đó" + } + }, + "account_list": { + "tab_bar_hint": "Đang dùng tài khoản: %s. Nhấn hai lần và giữ để đổi sang tài khoản khác", + "dismiss_account_switcher": "Bỏ qua chuyển đổi tài khoản", + "add_account": "Thêm tài khoản" + }, + "wizard": { + "new_in_mastodon": "Mới trên Mastodon", + "multiple_account_switch_intro_description": "Chuyển đổi giữa nhiều tài khoản bằng cách đè giữ nút tài khoản.", + "accessibility_hint": "Nhấn hai lần để bỏ qua" + } + } +} \ No newline at end of file From 5921a1625fd7e7e169a12213c1ce9611596d1dd0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:54 +0200 Subject: [PATCH 244/571] New translations app.json (Basque) --- .../StringsConvertor/input/eu.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/eu.lproj/app.json diff --git a/Localization/StringsConvertor/input/eu.lproj/app.json b/Localization/StringsConvertor/input/eu.lproj/app.json new file mode 100644 index 000000000..608a07d98 --- /dev/null +++ b/Localization/StringsConvertor/input/eu.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Mesedez, saiatu berriro.", + "please_try_again_later": "Mesedez beranduago saiatu." + }, + "sign_up_failure": { + "title": "Hutsegitea izen-ematean" + }, + "server_error": { + "title": "Zerbitzari-errorea" + }, + "vote_failure": { + "title": "Hutsegitea botoa ematean", + "poll_ended": "Inkesta amaitu da" + }, + "discard_post_content": { + "title": "Baztertu zirriborroa", + "message": "Berretsi idatzitako bidalketaren edukia baztertzea." + }, + "publish_post_failure": { + "title": "Hutsegitea argitaratzean", + "message": "Huts egin du bidalketa argitaratzean.\nEgiaztatu Interneteko konexioa.", + "attachments_message": { + "video_attach_with_photo": "Ezin da irudiak dituen bidalketa batean bideo bat erantsi.", + "more_than_one_video": "Ezin da bideo bat baino gehiago erantsi." + } + }, + "edit_profile_failure": { + "title": "Errorea profila editatzean", + "message": "Ezin da profila editatu. Mesedez saiatu berriro." + }, + "sign_out": { + "title": "Amaitu saioa", + "message": "Ziur saioa amaitu nahi duzula?", + "confirm": "Amaitu saioa" + }, + "block_domain": { + "title": "Ziur, erabat ziur, %s domeinu osoa blokeatu nahi duzula? Gehienetan erabiltzaile gutxi batzuk blokeatu edo mututzearekin nahikoa da. Ez duzu domeinu horretako edukirik ikusiko eta domeinu horretako zure jarraitzaileak kenduko dira.", + "block_entire_domain": "Blokeatu domeinua" + }, + "save_photo_failure": { + "title": "Hutsegitea argazkia gordetzean", + "message": "Gaitu argazki galeriarako sarbidearen baimena argazkia gordetzeko." + }, + "delete_post": { + "title": "Ziur zaude bidalketa hau ezabatu nahi duzula?", + "message": "Ziur bidalketa hau ezabatu nahi duzula?" + }, + "clean_cache": { + "title": "Garbitu cache-a", + "message": "Behar bezala garbitu da %s cache-a." + } + }, + "controls": { + "actions": { + "back": "Atzera", + "next": "Hurrengoa", + "previous": "Aurrekoa", + "open": "Ireki", + "add": "Gehitu", + "remove": "Kendu", + "edit": "Editatu", + "save": "Gorde", + "ok": "Ados", + "done": "Egina", + "confirm": "Berretsi", + "continue": "Jarraitu", + "compose": "Idatzi", + "cancel": "Utzi", + "discard": "Baztertu", + "try_again": "Saiatu berriro", + "take_photo": "Atera argazkia", + "save_photo": "Gorde argazkia", + "copy_photo": "Kopiatu argazkia", + "sign_in": "Hasi saioa", + "sign_up": "Eman Izena", + "see_more": "Ikusi gehiago", + "preview": "Aurrebista", + "share": "Partekatu", + "share_user": "Partekatu %s", + "share_post": "Partekatu bidalketa", + "open_in_safari": "Ireki Safarin", + "open_in_browser": "Ireki nabigatzailean", + "find_people": "Bilatu jarraitzeko jendea", + "manually_search": "Eskuz bilatu", + "skip": "Saltatu", + "reply": "Erantzun", + "report_user": "Salatu %s", + "block_domain": "Blokeatu %s", + "unblock_domain": "Desblokeatu %s", + "settings": "Ezarpenak", + "delete": "Ezabatu" + }, + "tabs": { + "home": "Hasiera", + "search": "Bilatu", + "notification": "Jakinarazpena", + "profile": "Profila" + }, + "keyboard": { + "common": { + "switch_to_tab": "Aldatu %s(e)ra", + "compose_new_post": "Idatzi bidalketa berria", + "show_favorites": "Erakutsi gogokoak", + "open_settings": "Ireki ezarpenak" + }, + "timeline": { + "previous_status": "Aurreko bidalketa", + "next_status": "Hurrengo bidalketa", + "open_status": "Ireki bidalketa", + "open_author_profile": "Ireki egilearen profila", + "open_reblogger_profile": "Ireki bultzada eman duenaren profila", + "reply_status": "Erantzun bidalketari", + "toggle_reblog": "Txandakatu bidalketaren bultzada", + "toggle_favorite": "Txandakatu bidalketa gogoko egitea", + "toggle_content_warning": "Txandakatu edukiaren abisua", + "preview_image": "Aurreikusi irudia" + }, + "segmented_control": { + "previous_section": "Aurreko sekzioa", + "next_section": "Hurrengo sekzioa" + } + }, + "status": { + "user_reblogged": "%s erabiltzaileak bultzada eman dio", + "user_replied_to": "%s(r)i erantzuten", + "show_post": "Erakutsi bidalketa", + "show_user_profile": "Erakutsi erabiltzailearen profila", + "content_warning": "Edukiaren abisua", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Ukitu edonon bistaratzeko", + "tap_to_reveal": "Sakatu erakusteko", + "poll": { + "vote": "Bozkatu", + "closed": "Itxita" + }, + "actions": { + "reply": "Erantzun", + "reblog": "Bultzada", + "unreblog": "Desegin bultzada", + "favorite": "Gogokoa", + "unfavorite": "Kendu gogokoa", + "menu": "Menua", + "hide": "Ezkutatu", + "show_image": "Erakutsi irudia", + "show_gif": "Erakutsi GIFa", + "show_video_player": "Erakutsi bideo-erreproduzigailua", + "tap_then_hold_to_show_menu": "Sakatu eta eutsi menua erakusteko" + }, + "tag": { + "url": "URLa", + "mention": "Aipatu", + "link": "Esteka", + "hashtag": "Traola", + "email": "Eposta", + "emoji": "Emojia" + }, + "visibility": { + "unlisted": "Edozeinek ikusi dezake bidalketa hau baina ez da denbora-lerro publikoan bistaratuko.", + "private": "Beren jarraitzaileek soilik ikus dezakete bidalketa hau.", + "private_from_me": "Nire jarraitzaileek soilik ikus dezakete bidalketa hau.", + "direct": "Aipatutako erabiltzaileek soilik ikus dezakete bidalketa hau." + } + }, + "friendship": { + "follow": "Jarraitu", + "following": "Jarraitzen", + "request": "Eskaera", + "pending": "Zain", + "block": "Blokeatu", + "block_user": "Blokeatu %s", + "block_domain": "Blokeatu %s", + "unblock": "Desblokeatu", + "unblock_user": "Desblokeatu %s", + "blocked": "Blokeatuta", + "mute": "Mututu", + "mute_user": "Mututu %s", + "unmute": "Desmututu", + "unmute_user": "Desmututu %s", + "muted": "Mutututa", + "edit_info": "Editatu informazioa" + }, + "timeline": { + "filtered": "Iragazita", + "timestamp": { + "now": "Orain" + }, + "loader": { + "load_missing_posts": "Kargatu falta diren bidalketak", + "loading_missing_posts": "Falta diren bidalketak kargatzen...", + "show_more_replies": "Erakutsi erantzun gehiago" + }, + "header": { + "no_status_found": "Ez da bidalketa aurkitu", + "blocking_warning": "Ezin duzu erabiltzaile honen profila ikusi\ndesblokeatzen duzun arte.\nZure profilak itxura hau du berarentzat.", + "user_blocking_warning": "Ezin duzu %s erabiltzailearen\nprofila ikusi desblokeatzen duzun arte.\nZure profilak itxura hau du berarentzat.", + "blocked_warning": "Ezin duzu erabiltzaile honen profila ikusi\ndesblokeatzen zaituen arte.", + "user_blocked_warning": "Ezin duzu %s erabiltzailearen\nprofila ikusi desblokeatzen zaituen arte.", + "suspended_warning": "Erabiltzaile hau kanporatua izan da.", + "user_suspended_warning": "%s kontua kanporatua izan da." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Sare sozialak\nberriz zure eskuetan.", + "get_started": "Nola hasi", + "log_in": "Hasi saioa" + }, + "server_picker": { + "title": "Aukeratu zerbitzari bat,\nedozein zerbitzari.", + "subtitle": "Aukeratu komunitate bat zure interes edo lurraldearen arabera, edo erabilera orokorreko bat.", + "subtitle_extend": "Aukeratu komunitate bat zure interes edo lurraldearen arabera, edo erabilera orokorreko bat. Komunitate bakoitza erakunde edo norbanako independente batek kudeatzen du.", + "button": { + "category": { + "all": "Guztiak", + "all_accessiblity_description": "Kategoria: Guztiak", + "academia": "akademia", + "activism": "aktibismoa", + "food": "janaria", + "furry": "furry", + "games": "jokoak", + "general": "orokorra", + "journalism": "kazetaritza", + "lgbt": "LGBTQ+", + "regional": "herrialdekoa", + "art": "artea", + "music": "musika", + "tech": "teknologia" + }, + "see_less": "Ikusi gutxiago", + "see_more": "Ikusi gehiago" + }, + "label": { + "language": "HIZKUNTZA", + "users": "ERABILTZAILEAK", + "category": "KATEGORIA" + }, + "input": { + "placeholder": "Bilatu zerbitzari bat edo sortu zurea...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Erabilgarri dauden zerbitzariak bilatzen...", + "bad_network": "Arazoren bat egon da datuak kargatzean. Egiaztatu zure Interneteko konexioa.", + "no_results": "Emaitzarik ez" + } + }, + "register": { + "title": "Hitz egin iezaguzu zuri buruz.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Ezabatu" + }, + "username": { + "placeholder": "erabiltzaile-izena", + "duplicate_prompt": "Erabiltzaile-izen hau hartuta dago." + }, + "display_name": { + "placeholder": "pantaila-izena" + }, + "email": { + "placeholder": "eposta" + }, + "password": { + "placeholder": "pasahitza", + "require": "Zure pasahitzak izan behar ditu gutxienez:", + "character_limit": "8 karaktere", + "accessibility": { + "checked": "hautatuta", + "unchecked": "hautatu gabe" + }, + "hint": "Pasahitzak zortzi karaktere izan behar ditu gutxienez" + }, + "invite": { + "registration_user_invite_request": "Zergatik elkartu nahi duzu?" + } + }, + "error": { + "item": { + "username": "Erabiltzaile-izena", + "email": "Eposta", + "password": "Pasahitza", + "agreement": "Adostasuna", + "locale": "Eskualdeko ezarpenak", + "reason": "Arrazoia" + }, + "reason": { + "blocked": "%s(e)k onartu gabeko eposta hornitzaile bat erabiltzen du", + "unreachable": "dirudienez %s ez da existitzen", + "taken": "%s dagoeneko erabiltzen da", + "reserved": "%s gako-hitz erreserbatu bat da", + "accepted": "%s onartu behar da", + "blank": "%s beharrezkoa da", + "invalid": "%s baliogabea da", + "too_long": "%s luzeegia da", + "too_short": "%s laburregia da", + "inclusion": "%s ez da onartutako balio bat" + }, + "special": { + "username_invalid": "Erabiltzaile-izenak karaktere alfanumerikoak eta azpimarrak soilik eduki ditzake", + "username_too_long": "Erabiltzaile-izena luzeegia da (ezin ditu 30 karaktere baino gehiago izan)", + "email_invalid": "Hau ez da baliozko eposta helbidea", + "password_too_short": "Pasahitza laburregia da (gutxienez 8 karaktere izan behar ditu)" + } + } + }, + "server_rules": { + "title": "Oinarrizko arau batzuk.", + "subtitle": "Arau hauek %s instantziako administratzaileek ezarri dituzte.", + "prompt": "Jarraituz gero, %s instantziaren zerbitzu-baldintzak eta pribatutasun-gidalerroak onartzen dituzu.", + "terms_of_service": "zerbitzu-baldintzak", + "privacy_policy": "pribatutasun-gidalerroak", + "button": { + "confirm": "Ados nago" + } + }, + "confirm_email": { + "title": "Eta azkenik...", + "subtitle": "Sakatu epostaz bidali dizugun loturan zure kontua egiaztatzeko.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Ireki eposta aplikazioa", + "resend": "Berbidali" + }, + "dont_receive_email": { + "title": "Begiratu zure eposta", + "description": "Egiaztatu zure eposta helbidea zuzena den eta begiratu zaborraren karpeta.", + "resend_email": "Birbidali eposta" + }, + "open_email_app": { + "title": "Egiaztatu zure sarrerako ontzia.", + "description": "Eposta bat bidali dizugu. Egiaztatu zure zaborraren karpeta.", + "mail": "Posta", + "open_email_client": "Ireki eposta bezeroa" + } + }, + "home_timeline": { + "title": "Hasiera", + "navigation_bar_state": { + "offline": "Konexio gabe", + "new_posts": "Ikusi bidal. berriak", + "published": "Argitaratua!", + "Publishing": "Bidalketa argitaratzen...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Bilatu jarraitzeko jendea", + "follow_explain": "Norbait jarraitzen duzunean, bere bidalketak zure hasierako denbora-lerroan agertuko zaizkizu." + }, + "compose": { + "title": { + "new_post": "Bidalketa berria", + "new_reply": "Erantzun berria" + }, + "media_selection": { + "camera": "Atera argazkia", + "photo_library": "Argazki-liburutegia", + "browse": "Arakatu" + }, + "content_input_placeholder": "Idatzi edo itsatsi buruan duzuna", + "compose_action": "Argitaratu", + "replying_to_user": "%s(r)i erantzuten", + "attachment": { + "photo": "argazkia", + "video": "bideoa", + "attachment_broken": "%s hondatuta dago eta ezin da\nMastodonera igo.", + "description_photo": "Deskribatu argazkia ikusmen arazoak dituztenentzat...", + "description_video": "Deskribatu bideoa ikusmen arazoak dituztenentzat..." + }, + "poll": { + "duration_time": "Iraupena: %s", + "thirty_minutes": "30 minutu", + "one_hour": "Ordu 1", + "six_hours": "6 ordu", + "one_day": "Egun 1", + "three_days": "3 egun", + "seven_days": "7 egun", + "option_number": "%ld aukera" + }, + "content_warning": { + "placeholder": "Idatzi abisu zehatz bat hemen..." + }, + "visibility": { + "public": "Publikoa", + "unlisted": "Zerrendatu gabea", + "private": "Jarraitzaileak soilik", + "direct": "Aipatzen dudan jendea soilik" + }, + "auto_complete": { + "space_to_add": "Sakatu zuriunea gehitzeko" + }, + "accessibility": { + "append_attachment": "Gehitu eranskina", + "append_poll": "Gehitu inkesta", + "remove_poll": "Kendu inkesta", + "custom_emoji_picker": "Emoji pertsonalizatuen hautatzailea", + "enable_content_warning": "Gaitu edukiaren abisua", + "disable_content_warning": "Desgaitu edukiaren abisua", + "post_visibility_menu": "Bidalketaren ikusgaitasunaren menua" + }, + "keyboard": { + "discard_post": "Baztertu bidalketa", + "publish_post": "Argitaratu bidalketa", + "toggle_poll": "Txandakatu inkesta", + "toggle_content_warning": "Txandakatu edukiaren abisua", + "append_attachment_entry": "Gehitu eranskina - %s", + "select_visibility_entry": "Hautatu ikusgaitasuna - %s" + } + }, + "profile": { + "dashboard": { + "posts": "bidalketa", + "following": "jarraitzen", + "followers": "jarraitzaile" + }, + "fields": { + "add_row": "Gehitu errenkada", + "placeholder": { + "label": "Etiketa", + "content": "Edukia" + } + }, + "segmented_control": { + "posts": "Bidalketak", + "replies": "Erantzunak", + "posts_and_replies": "Bidalketak eta erantzunak", + "media": "Multimedia", + "about": "Honi buruz" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mututu kontua", + "message": "Berretsi %s mututzea" + }, + "confirm_unmute_user": { + "title": "Desmututu kontua", + "message": "Berretsi %s desmututzea" + }, + "confirm_block_user": { + "title": "Blokeatu kontua", + "message": "Berretsi %s blokeatzea" + }, + "confirm_unblock_user": { + "title": "Desblokeatu kontua", + "message": "Berretsi %s desblokeatzea" + } + }, + "accessibility": { + "show_avatar_image": "Erakutsi abatarra", + "edit_avatar_image": "Editatu abatarra", + "show_banner_image": "Erakutsi banner irudia", + "double_tap_to_open_the_list": "Sakatu birritan zerrenda irekitzeko" + } + }, + "follower": { + "footer": "Beste zerbitzarietako jarraitzaileak ez dira bistaratzen." + }, + "following": { + "footer": "Beste zerbitzarietan jarraitutakoak ez dira bistaratzen." + }, + "search": { + "title": "Bilatu", + "search_bar": { + "placeholder": "Bilatu traolak eta erabiltzaileak", + "cancel": "Utzi" + }, + "recommend": { + "button_text": "Ikusi guztiak", + "hash_tag": { + "title": "Mastodoneko joerak", + "description": "Deigarri gertatzen ari diren traolak", + "people_talking": "%s pertsona hizketan" + }, + "accounts": { + "title": "Gustuko izan ditzakezun kontuak", + "description": "Kontu hauek jarraitu nahiko dituzu behar bada", + "follow": "Jarraitu" + } + }, + "searching": { + "segment": { + "all": "Guztiak", + "people": "Jendea", + "hashtags": "Traolak", + "posts": "Bidalketak" + }, + "empty_state": { + "no_results": "Emaitzarik ez" + }, + "recent_search": "Azken bilaketak", + "clear": "Garbitu" + } + }, + "discovery": { + "tabs": { + "posts": "Argitalpenak", + "hashtags": "Traolak", + "news": "Albisteak", + "community": "Community", + "for_you": "Zuretzat" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Zure gogokoak" + }, + "notification": { + "title": { + "Everything": "Dena", + "Mentions": "Aipamenak" + }, + "notification_description": { + "followed_you": "zu jarraitzen hasi da", + "favorited_your_post": "(e)k zure bidalketa gogoko du", + "reblogged_your_post": "(e)k bultzada eman dio zure bidalketari", + "mentioned_you": "erabiltzaileak aipatu zaitu", + "request_to_follow_you": "erabiltzaileak zu jarraitzea eskatu du", + "poll_has_ended": "inkesta amaitu da" + }, + "keyobard": { + "show_everything": "Erakutsi guztia", + "show_mentions": "Erakutsi aipamenak" + } + }, + "thread": { + "back_title": "Bidalketa", + "title": "%s(e)n bidalketa" + }, + "settings": { + "title": "Ezarpenak", + "section": { + "appearance": { + "title": "Itxura", + "automatic": "Automatikoa", + "light": "Beti argia", + "dark": "Beti iluna" + }, + "look_and_feel": { + "title": "Itxura", + "use_system": "Erabili sistemakoa", + "really_dark": "Oso iluna", + "sorta_dark": "Ilun antzekoa", + "light": "Argia" + }, + "notifications": { + "title": "Jakinarazpenak", + "favorites": "Nire bidalketa gogoko egitean", + "follows": "Jarraitzen nau", + "boosts": "Nire bidalketa bultzatu du", + "mentions": "Aipatu nau", + "trigger": { + "anyone": "edozein", + "follower": "jarraitzaile bat", + "follow": "jarraitzen dudan edonor", + "noone": "inor ez", + "title": "Noiz jakinarazi:" + } + }, + "preference": { + "title": "Hobespenak", + "true_black_dark_mode": "Benetako modu beltz iluna", + "disable_avatar_animation": "Desgaitu abatar animatuak", + "disable_emoji_animation": "Desgaitu emoji animatuak", + "using_default_browser": "Erabili nabigatzaile lehenetsia estekak irekitzeko", + "open_links_in_mastodon": "Ireki estekak Mastodonen" + }, + "boring_zone": { + "title": "Eremu aspergarria", + "account_settings": "Kontuaren ezarpenak", + "terms": "Zerbitzu-baldintzak", + "privacy": "Pribatutasun-gidalerroak" + }, + "spicy_zone": { + "title": "Eremu beroa", + "clear": "Garbitu multimediaren cachea", + "signout": "Amaitu saioa" + } + }, + "footer": { + "mastodon_description": "Mastodon software librea da. Arazoen berri eman dezakezu GitHub bidez: %s (%s)" + }, + "keyboard": { + "close_settings_window": "Itxi ezarpenen leihoa" + } + }, + "report": { + "title_report": "Salatu", + "title": "Salatu %s", + "step1": "1. urratsa 2tik", + "step2": "2. urratsa 2tik", + "content1": "Salaketan beste bidalketarik gehitu nahi duzu?", + "content2": "Moderatzaileek besterik jakin behar dute salaketa honi buruz?", + "report_sent_title": "Mila esker salaketagatik, berrikusiko dugu.", + "send": "Bidali salaketa", + "skip_to_send": "Bidali iruzkinik gabe", + "text_placeholder": "Idatzi edo itsatsi iruzkin gehigarriak", + "reported": "SALATUA", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Itxi aurrebista", + "show_next": "Erakutsi hurrengoa", + "show_previous": "Erakutsi aurrekoa" + } + }, + "account_list": { + "tab_bar_hint": "Unean hautatutako profila: %s. Ukitu birritan, ondoren eduki sakatuta kontu-aldatzailea erakusteko", + "dismiss_account_switcher": "Baztertu kontu-aldatzailea", + "add_account": "Gehitu kontua" + }, + "wizard": { + "new_in_mastodon": "Berria Mastodonen", + "multiple_account_switch_intro_description": "Aldatu hainbat konturen artean profilaren botoia sakatuta edukiz.", + "accessibility_hint": "Ukitu birritan morroi hau baztertzeko" + } + } +} \ No newline at end of file From ed9c61fa44f2e15c35ea848cfcd638ca5cb917ab Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:55 +0200 Subject: [PATCH 245/571] New translations Localizable.stringsdict (Basque) --- .../input/eu.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict new file mode 100644 index 000000000..5de100844 --- /dev/null +++ b/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Irakurri gabeko jakinarazpen bat + other + Irakurri gabeko %ld jakinarazpen + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Sarrerak %#@character_count@ karaktereko muga gainditzen du + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + karaktere bat + other + %ld karaktere + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Sarreraren karaktere muga %#@character_count@ da oraindik + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + karaktere bat + other + %ld karaktere + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + bidalketa + other + bidalketa + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Bidalketa bat + other + %ld bidalketa + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Gogoko bat + other + %ld gogoko + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Bultzada bat + other + %ld bultzada + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Erantzun bat + other + %ld erantzun + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Boto bat + other + %ld boto + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Boto-emaile bat + other + %ld boto-emaile + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Pertsona bat hizketan + other + %ld pertsona hizketan + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Bat jarraitzen + other + %ld jarraitzen + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Jarraitzaile bat + other + %ld jarraitzaile + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Urte bat geratzen da + other + %ld urte geratzen dira + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Hilabete bat geratzen da + other + %ld hilabete geratzen dira + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Egun bat geratzen da + other + %ld egun geratzen dira + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Ordu 1 geratzen da + other + %ld ordu geratzen dira + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Minutu 1 geratzen da + other + %ld minutu geratzen dira + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Segundo 1 geratzen da + other + %ld segundo geratzen dira + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela urtebete + other + Duela %ld urte + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela hilabete + other + Duela %ld hilabete + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela egun bat + other + Duela %ld egun + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela ordubete + other + Duela %ld ordu + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela minutu bat + other + Duela %ld minutu + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Duela segundo bat + other + Duela %ld segundo + + + + From d3cd22163eab358af1ae84b7bde7f3efa681815f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:55 +0200 Subject: [PATCH 246/571] New translations app.json (Romanian) --- .../StringsConvertor/input/ro.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ro.lproj/app.json diff --git a/Localization/StringsConvertor/input/ro.lproj/app.json b/Localization/StringsConvertor/input/ro.lproj/app.json new file mode 100644 index 000000000..a8ee8fe61 --- /dev/null +++ b/Localization/StringsConvertor/input/ro.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Vă rugăm să încercaţi din nou.", + "please_try_again_later": "Vă rugăm să încercaţi din nou mai târziu." + }, + "sign_up_failure": { + "title": "Înregistrare Eșuată" + }, + "server_error": { + "title": "Eroare Server" + }, + "vote_failure": { + "title": "Eșec la vot", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Șterge Schită", + "message": "Confirmă renunțarea la conținutul postării." + }, + "publish_post_failure": { + "title": "Eșec la publicare", + "message": "Datele nu au putut fi încărcate. Te rugăm să-ți verifici conexiunea la internet.", + "attachments_message": { + "video_attach_with_photo": "Nu se poate atașa un videoclip la o stare care conține deja imagini.", + "more_than_one_video": "Nu se poate ataşa mai mult de un videoclip." + } + }, + "edit_profile_failure": { + "title": "Eroare în editarea profilului", + "message": "Nu se poate edita profilul. Vă rugăm să încercaţi din nou." + }, + "sign_out": { + "title": "Deconectați-vă", + "message": "Sigur doriți să vă deconectați?", + "confirm": "Deconectați-vă" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Deschide", + "add": "Add", + "remove": "Elimină", + "edit": "Edit", + "save": "Salvează", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 6a3be284157737e03adcb9aed7fa582f251dcb7d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:57 +0200 Subject: [PATCH 247/571] New translations app.json (French) --- .../StringsConvertor/input/fr.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/fr.lproj/app.json diff --git a/Localization/StringsConvertor/input/fr.lproj/app.json b/Localization/StringsConvertor/input/fr.lproj/app.json new file mode 100644 index 000000000..7e393a68d --- /dev/null +++ b/Localization/StringsConvertor/input/fr.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Merci de réessayer.", + "please_try_again_later": "Merci de réessayer plus tard." + }, + "sign_up_failure": { + "title": "Échec de l'inscription" + }, + "server_error": { + "title": "Erreur du serveur" + }, + "vote_failure": { + "title": "Le vote n’a pas pu être enregistré", + "poll_ended": "Le sondage est terminé" + }, + "discard_post_content": { + "title": "Abandonner le brouillon", + "message": "Confirmez pour abandonner le contenu de votre message." + }, + "publish_post_failure": { + "title": "La publication a échoué", + "message": "La publication a échoué.\nVeuillez vérifier votre accès à Internet.", + "attachments_message": { + "video_attach_with_photo": "Impossible de joindre une vidéo à un statut contenant déjà des images.", + "more_than_one_video": "Impossible de joindre plus d’une vidéo." + } + }, + "edit_profile_failure": { + "title": "Erreur lors de l'édition du profil", + "message": "Impossible de modifier le profil. Veuillez réessayer." + }, + "sign_out": { + "title": "Se déconnecter", + "message": "Voulez-vous vraiment vous déconnecter ?", + "confirm": "Se déconnecter" + }, + "block_domain": { + "title": "Voulez-vous vraiment, vraiment bloquer %s en entier ? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans fils publics, ni dans vos notifications. Vos abonnés utilisant ce domaine seront retirés.", + "block_entire_domain": "Bloquer le domaine" + }, + "save_photo_failure": { + "title": "Échec de l'enregistrement de la photo", + "message": "Veuillez activer la permission d'accès à la photothèque pour enregistrer la photo." + }, + "delete_post": { + "title": "Voulez-vous vraiment supprimer ce message ?", + "message": "Voulez-vous vraiment supprimer ce message ?" + }, + "clean_cache": { + "title": "Vider le cache", + "message": "Cache de %s effacé avec succès." + } + }, + "controls": { + "actions": { + "back": "Retour", + "next": "Suivant", + "previous": "Précédent", + "open": "Ouvrir", + "add": "Ajouter", + "remove": "Supprimer", + "edit": "Éditer", + "save": "Enregistrer", + "ok": "OK", + "done": "Terminé", + "confirm": "Confirmer", + "continue": "Continuer", + "compose": "Rédiger", + "cancel": "Annuler", + "discard": "Abandonner", + "try_again": "Réessayer", + "take_photo": "Prendre une photo", + "save_photo": "Enregistrer la photo", + "copy_photo": "Copier la photo", + "sign_in": "Se connecter", + "sign_up": "Créer un compte", + "see_more": "Voir plus", + "preview": "Aperçu", + "share": "Partager", + "share_user": "Partager %s", + "share_post": "Partager la publication", + "open_in_safari": "Ouvrir dans Safari", + "open_in_browser": "Ouvrir dans le navigateur", + "find_people": "Trouver des personnes à suivre", + "manually_search": "Rechercher manuellement à la place", + "skip": "Passer", + "reply": "Répondre", + "report_user": "Signaler %s", + "block_domain": "Bloquer %s", + "unblock_domain": "Débloquer %s", + "settings": "Paramètres", + "delete": "Supprimer" + }, + "tabs": { + "home": "Accueil", + "search": "Rechercher", + "notification": "Notification", + "profile": "Profil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Basculer vers %s", + "compose_new_post": "Rédiger un nouveau message", + "show_favorites": "Afficher les favoris", + "open_settings": "Ouvrir les paramètres" + }, + "timeline": { + "previous_status": "Publication précédente", + "next_status": "Publication suivante", + "open_status": "Ouvrir la publication", + "open_author_profile": "Ouvrir le profil de l’auteur·rice", + "open_reblogger_profile": "Ouvrir le profil du rebloggeur", + "reply_status": "Répondre à la publication", + "toggle_reblog": "Basculer le reblogue lors de la publication", + "toggle_favorite": "Basculer le favori lors de la publication", + "toggle_content_warning": "Basculer l’avertissement de contenu", + "preview_image": "Prévisualiser l’image" + }, + "segmented_control": { + "previous_section": "Section précédente", + "next_section": "Prochaine section" + } + }, + "status": { + "user_reblogged": "%s a reblogué", + "user_replied_to": "À répondu à %s", + "show_post": "Montrer la publication", + "show_user_profile": "Montrer le profil de l’utilisateur·rice", + "content_warning": "Avertissement de contenu", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tapotez n’importe où pour révéler la publication", + "tap_to_reveal": "Appuyer pour afficher", + "poll": { + "vote": "Voter", + "closed": "Fermé" + }, + "actions": { + "reply": "Répondre", + "reblog": "Rebloguer", + "unreblog": "Annuler le reblog", + "favorite": "Favori", + "unfavorite": "Retirer des favoris", + "menu": "Menu", + "hide": "Cacher", + "show_image": "Afficher l’image", + "show_gif": "Afficher le GIF", + "show_video_player": "Afficher le lecteur vidéo", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Lien", + "hashtag": "Hashtag", + "email": "Courriel", + "emoji": "Émoji" + }, + "visibility": { + "unlisted": "Tout le monde peut voir ce message mais ne sera pas affiché sur le fil public.", + "private": "Seul·e·s leurs abonné·e·s peuvent voir ce message.", + "private_from_me": "Seul·e·s mes abonné·e·s peuvent voir ce message.", + "direct": "Seul·e l’utilisateur·rice mentionnée peut voir ce message." + } + }, + "friendship": { + "follow": "Suivre", + "following": "Suivi", + "request": "Requête", + "pending": "En attente", + "block": "Bloquer", + "block_user": "Bloquer %s", + "block_domain": "Bloquer %s", + "unblock": "Débloquer", + "unblock_user": "Débloquer %s", + "blocked": "Bloqué", + "mute": "Masquer", + "mute_user": "Ignorer %s", + "unmute": "Ne plus ignorer", + "unmute_user": "Ne plus masquer %s", + "muted": "Masqué", + "edit_info": "Éditer les infos" + }, + "timeline": { + "filtered": "Filtré", + "timestamp": { + "now": "À l’instant" + }, + "loader": { + "load_missing_posts": "Charger les messages manquants", + "loading_missing_posts": "Chargement des publications manquantes...", + "show_more_replies": "Charger plus de réponses" + }, + "header": { + "no_status_found": "Aucune publication trouvée", + "blocking_warning": "Vous ne pouvez pas voir le profil de cet utilisateur\n tant que vous ne l’avez pas débloqué\nVotre profil ressemble à ça pour lui.", + "user_blocking_warning": "Vous ne pouvez pas voir le profil de %s\ntant que vous ne l’avez pas débloqué\nVotre profil ressemble à ça pour lui.", + "blocked_warning": "Vous ne pouvez pas voir le profil de cet utilisateur\n tant qu'il ne vous aura pas débloqué.", + "user_blocked_warning": "Vous ne pouvez pas voir le profil de %s\ntant qu’il ne vous aura pas débloqué.", + "suspended_warning": "Cet utilisateur a été suspendu.", + "user_suspended_warning": "Le compte de %s à été suspendu." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Le réseau social qui vous rend le contrôle.", + "get_started": "Prise en main", + "log_in": "Se connecter" + }, + "server_picker": { + "title": "Choisissez un serveur,\nn'importe quel serveur.", + "subtitle": "Choisissez une communauté en fonction de vos intérêts, de votre région ou de votre objectif général.", + "subtitle_extend": "Choisissez une communauté basée sur vos intérêts, votre région ou un but général. Chaque communauté est gérée par une organisation ou un individu entièrement indépendant.", + "button": { + "category": { + "all": "Tout", + "all_accessiblity_description": "Catégorie: Toutes", + "academia": "domaine universitaire", + "activism": "activisme", + "food": "nourriture", + "furry": "furry", + "games": "jeux", + "general": "général", + "journalism": "journalisme", + "lgbt": "lgbt", + "regional": "régional", + "art": "art", + "music": "musique", + "tech": "tech" + }, + "see_less": "Voir moins", + "see_more": "Voir plus" + }, + "label": { + "language": "LANGUE", + "users": "UTILISATEUR·RICE·S", + "category": "CATÉGORIE" + }, + "input": { + "placeholder": "Trouvez un serveur ou rejoignez le vôtre...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Recherche des serveurs disponibles...", + "bad_network": "Une erreur s'est produite lors du chargement des données. Vérifiez votre connexion Internet.", + "no_results": "Aucun résultat" + } + }, + "register": { + "title": "Parlez-nous de vous.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Supprimer" + }, + "username": { + "placeholder": "nom d'utilisateur", + "duplicate_prompt": "Ce nom d'utilisateur est déjà pris." + }, + "display_name": { + "placeholder": "nom affiché" + }, + "email": { + "placeholder": "courriel" + }, + "password": { + "placeholder": "mot de passe", + "require": "Votre mot de passe doit être composé d’au moins :", + "character_limit": "8 caractères", + "accessibility": { + "checked": "vérifié", + "unchecked": "non vérifié" + }, + "hint": "Votre mot de passe doit contenir au moins 8 caractères" + }, + "invite": { + "registration_user_invite_request": "Pourquoi voulez-vous vous inscrire ?" + } + }, + "error": { + "item": { + "username": "Nom d’utilisateur", + "email": "Courriel", + "password": "Mot de passe", + "agreement": "Accord", + "locale": "Lieu", + "reason": "Raison" + }, + "reason": { + "blocked": "%s contient un fournisseur courriel proscrit", + "unreachable": "%s ne semble pas exister", + "taken": "%s est déjà utilisé", + "reserved": "%s est un mot clé réservé", + "accepted": "%s doit être accepté", + "blank": "%s est requis", + "invalid": "%s est invalide", + "too_long": "%s est trop long", + "too_short": "%s est trop court", + "inclusion": "%s n’est pas une valeur acceptée" + }, + "special": { + "username_invalid": "Le nom d’utilisateur ne doit que contenir des caractères alphanumériques et des traits de soulignements", + "username_too_long": "Le nom d’utilisateur est trop long (ne doit pas dépasser 30 caractères)", + "email_invalid": "Cette adresse courriel n’est pas valide", + "password_too_short": "Le mot de passe est trop court (doit contenir au moins 8 caractères)" + } + } + }, + "server_rules": { + "title": "Règles de base.", + "subtitle": "Ces règles sont mis en place par les administrateurs de %s.", + "prompt": "En continuant, vous êtes assujettis à l’entente de service et la politique de confidentialité de %s.", + "terms_of_service": "entente de service", + "privacy_policy": "politique de confidentialité", + "button": { + "confirm": "J’accepte" + } + }, + "confirm_email": { + "title": "Une dernière chose.", + "subtitle": "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Ouvrir l’application de courriel", + "resend": "Renvoyer" + }, + "dont_receive_email": { + "title": "Vérifier vos courriels", + "description": "Vérifiez que votre adresse courriel est valide ainsi que votre fichier spam si ce n’est pas déjà fait.", + "resend_email": "Renvoyer le courriel" + }, + "open_email_app": { + "title": "Vérifier votre boîte aux lettres.", + "description": "Nous venons de vous envoyer un courriel. Vérifier votre fichier spam si vous ne l’avez pas déjà fait.", + "mail": "Courriel", + "open_email_client": "Ouvrir le client de messagerie" + } + }, + "home_timeline": { + "title": "Accueil", + "navigation_bar_state": { + "offline": "Hors ligne", + "new_posts": "Voir les nouvelles publications", + "published": "Publié!", + "Publishing": "Publication en cours ...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Trouver des personnes à suivre", + "follow_explain": "Quand vous suivez quelqu'un, vous verrez leurs messages dans votre flux d’accueil." + }, + "compose": { + "title": { + "new_post": "Nouvelle Publication", + "new_reply": "Nouvelle réponse" + }, + "media_selection": { + "camera": "Prendre une photo", + "photo_library": "Bibliothèque d'images", + "browse": "Parcourir" + }, + "content_input_placeholder": "Tapez ou collez ce qui est sur votre esprit", + "compose_action": "Publier", + "replying_to_user": "répondre à %s", + "attachment": { + "photo": "photo", + "video": "vidéo", + "attachment_broken": "Ce %s est brisé et ne peut pas être\ntéléversé sur Mastodon.", + "description_photo": "Décrire cette photo pour les personnes malvoyantes...", + "description_video": "Décrire cette vidéo pour les personnes malvoyantes..." + }, + "poll": { + "duration_time": "Durée: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Heure", + "six_hours": "6 Heures", + "one_day": "1 Jour", + "three_days": "3 jour", + "seven_days": "7 jour", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Écrivez un avertissement précis ici..." + }, + "visibility": { + "public": "Public", + "unlisted": "Non listé", + "private": "Abonnés seulement", + "direct": "Seulement les personnes que je mentionne" + }, + "auto_complete": { + "space_to_add": "Espace à ajouter" + }, + "accessibility": { + "append_attachment": "Joindre un document", + "append_poll": "Ajouter un Sondage", + "remove_poll": "Retirer le sondage", + "custom_emoji_picker": "Sélecteur d’émojis personnalisés", + "enable_content_warning": "Basculer l’avertissement de contenu", + "disable_content_warning": "Désactiver l'avertissement de contenu", + "post_visibility_menu": "Menu de Visibilité de la publication" + }, + "keyboard": { + "discard_post": "Rejeter la publication", + "publish_post": "Publier la publication", + "toggle_poll": "Basculer le sondage", + "toggle_content_warning": "Basculer l’avertissement de contenu", + "append_attachment_entry": "Ajouter une pièce jointe - %s", + "select_visibility_entry": "Sélectionnez la Visibilité - %s" + } + }, + "profile": { + "dashboard": { + "posts": "publications", + "following": "abonnements", + "followers": "abonnés" + }, + "fields": { + "add_row": "Ajouter une rangée", + "placeholder": { + "label": "Étiquette", + "content": "Contenu" + } + }, + "segmented_control": { + "posts": "Publications", + "replies": "Réponses", + "posts_and_replies": "Messages et réponses", + "media": "Média", + "about": "À propos" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Masquer le compte", + "message": "Êtes-vous sûr de vouloir mettre en sourdine %s" + }, + "confirm_unmute_user": { + "title": "Ne plus mettre en sourdine ce compte", + "message": "Êtes-vous sûr de vouloir désactiver la sourdine de %s" + }, + "confirm_block_user": { + "title": "Bloquer le compte", + "message": "Confirmer le blocage de %s" + }, + "confirm_unblock_user": { + "title": "Débloquer le compte", + "message": "Confirmer le déblocage de %s" + } + }, + "accessibility": { + "show_avatar_image": "Afficher l’avatar", + "edit_avatar_image": "Modifier l’avatar", + "show_banner_image": "Afficher l’image de la bannière", + "double_tap_to_open_the_list": "Appuyer deux fois pour ouvrir la liste" + } + }, + "follower": { + "footer": "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s." + }, + "following": { + "footer": "Les abonnés issus des autres serveurs ne sont pas affichés." + }, + "search": { + "title": "Rechercher", + "search_bar": { + "placeholder": "Rechercher des hashtags et des utilisateurs", + "cancel": "Annuler" + }, + "recommend": { + "button_text": "Tout Voir", + "hash_tag": { + "title": "Tendance sur Mastodon", + "description": "Les hashtags qui reçoivent pas mal d'attention", + "people_talking": "%s personnes parlent" + }, + "accounts": { + "title": "Comptes que vous pourriez aimer", + "description": "Vous aimeriez peut-être suivre ces comptes", + "follow": "Suivre" + } + }, + "searching": { + "segment": { + "all": "Tout", + "people": "Personnes", + "hashtags": "Hashtags", + "posts": "Publications" + }, + "empty_state": { + "no_results": "Aucun résultat" + }, + "recent_search": "Recherches récentes", + "clear": "Effacer" + } + }, + "discovery": { + "tabs": { + "posts": "Messages", + "hashtags": "Hashtags", + "news": "Actualité", + "community": "Community", + "for_you": "Pour vous" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Vos favoris" + }, + "notification": { + "title": { + "Everything": "Tout", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "s’est abonné à vous", + "favorited_your_post": "a ajouté votre message à ses favoris", + "reblogged_your_post": "a partagé votre message", + "mentioned_you": "vous a mentionné", + "request_to_follow_you": "vous a envoyé une demande d’abonnement", + "poll_has_ended": "le sondage est terminé" + }, + "keyobard": { + "show_everything": "Tout Afficher", + "show_mentions": "Afficher les mentions" + } + }, + "thread": { + "back_title": "Publication", + "title": "Publication de %s" + }, + "settings": { + "title": "Paramètres", + "section": { + "appearance": { + "title": "Apparence", + "automatic": "Automatique", + "light": "Toujours claire", + "dark": "Toujours sombre" + }, + "look_and_feel": { + "title": "Apparence", + "use_system": "Utiliser le thème du système", + "really_dark": "Très sombre", + "sorta_dark": "Légèrement sombre", + "light": "Clair" + }, + "notifications": { + "title": "Notifications", + "favorites": "Ajoute l’une de mes publications à ses favoris", + "follows": "Me suit", + "boosts": "Reblogue mon message", + "mentions": "Me mentionne", + "trigger": { + "anyone": "n’importe qui", + "follower": "un abonné", + "follow": "toute personne que je suis", + "noone": "personne", + "title": "Me notifier lorsque" + } + }, + "preference": { + "title": "Préférences", + "true_black_dark_mode": "Vrai mode sombre", + "disable_avatar_animation": "Désactiver les avatars animés", + "disable_emoji_animation": "Désactiver les émojis animées", + "using_default_browser": "Utiliser le navigateur par défaut pour ouvrir les liens", + "open_links_in_mastodon": "Ouvrir les liens dans Mastodon" + }, + "boring_zone": { + "title": "La zone ennuyante", + "account_settings": "Paramètres du compte", + "terms": "Entente de service", + "privacy": "Politique de confidentialité" + }, + "spicy_zone": { + "title": "La Zone Épicée", + "clear": "Vider le cache des médias", + "signout": "Se déconnecter" + } + }, + "footer": { + "mastodon_description": "Mastodon est un logiciel open source. Vous pouvez rapporter des problèmes sur GitHub au %s (%s)" + }, + "keyboard": { + "close_settings_window": "Fermer la fenêtre des paramètres" + } + }, + "report": { + "title_report": "Signalement", + "title": "Signaler %s", + "step1": "Étape 1 de 2", + "step2": "Étape 2 de 2", + "content1": "Y a-t-il d’autres messages que vous aimeriez ajouter au signalement?", + "content2": "Y a-t-il quelque chose que les modérateurs devraient savoir sur ce rapport ?", + "report_sent_title": "Merci de nous l’avoir signalé, nous allons examiner cela.", + "send": "Envoyer le rapport", + "skip_to_send": "Envoyer sans commentaire", + "text_placeholder": "Tapez ou collez des informations supplémentaires", + "reported": "SIGNALÉ", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Fermer l'aperçu", + "show_next": "Afficher le suivant", + "show_previous": "Afficher le précédent" + } + }, + "account_list": { + "tab_bar_hint": "Profil sélectionné actuel: %s. Double appui puis maintenez enfoncé pour afficher le changement de compte", + "dismiss_account_switcher": "Rejeter le commutateur de compte", + "add_account": "Ajouter un compte" + }, + "wizard": { + "new_in_mastodon": "Nouveau dans Mastodon", + "multiple_account_switch_intro_description": "Basculez entre plusieurs comptes en appuyant de maniere prolongée sur le bouton profil.", + "accessibility_hint": "Tapotez deux fois pour fermer cet assistant" + } + } +} \ No newline at end of file From 85cfd0893560f6199bf76a9a250fa7ff0468abac Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:57 +0200 Subject: [PATCH 248/571] New translations app.json (Spanish) --- .../StringsConvertor/input/es.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/es.lproj/app.json diff --git a/Localization/StringsConvertor/input/es.lproj/app.json b/Localization/StringsConvertor/input/es.lproj/app.json new file mode 100644 index 000000000..6c3bd091e --- /dev/null +++ b/Localization/StringsConvertor/input/es.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Por favor, vuelve a intentarlo.", + "please_try_again_later": "Por favor, vuelve a intentarlo más tarde." + }, + "sign_up_failure": { + "title": "Error al registrarse" + }, + "server_error": { + "title": "Error del servidor" + }, + "vote_failure": { + "title": "Voto fallido", + "poll_ended": "La encuesta ha terminado" + }, + "discard_post_content": { + "title": "Descartar borrador", + "message": "Confirma para descartar el contenido de la publicación." + }, + "publish_post_failure": { + "title": "Error de publicación", + "message": "No se pudo publicar la publicación.\nPor favor, revise su conexión a internet.", + "attachments_message": { + "video_attach_with_photo": "No puedes adjuntar un vídeo a una publicación que ya contiene imágenes.", + "more_than_one_video": "No puedes adjuntar más de un vídeo." + } + }, + "edit_profile_failure": { + "title": "Error en la Edición del Perfil", + "message": "No se ha podido editar el perfil. Por favor, inténtalo de nuevo." + }, + "sign_out": { + "title": "Cerrar Sesión", + "message": "¿Estás seguro de que deseas cerrar la sesión?", + "confirm": "Cerrar Sesión" + }, + "block_domain": { + "title": "¿Estás realmente seguro, de verdad, de que quieres bloquear %s al completo? En la mayoría de los casos, unos pocos bloqueos o silenciados concretos son suficientes y preferibles. No verás contenido de ese dominio y todos tus seguidores de ese dominio serán eliminados.", + "block_entire_domain": "Bloquear Dominio" + }, + "save_photo_failure": { + "title": "Error al Guardar Foto", + "message": "Por favor, activa el permiso de acceso a la biblioteca de fotos para guardar la foto." + }, + "delete_post": { + "title": "¿Estás seguro de que deseas eliminar esta publicación?", + "message": "¿Estás seguro de que quieres borrar esta publicación?" + }, + "clean_cache": { + "title": "Limpiar Caché", + "message": "Se han limpiado con éxito %s de caché." + } + }, + "controls": { + "actions": { + "back": "Atrás", + "next": "Siguiente", + "previous": "Anterior", + "open": "Abrir", + "add": "Añadir", + "remove": "Eliminar", + "edit": "Editar", + "save": "Guardar", + "ok": "Aceptar", + "done": "Hecho", + "confirm": "Confirmar", + "continue": "Continuar", + "compose": "Redactar", + "cancel": "Cancelar", + "discard": "Descartar", + "try_again": "Inténtalo de nuevo", + "take_photo": "Tomar foto", + "save_photo": "Guardar foto", + "copy_photo": "Copiar foto", + "sign_in": "Iniciar sesión", + "sign_up": "Regístrate", + "see_more": "Ver más", + "preview": "Vista previa", + "share": "Compartir", + "share_user": "Compartir %s", + "share_post": "Compartir publicación", + "open_in_safari": "Abrir en Safari", + "open_in_browser": "Abrir en el navegador", + "find_people": "Encuentra gente a la que seguir", + "manually_search": "Mejor hacer una búsqueda manual", + "skip": "Omitir", + "reply": "Responder", + "report_user": "Reportar a %s", + "block_domain": "Bloquear %s", + "unblock_domain": "Desbloquear %s", + "settings": "Configuración", + "delete": "Borrar" + }, + "tabs": { + "home": "Inicio", + "search": "Buscar", + "notification": "Notificación", + "profile": "Perfil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Cambiar a %s", + "compose_new_post": "Escribir Nueva Publicación", + "show_favorites": "Mostrar Favoritos", + "open_settings": "Abrir Configuración" + }, + "timeline": { + "previous_status": "Publicación Anterior", + "next_status": "Siguiente Publicación", + "open_status": "Abrir Publicación", + "open_author_profile": "Abrir Perfil del Autor", + "open_reblogger_profile": "Abrir Perfil del Reblogueador", + "reply_status": "Responder Publicación", + "toggle_reblog": "Conmutar el Reblogueo en la Publicación", + "toggle_favorite": "Conmutar la Marca de Favorito en la Publicación", + "toggle_content_warning": "Alternar la Advertencia de Contenido", + "preview_image": "Previsualizar Imagen" + }, + "segmented_control": { + "previous_section": "Sección Anterior", + "next_section": "Siguiente Sección" + } + }, + "status": { + "user_reblogged": "%s lo reblogueó", + "user_replied_to": "En respuesta a %s", + "show_post": "Mostrar Publicación", + "show_user_profile": "Mostrar perfil del usuario", + "content_warning": "Advertencia de Contenido", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Pulsa en cualquier sitio para mostrar", + "tap_to_reveal": "Tocar para revelar", + "poll": { + "vote": "Vota", + "closed": "Cerrado" + }, + "actions": { + "reply": "Responder", + "reblog": "Rebloguear", + "unreblog": "Deshacer reblogueo", + "favorite": "Favorito", + "unfavorite": "No favorito", + "menu": "Menú", + "hide": "Ocultar", + "show_image": "Mostrar imagen", + "show_gif": "Mostrar GIF", + "show_video_player": "Mostrar reproductor de vídeo", + "tap_then_hold_to_show_menu": "Toca, después mantén para mostrar el menú" + }, + "tag": { + "url": "URL", + "mention": "Mención", + "link": "Enlace", + "hashtag": "Etiqueta", + "email": "E-mail", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Todo el mundo puede ver este post pero no mostrar en la línea de tiempo pública.", + "private": "Sólo sus seguidores pueden ver este mensaje.", + "private_from_me": "Sólo mis seguidores pueden ver este mensaje.", + "direct": "Sólo el usuario mencionado puede ver este mensaje." + } + }, + "friendship": { + "follow": "Seguir", + "following": "Siguiendo", + "request": "Solicitud", + "pending": "Pendiente", + "block": "Bloquear", + "block_user": "Bloquear a %s", + "block_domain": "Bloquear a %s", + "unblock": "Desbloquear", + "unblock_user": "Desbloquear a %s", + "blocked": "Bloqueado", + "mute": "Silenciar", + "mute_user": "Silenciar a %s", + "unmute": "Desmutear", + "unmute_user": "Desmutear a %s", + "muted": "Silenciado", + "edit_info": "Editar Info" + }, + "timeline": { + "filtered": "Filtrado", + "timestamp": { + "now": "Ahora" + }, + "loader": { + "load_missing_posts": "Cargar publicaciones faltantes", + "loading_missing_posts": "Cargando publicaciones faltantes...", + "show_more_replies": "Mostrar más respuestas" + }, + "header": { + "no_status_found": "No se ha encontrado ninguna publicación", + "blocking_warning": "No puedes ver el perfil de este usuario\n hasta que lo desbloquees.\nTu perfil se ve así para él.", + "user_blocking_warning": "No puedes ver el perfil de %s\n hasta que lo desbloquees.\nTu perfil se ve así para él.", + "blocked_warning": "No puedes ver el perfil de este usuario\n hasta que te desbloquee.", + "user_blocked_warning": "No puedes ver el perfil de %s\n hasta que te desbloquee.", + "suspended_warning": "Este usuario ha sido suspendido.", + "user_suspended_warning": "La cuenta de %s ha sido suspendida." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Las redes sociales\nde nuevo en tus manos.", + "get_started": "Empezar", + "log_in": "Iniciar sesión" + }, + "server_picker": { + "title": "Elige un servidor,\ncualquier servidor.", + "subtitle": "Elige una comunidad relacionada con tus intereses, con tu región o una más genérica.", + "subtitle_extend": "Elige una comunidad relacionada con tus intereses, con tu región o una más genérica. Cada comunidad está operada por una organización o individuo completamente independiente.", + "button": { + "category": { + "all": "Todas", + "all_accessiblity_description": "Categoría: Todas", + "academia": "académicos", + "activism": "activismo", + "food": "comida", + "furry": "furry", + "games": "juegos", + "general": "general", + "journalism": "periodismo", + "lgbt": "lgbt", + "regional": "regional", + "art": "arte", + "music": "música", + "tech": "tecnología" + }, + "see_less": "Ver Menos", + "see_more": "Ver Más" + }, + "label": { + "language": "IDIOMA", + "users": "USUARIOS", + "category": "CATEGORÍA" + }, + "input": { + "placeholder": "Encuentra un servidor o únete al tuyo propio...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Encontrando servidores disponibles...", + "bad_network": "Algo ha ido mal al cargar los datos. Comprueba tu conexión a Internet.", + "no_results": "Sin resultados" + } + }, + "register": { + "title": "Háblanos de ti.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Borrar" + }, + "username": { + "placeholder": "nombre de usuario", + "duplicate_prompt": "Este nombre de usuario ya está en uso." + }, + "display_name": { + "placeholder": "nombre a mostrar" + }, + "email": { + "placeholder": "correo electrónico" + }, + "password": { + "placeholder": "contraseña", + "require": "Tu contraseña debe contener como mínimo:", + "character_limit": "8 caracteres", + "accessibility": { + "checked": "marcado", + "unchecked": "sin marcar" + }, + "hint": "Tu contraseña necesita tener al menos ocho caracteres" + }, + "invite": { + "registration_user_invite_request": "¿Por qué quieres unirte?" + } + }, + "error": { + "item": { + "username": "Nombre de usuario", + "email": "Correo electrónico", + "password": "Contraseña", + "agreement": "Aceptación", + "locale": "Idioma", + "reason": "Motivo" + }, + "reason": { + "blocked": "%s contiene un proveedor de correo no permitido", + "unreachable": "%s parece no existir", + "taken": "%s ya está en uso", + "reserved": "%s es una palabra clave reservada", + "accepted": "%s debe ser aceptado", + "blank": "Se requiere %s", + "invalid": "%s no es válido", + "too_long": "%s es demasiado largo", + "too_short": "%s es demasiado corto", + "inclusion": "%s no es un valor admitido" + }, + "special": { + "username_invalid": "El nombre de usuario solo puede contener caracteres alfanuméricos y guiones bajos", + "username_too_long": "El nombre de usuario es demasiado largo (no puede tener más de 30 caracteres)", + "email_invalid": "Esta no es una dirección de correo electrónico válida", + "password_too_short": "La contraseña es demasiado corta (debe tener al menos 8 caracteres)" + } + } + }, + "server_rules": { + "title": "Algunas reglas básicas.", + "subtitle": "Estas reglas están establecidas por los administradores de %s.", + "prompt": "Si continúas estarás sujeto a los términos de servicio y la política de privacidad de %s.", + "terms_of_service": "términos del servicio", + "privacy_policy": "política de privacidad", + "button": { + "confirm": "Acepto" + } + }, + "confirm_email": { + "title": "Una última cosa.", + "subtitle": "Te acabamos de enviar un correo a %s,\npulsa en el enlace para confirmar tu cuenta.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Abrir Aplicación de Correo Electrónico", + "resend": "Reenviar" + }, + "dont_receive_email": { + "title": "Revisa tu correo electrónico", + "description": "Comprueba que tu dirección de correo electrónico sea correcta y revisa la carpeta de correo no deseado si no lo has hecho ya.", + "resend_email": "Volver a Enviar Correo Electrónico" + }, + "open_email_app": { + "title": "Revisa tu bandeja de entrada.", + "description": "Te acabamos de enviar un correo electrónico. Revisa tu carpeta de correo no deseado si no lo has hecho ya.", + "mail": "Correo", + "open_email_client": "Abrir Cliente de Correo Electrónico" + } + }, + "home_timeline": { + "title": "Inicio", + "navigation_bar_state": { + "offline": "Sin Conexión", + "new_posts": "Ver nuevas publicaciones", + "published": "¡Publicado!", + "Publishing": "Publicación en curso...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Encuentra Gente a la que Seguir", + "follow_explain": "Cuando sigas a alguien verás sus publicaciones en tu página de inicio." + }, + "compose": { + "title": { + "new_post": "Nueva Publicación", + "new_reply": "Nueva Respuesta" + }, + "media_selection": { + "camera": "Hacer Foto", + "photo_library": "Galería de Fotos", + "browse": "Explorar" + }, + "content_input_placeholder": "Escribe o pega lo que tengas en mente", + "compose_action": "Publicar", + "replying_to_user": "en respuesta a %s", + "attachment": { + "photo": "foto", + "video": "vídeo", + "attachment_broken": "Este %s está roto y no puede\nsubirse a Mastodon.", + "description_photo": "Describe la foto para los usuarios con dificultad visual...", + "description_video": "Describe el vídeo para los usuarios con dificultad visual..." + }, + "poll": { + "duration_time": "Duración: %s", + "thirty_minutes": "30 minutos", + "one_hour": "1 Hora", + "six_hours": "6 Horas", + "one_day": "1 Día", + "three_days": "4 Días", + "seven_days": "7 Días", + "option_number": "Opción %ld" + }, + "content_warning": { + "placeholder": "Escribe una advertencia precisa aquí..." + }, + "visibility": { + "public": "Pública", + "unlisted": "Sin listar", + "private": "Solo seguidores", + "direct": "Solo la gente que yo menciono" + }, + "auto_complete": { + "space_to_add": "Espacio para añadir" + }, + "accessibility": { + "append_attachment": "Añadir Adjunto", + "append_poll": "Añadir Encuesta", + "remove_poll": "Eliminar Encuesta", + "custom_emoji_picker": "Selector de Emojis Personalizados", + "enable_content_warning": "Activar Advertencia de Contenido", + "disable_content_warning": "Desactivar Advertencia de Contenido", + "post_visibility_menu": "Menú de Visibilidad de la Publicación" + }, + "keyboard": { + "discard_post": "Descartar Publicación", + "publish_post": "Publicar", + "toggle_poll": "Conmutar Encuesta", + "toggle_content_warning": "Conmutar Advertencia de Contenido", + "append_attachment_entry": "Añadir Adjunto - %s", + "select_visibility_entry": "Seleccionar Visibilidad - %s" + } + }, + "profile": { + "dashboard": { + "posts": "publicaciones", + "following": "siguiendo", + "followers": "seguidores" + }, + "fields": { + "add_row": "Añadir Fila", + "placeholder": { + "label": "Nombre para el campo", + "content": "Contenido" + } + }, + "segmented_control": { + "posts": "Publicaciones", + "replies": "Respuestas", + "posts_and_replies": "Publicaciones y respuestas", + "media": "Multimedia", + "about": "Acerca de" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Silenciar cuenta", + "message": "Confirmar para silenciar %s" + }, + "confirm_unmute_user": { + "title": "Dejar de Silenciar Cuenta", + "message": "Confirmar para dejar de silenciar a %s" + }, + "confirm_block_user": { + "title": "Bloquear cuenta", + "message": "Confirmar para bloquear a %s" + }, + "confirm_unblock_user": { + "title": "Desbloquear cuenta", + "message": "Confirmar para desbloquear a %s" + } + }, + "accessibility": { + "show_avatar_image": "Mostrar imagen del avatar", + "edit_avatar_image": "Editar imagen del avatar", + "show_banner_image": "Mostrar imagen de banner", + "double_tap_to_open_the_list": "Pulsa dos veces para abrir la lista" + } + }, + "follower": { + "footer": "No se muestran los seguidores de otros servidores." + }, + "following": { + "footer": "No se muestran los seguidos de otros servidores." + }, + "search": { + "title": "Buscar", + "search_bar": { + "placeholder": "Buscar etiquetas y usuarios", + "cancel": "Cancelar" + }, + "recommend": { + "button_text": "Ver Todas", + "hash_tag": { + "title": "Tendencias en Mastodon", + "description": "Etiquetas que están recibiendo bastante atención", + "people_talking": "%s personas están hablando de esto" + }, + "accounts": { + "title": "Cuentas que quizá quieras seguir", + "description": "Puede que guste seguir estas cuentas", + "follow": "Seguir" + } + }, + "searching": { + "segment": { + "all": "Todo", + "people": "Gente", + "hashtags": "Etiquetas", + "posts": "Publicaciones" + }, + "empty_state": { + "no_results": "Sin resultados" + }, + "recent_search": "Búsquedas recientes", + "clear": "Borrar" + } + }, + "discovery": { + "tabs": { + "posts": "Publicaciones", + "hashtags": "Etiquetas", + "news": "Noticias", + "community": "Community", + "for_you": "Para Ti" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Tus Favoritos" + }, + "notification": { + "title": { + "Everything": "Todo", + "Mentions": "Menciones" + }, + "notification_description": { + "followed_you": "te siguió", + "favorited_your_post": "ha marcado como favorita tu publicación", + "reblogged_your_post": "reblogueó tu publicación", + "mentioned_you": "te mencionó", + "request_to_follow_you": "solicitó seguirte", + "poll_has_ended": "encuesta ha terminado" + }, + "keyobard": { + "show_everything": "Mostrar Todo", + "show_mentions": "Mostrar Menciones" + } + }, + "thread": { + "back_title": "Publicación", + "title": "Publicación de %s" + }, + "settings": { + "title": "Configuración", + "section": { + "appearance": { + "title": "Apariencia", + "automatic": "Automática", + "light": "Siempre Clara", + "dark": "Siempre Oscura" + }, + "look_and_feel": { + "title": "Apariencia", + "use_system": "Uso del sistema", + "really_dark": "Realmente Oscuro", + "sorta_dark": "Más o Menos Oscuro", + "light": "Claro" + }, + "notifications": { + "title": "Notificaciones", + "favorites": "Marque como favorita mi publicación", + "follows": "Me siga", + "boosts": "Rebloguee mi publicación", + "mentions": "Me mencione", + "trigger": { + "anyone": "cualquiera", + "follower": "un seguidor", + "follow": "cualquiera que yo siga", + "noone": "nadie", + "title": "Recibir notificación cuando" + } + }, + "preference": { + "title": "Preferencias", + "true_black_dark_mode": "Modo oscuro negro real", + "disable_avatar_animation": "Deshabilitar avatares animados", + "disable_emoji_animation": "Deshabilitar emojis animados", + "using_default_browser": "Usar navegador predeterminado para abrir los enlaces", + "open_links_in_mastodon": "Abrir links en Mastodon" + }, + "boring_zone": { + "title": "La Zona Aburrida", + "account_settings": "Configuración de Cuenta", + "terms": "Términos de Servicio", + "privacy": "Política de Privacidad" + }, + "spicy_zone": { + "title": "La Zona Picante", + "clear": "Borrar Caché de Multimedia", + "signout": "Cerrar Sesión" + } + }, + "footer": { + "mastodon_description": "Mastodon es software de código abierto. Puedes reportar errores en GitHub en %s (%s)" + }, + "keyboard": { + "close_settings_window": "Cerrar Ventana de Configuración" + } + }, + "report": { + "title_report": "Reportar", + "title": "Reportar %s", + "step1": "Paso 1 de 2", + "step2": "Paso 2 de 2", + "content1": "¿Hay alguna otra publicación que te gustaría añadir al reporte?", + "content2": "¿Hay algo que los moderadores deberían saber acerca de este reporte?", + "report_sent_title": "Gracias por reportar, estudiaremos esto.", + "send": "Enviar Reporte", + "skip_to_send": "Enviar sin comentarios", + "text_placeholder": "Escribe o pega comentarios adicionales", + "reported": "REPORTADO", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Cerrar Previsualización", + "show_next": "Mostrar Siguiente", + "show_previous": "Mostrar Anterior" + } + }, + "account_list": { + "tab_bar_hint": "Perfil seleccionado actualmente: %s. Haz un doble toque y mantén pulsado para mostrar el selector de cuentas", + "dismiss_account_switcher": "Descartar el selector de cuentas", + "add_account": "Añadir cuenta" + }, + "wizard": { + "new_in_mastodon": "Nuevo en Mastodon", + "multiple_account_switch_intro_description": "Cambie entre varias cuentas manteniendo presionado el botón de perfil.", + "accessibility_hint": "Haz doble toque para descartar este asistente" + } + } +} \ No newline at end of file From cf698ae826e4fbd96a327816d89b7b9b410d4d03 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:58 +0200 Subject: [PATCH 249/571] New translations app.json (Arabic) --- .../StringsConvertor/input/ar.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ar.lproj/app.json diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json new file mode 100644 index 000000000..6b41bdf88 --- /dev/null +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "يُرجى المُحاولة مرة أُخرى.", + "please_try_again_later": "يُرجى المُحاولة مرة أُخرى لاحقًا." + }, + "sign_up_failure": { + "title": "إخفاق في التسجيل" + }, + "server_error": { + "title": "خطأ في الخادم" + }, + "vote_failure": { + "title": "إخفاق في التصويت", + "poll_ended": "انتهى استطلاع الرأي" + }, + "discard_post_content": { + "title": "التخلص من المسودة", + "message": "أكِّد للتخلص مِن مُحتوى مَنشور مؤلَّف." + }, + "publish_post_failure": { + "title": "إخفاق في عمليَّة النشر", + "message": "فَشَلَ نَشر المَنشور.\nيُرجى التحقق من اتصالك بالإنترنت.", + "attachments_message": { + "video_attach_with_photo": "لا يُمكن إرفاق مقطع مرئي إلى مَنشور يحتوي بالفعل على صُوَر.", + "more_than_one_video": "لا يُمكِنُ إرفاق أكثر مِن مَقطع مرئي واحِد." + } + }, + "edit_profile_failure": { + "title": "خطأ في تَحرير الملف التعريفي", + "message": "يتعذَّر تعديل الملف التعريفي. يُرجى المُحاولة مرة أُخرى." + }, + "sign_out": { + "title": "تَسجيلُ الخُروج", + "message": "هل أنت متأكد من رغبتك في تسجيل الخُروج؟", + "confirm": "تَسجيلُ الخُروج" + }, + "block_domain": { + "title": "هل أنتَ مُتأكِّدٌ حقًا مِن رغبتك في حظر %s بالكامل؟ في معظم الحالات، يكون مِنَ الكافي والمُفَضَّل استهداف عدد محدود للحظر أو الكتم. لن ترى محتوى من هذا النطاق وسوف يُزال جميع متابعيك المتواجدين فيه.", + "block_entire_domain": "حظر النِّطاق" + }, + "save_photo_failure": { + "title": "إخفاق في حفظ الصورة", + "message": "يُرجى إتاحة إذن الوصول إلى مكتبة الصور لحفظ الصورة." + }, + "delete_post": { + "title": "هل أنت متأكد من رغبتك في حذف هذا المنشور؟", + "message": "هَل أنتَ مُتأكِدٌ مِن رَغبتِكَ فِي حَذفِ هَذَا المَنشُور؟" + }, + "clean_cache": { + "title": "مَحوُ ذاكِرَةِ التَّخزينِ المُؤقَّت", + "message": "مُحِيَ ما مَساحَتُهُ %s مِن ذاكِرَةِ التَّخزينِ المُؤقَّت بِنجاح." + } + }, + "controls": { + "actions": { + "back": "العودة", + "next": "التالي", + "previous": "السابق", + "open": "فتح", + "add": "إضافة", + "remove": "حذف", + "edit": "تَحرير", + "save": "حفظ", + "ok": "حسنًا", + "done": "تمّ", + "confirm": "تأكيد", + "continue": "واصل", + "compose": "تأليف", + "cancel": "إلغاء", + "discard": "تجاهُل", + "try_again": "المُحاولة مرة أُخرى", + "take_photo": "اِلتِقاطُ صُورَة", + "save_photo": "حفظ الصورة", + "copy_photo": "نسخ الصورة", + "sign_in": "تسجيل الدخول", + "sign_up": "إنشاء حِساب", + "see_more": "عرض المزيد", + "preview": "مُعاينة", + "share": "المُشارك", + "share_user": "مُشارَكَةُ %s", + "share_post": "مشارك المنشور", + "open_in_safari": "الفَتحُ في Safari", + "open_in_browser": "الفَتحُ في المُتَصَفِّح", + "find_people": "ابحث عن أشخاص لِمُتابعتهم", + "manually_search": "البحث يدويًا بدلًا من ذلك", + "skip": "تخطي", + "reply": "الرَّد", + "report_user": "الإبلاغُ عَن %s", + "block_domain": "حظر %s", + "unblock_domain": "رفع الحظر عن %s", + "settings": "الإعدادات", + "delete": "حذف" + }, + "tabs": { + "home": "الرَّئِيسَة", + "search": "البَحث", + "notification": "الإشعارات", + "profile": "المِلَفُّ التَّعريفِيّ" + }, + "keyboard": { + "common": { + "switch_to_tab": "التبديل إلى %s", + "compose_new_post": "تأليف منشور جديد", + "show_favorites": "أظْهِر المُفضَّلة", + "open_settings": "فَتحُ الإعدادات" + }, + "timeline": { + "previous_status": "المنشور السابق", + "next_status": "المنشور التالي", + "open_status": "فتح المنشور", + "open_author_profile": "فتح الملف التعريفي للمؤلف", + "open_reblogger_profile": "فتح الملف التعريفي لمُعيد تدوين المنشور", + "reply_status": "الرَّد على مَنشور", + "toggle_reblog": "تبديل إعادة تدوين مَنشور", + "toggle_favorite": "تبديل المفضلة لِمنشور", + "toggle_content_warning": "تبديل تحذير المُحتَوى", + "preview_image": "معاينة الصورة" + }, + "segmented_control": { + "previous_section": "القسم السابق", + "next_section": "القسم التالي" + } + }, + "status": { + "user_reblogged": "أعادَ %s تَدوينَها", + "user_replied_to": "رَدًا على %s", + "show_post": "أظْهِر مَنشور", + "show_user_profile": "أظْهِر المِلَفَّ التَّعريفِيَّ لِلمُستَخدِم", + "content_warning": "تحذير المُحتوى", + "sensitive_content": "مُحتَوى حَسَّاس", + "media_content_warning": "اُنقُر لِلكَشف", + "tap_to_reveal": "اُنقُر لِلكَشف", + "poll": { + "vote": "صَوِّت", + "closed": "انتهى" + }, + "actions": { + "reply": "الرَّد", + "reblog": "إعادة النشر", + "unreblog": "التراجُع عن إعادة النشر", + "favorite": "التفضيل", + "unfavorite": "إزالة التفضيل", + "menu": "القائمة", + "hide": "إخفاء", + "show_image": "أظْهِرِ الصُّورَة", + "show_gif": "أظْهِر GIF", + "show_video_player": "أظْهِر مُشَغِّلَ المَقاطِعِ المَرئِيَّة", + "tap_then_hold_to_show_menu": "اُنقُر مُطَوَّلًا لِإظْهَارِ القائِمَة" + }, + "tag": { + "url": "عنوان URL", + "mention": "إشارة", + "link": "رابط", + "hashtag": "وسم", + "email": "بَريدٌ إلِكتُرُونِيّ", + "emoji": "رمز تعبيري" + }, + "visibility": { + "unlisted": "يُمكِنُ لِلجَميعِ رُؤيَةُ هَذَا المَنشورِ وَلكِنَّهُ لَا يُعرَضُ فِي الخَطِّ الزَمنيّ العام.", + "private": "فَقَطْ مُتابِعينَهُم مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور.", + "private_from_me": "فَقَطْ مُتابِعيني أنَا مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور.", + "direct": "المُستخدمِونَ المُشارِ إليهم فَقَطْ مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور." + } + }, + "friendship": { + "follow": "مُتابَعَة", + "following": "مُتابَع", + "request": "إرسال طَلَب", + "pending": "قيد المُراجعة", + "block": "حظر", + "block_user": "حَظرُ %s", + "block_domain": "حظر %s", + "unblock": "رفع الحَظر", + "unblock_user": "رفع الحَظر عن %s", + "blocked": "محظور", + "mute": "كَتم", + "mute_user": "كَتمُ %s", + "unmute": "رفع الكتم", + "unmute_user": "رفع الكتم عن %s", + "muted": "مكتوم", + "edit_info": "تَحريرُ المَعلُومات" + }, + "timeline": { + "filtered": "مُصفَّى", + "timestamp": { + "now": "الآن" + }, + "loader": { + "load_missing_posts": "تحميل المَنشورات المَفقودَة", + "loading_missing_posts": "يَجري تحميل المَنشورات المَفقودَة...", + "show_more_replies": "أظْهِر مَزيدًا مِنَ الرُّدود" + }, + "header": { + "no_status_found": "لَم يُعْثَر على مَنشورات", + "blocking_warning": "لا يُمكِنُكَ الاِطلاع على الملف التَعريفي لهذا المُستخدِم\nحتَّى تَرفعَ الحَظر عنه.\nملفُّكَ التَعريفي يَظهَرُ بِمثل هذِهِ الحالة بالنسبةِ لَهُ أيضًا.", + "user_blocking_warning": "لا يُمكنك الاطلاع على ملف %s التَعريفي\nحتَّى تَرفعَ الحَظر عنه.\nملفُّكَ التَعريفي يَظهَرُ بِمثل هذِهِ الحالة بالنسبةِ لَهُ أيضًا.", + "blocked_warning": "لا يُمكِنُكَ عَرض الملف التَعريفي لهذا المُستخدِم\nحتَّى يَرفَعَ الحَظرَ عَنك.", + "user_blocked_warning": "لا يُمكِنُكَ عَرض ملف %s التَعريفي\nحتَّى يَرفَعَ الحَظر عَنك.", + "suspended_warning": "تمَّ إيقاف هذا المُستخدِم.", + "user_suspended_warning": "لقد أُوقِفَ حِساب %s." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "شبكات التواصل الاجتماعي\nمرة أُخرى بين يديك.", + "get_started": "ابدأ الآن", + "log_in": "تسجيلُ الدخول" + }, + "server_picker": { + "title": "اِختر خادِم،\nأيًّا مِنهُم.", + "subtitle": "اختر مجتمعًا بناءً على اهتماماتك، منطقتك أو يمكنك حتى اختيارُ مجتمعٍ ذي غرضٍ عام.", + "subtitle_extend": "اختر مجتمعًا بناءً على اهتماماتك، منطقتك أو يمكنك حتى اختيارُ مجتمعٍ ذي غرضٍ عام. تُشغَّل جميعُ المجتمعِ مِن قِبَلِ مُنظمَةٍ أو فردٍ مُستقلٍ تمامًا.", + "button": { + "category": { + "all": "الكل", + "all_accessiblity_description": "الفئة: الكل", + "academia": "أكاديمي", + "activism": "النشطاء", + "food": "الطعام", + "furry": "مكسو بالفرو", + "games": "ألعاب", + "general": "عام", + "journalism": "صحافة", + "lgbt": "مجتمع الشواذ", + "regional": "إقليمي", + "art": "فنون", + "music": "موسيقى", + "tech": "تقنية" + }, + "see_less": "عرض عناصر أقل", + "see_more": "عرض عناصر أكثر" + }, + "label": { + "language": "اللُّغة", + "users": "مُستَخدِم", + "category": "الفئة" + }, + "input": { + "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", + "search_servers_or_enter_url": "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL" + }, + "empty_state": { + "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", + "bad_network": "حدث خطأٌ ما أثناء تحميل البيانات. تحقَّق من اتصالك بالإنترنت.", + "no_results": "لا توجد نتائج" + } + }, + "register": { + "title": "أخبرنا عن نفسك.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "حذف" + }, + "username": { + "placeholder": "اِسمُ مُستَخدِم", + "duplicate_prompt": "اِسم المُستَخدِم هذا مأخوذٌ بالفعل." + }, + "display_name": { + "placeholder": "اِسمُ عَرض" + }, + "email": { + "placeholder": "بَريدٌ إلِكتُرُونِيّ" + }, + "password": { + "placeholder": "رمز سري", + "require": "رمز المرور الخاص بك يجب أن يحتوي على الأقل:", + "character_limit": "ثمانيةُ خانات", + "accessibility": { + "checked": "مُتَحَققٌ مِنه", + "unchecked": "غيرُ مُتَحَققٍ مِنه" + }, + "hint": "يَجِبُ أن يَحتَوي رَمزُكَ السِرِّيَ علَى ثَمانِ خاناتٍ أقلًا" + }, + "invite": { + "registration_user_invite_request": "لماذا ترغب في الانضمام؟" + } + }, + "error": { + "item": { + "username": "اِسمُ المُستَخدِم", + "email": "البريد الإلكتروني", + "password": "الرمز السري", + "agreement": "الاِتِّفاقيَّة", + "locale": "اللغة المحلية", + "reason": "السبب" + }, + "reason": { + "blocked": "يحتوي %s على موفِّر خدمة بريد إلكتروني غير مسموح به", + "unreachable": "يبدوا أنَّ %s غير موجود", + "taken": "إنَّ %s مُستخدَمٌ بالفعل", + "reserved": "إنَّ %s عبارة عن كلمة مفتاحيَّة محجوزة", + "accepted": "يجب أن يُقبل %s", + "blank": "%s مَطلوب", + "invalid": "%s غير صالح", + "too_long": "%s طويل جداً", + "too_short": "%s قصير جدًا", + "inclusion": "إنَّ %s قيمة غير مدعومة" + }, + "special": { + "username_invalid": "يُمكِن أن يحتوي اسم المستخدم على أحرف أبجدية، أرقام وشرطات سفلية فقط", + "username_too_long": "اِسم المُستَخدِم طويل جداً (يَجِبُ ألّا يكون أطول من ثلاثين خانة)", + "email_invalid": "هذا عنوان بريد إلكتروني غير صالح", + "password_too_short": "رمز السر قصير جدًا (يجب أن يتكون من ثمان خانات على الأقل)" + } + } + }, + "server_rules": { + "title": "بعض القواعد الأساسية.", + "subtitle": "سُنَّت هذه القواعد من قِبل مشرفي %s.", + "prompt": "في حال إختيارك للمواصلة، أنت تخضع لشروط الخدمة وسياسة الخصوصية لِـ%s.", + "terms_of_service": "شُرُوط الخِدمَة", + "privacy_policy": "سِياسَة الخُصُوصيَّة", + "button": { + "confirm": "أنا مُوافِق" + } + }, + "confirm_email": { + "title": "شيءٌ أخير.", + "subtitle": "أنقر على الرابط المرسل إليك لاستيثاق حسابك.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "فتح تطبيق البريد الإلكتروني", + "resend": "إعادَةُ الإرسال" + }, + "dont_receive_email": { + "title": "تحقق من بريدك الإلكتروني", + "description": "تحقق ممَّ إذا كان عنوان بريدك الإلكتروني صحيحًا، وكذلك تأكد مِن مجلد البريد غير الهام إذا لم تكن قد فعلت ذلك.", + "resend_email": "إعادة إرسال البريد الإلكتروني" + }, + "open_email_app": { + "title": "تحقَّق من بريدك الوارِد.", + "description": "لقد أرسلنا لك بريدًا إلكترونيًا للتو. تحقق من مجلد البريد غير الهام الخاص بك إذا لم تكن قد فعلت ذلك.", + "mail": "البريد", + "open_email_client": "فتح عميل البريد الإلكتروني" + } + }, + "home_timeline": { + "title": "الرَّئِيسَة", + "navigation_bar_state": { + "offline": "غَير مُتَّصِل", + "new_posts": "إظهار منشورات جديدة", + "published": "تمَّ النَّشر!", + "Publishing": "يَجري نَشر المُشارَكَة...", + "accessibility": { + "logo_label": "ُّزِرُّ الشِّعار", + "logo_hint": "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق" + } + } + }, + "suggestion_account": { + "title": "ابحث عن أشخاص لمتابعتهم", + "follow_explain": "عِندَ مُتابَعَتِكَ لأحدِهِم، سَوف تَرى مَنشوراته في تغذيَتِكَ الرئيسة." + }, + "compose": { + "title": { + "new_post": "مَنشُورٌ جَديد", + "new_reply": "رَدٌّ جديد" + }, + "media_selection": { + "camera": "اِلتِقاطُ صُورَة", + "photo_library": "مَكتَبَةُ الصُّوَر", + "browse": "تَصَفَّح" + }, + "content_input_placeholder": "عَبِّر عَمَّ يَجُولُ فِي ذِهنِك", + "compose_action": "نَشر", + "replying_to_user": "رَدًا على %s", + "attachment": { + "photo": "صورة", + "video": "مقطع مرئي", + "attachment_broken": "هذا ال%s مُعطَّل\nويتعذَّرُ رفعُه إلى ماستودون.", + "description_photo": "صِف الصورة للمَكفوفين...", + "description_video": "صِف المقطع المرئي للمَكفوفين..." + }, + "poll": { + "duration_time": "المُدَّة: %s", + "thirty_minutes": "ثلاثون دقيقة", + "one_hour": "ساعةٌ واحدة", + "six_hours": "سِتُّ ساعات", + "one_day": "يومٌ واحِد", + "three_days": "ثلاثةُ أيام", + "seven_days": "سبعةُ أيام", + "option_number": "الخيار %ld" + }, + "content_warning": { + "placeholder": "اكتب تَحذيرًا دَقيقًا هُنا..." + }, + "visibility": { + "public": "لِلعَامَّة", + "unlisted": "غير مُدرَج", + "private": "للمُتابِعينَ فقط", + "direct": "لِمَن أشرتُ إليهِم فَقَط" + }, + "auto_complete": { + "space_to_add": "انقر على مساحة لإضافتِها" + }, + "accessibility": { + "append_attachment": "إضافة مُرفَق", + "append_poll": "اضافة استطلاع رأي", + "remove_poll": "إزالة الاستطلاع", + "custom_emoji_picker": "منتقي الرموز التعبيرية المُخصَّص", + "enable_content_warning": "تفعيل تحذير المُحتَوى", + "disable_content_warning": "تعطيل تحذير المُحتَوى", + "post_visibility_menu": "قائمة ظهور المنشور" + }, + "keyboard": { + "discard_post": "تجاهُل المنشور", + "publish_post": "نَشر المَنشُور", + "toggle_poll": "تبديل الاستطلاع", + "toggle_content_warning": "تبديل تحذير المُحتَوى", + "append_attachment_entry": "إضافة مُرفَق - %s", + "select_visibility_entry": "اختر مدى الظهور - %s" + } + }, + "profile": { + "dashboard": { + "posts": "مَنشورات", + "following": "مُتابَع", + "followers": "مُتابِع" + }, + "fields": { + "add_row": "إضافة صف", + "placeholder": { + "label": "التسمية", + "content": "المُحتَوى" + } + }, + "segmented_control": { + "posts": "مَنشورات", + "replies": "رُدُود", + "posts_and_replies": "مَنشُوراتٌ وَرُدُود", + "media": "وَسائِط", + "about": "حَول" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "كَتمُ الحِساب", + "message": "تأكيدُ كَتم %s" + }, + "confirm_unmute_user": { + "title": "رفع الكتم عن الحساب", + "message": "أكِّد لرفع الكتمْ عن %s" + }, + "confirm_block_user": { + "title": "حَظرُ الحِساب", + "message": "تأكيدُ حَظر %s" + }, + "confirm_unblock_user": { + "title": "رَفعُ الحَظرِ عَنِ الحِساب", + "message": "تأكيدُ رَفع الحَظرِ عَن %s" + } + }, + "accessibility": { + "show_avatar_image": "أظْهِر الصُّورَةَ الرَّمزِيَّة", + "edit_avatar_image": "تَحريرُ الصُّورَةِ الرَّمزِيَّة", + "show_banner_image": "أظْهِر صُورَةَ الرَّايَة", + "double_tap_to_open_the_list": "اُنقُر نَقرًا مُزدَوَجًا لِفَتحِ القائِمَة" + } + }, + "follower": { + "footer": "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى." + }, + "following": { + "footer": "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى." + }, + "search": { + "title": "البَحث", + "search_bar": { + "placeholder": "اِبحَث عَن وُسُومٍ أو مُستَخدِمين", + "cancel": "إلغاء" + }, + "recommend": { + "button_text": "إظهار الكُل", + "hash_tag": { + "title": "ذُو شَعبِيَّةٍ عَلَى مَاستودُون", + "description": "الوُسُومُ الَّتي تَحظى بقدرٍ كبيرٍ مِنَ الاِهتمام", + "people_talking": "%s أشخاص يتحدَّثوا" + }, + "accounts": { + "title": "حِساباتٍ قَد تُعجِبُك", + "description": "قَد تَرغَب في مُتابَعَةِ هَذِهِ الحِسابات", + "follow": "مُتابَعَة" + } + }, + "searching": { + "segment": { + "all": "الكُل", + "people": "أشخاص", + "hashtags": "وُسُوم", + "posts": "مَنشُورات" + }, + "empty_state": { + "no_results": "لا تُوجَدُ نتائِج" + }, + "recent_search": "عَمَليَّاُت البَحثِ الأخيرَة", + "clear": "مَحو" + } + }, + "discovery": { + "tabs": { + "posts": "مَنشُورات", + "hashtags": "وُسُوم", + "news": "أخبار", + "community": "المُجتَمَع", + "for_you": "لَك" + }, + "intro": "هَذِهِ هِيَ المَنشُوراتُ الَّتي تَكْتَسِبُ شَعبِيَّةً فِي الرُّكنِ الخاصِّ بِكَ مِن مَاستُودون." + }, + "favorite": { + "title": "مُفضَّلَتُك" + }, + "notification": { + "title": { + "Everything": "كُلُّ شيء", + "Mentions": "الإشارات" + }, + "notification_description": { + "followed_you": "بَدَأ بِمُتابَعَتِك", + "favorited_your_post": "فَضَّلَ مَنشُورَك", + "reblogged_your_post": "أعادَ تَدوينَ مَنشُورَك", + "mentioned_you": "أشارَ إليك", + "request_to_follow_you": "طَلَبَ مُتابَعتَك", + "poll_has_ended": "انتهى استطلاعُ الرأي" + }, + "keyobard": { + "show_everything": "أظْهِر كُلَّ شَيء", + "show_mentions": "أظْهِر الإشارَات" + } + }, + "thread": { + "back_title": "منشور", + "title": "مَنشور مِن %s" + }, + "settings": { + "title": "الإعدادات", + "section": { + "appearance": { + "title": "المَظهر", + "automatic": "تلقائي", + "light": "مضيءٌ دائمًا", + "dark": "مظلمٌ دائِمًا" + }, + "look_and_feel": { + "title": "المَظهَرُ وَالشُّعُور", + "use_system": "استخدم النِظام", + "really_dark": "مُظلمٌ حَقًّا", + "sorta_dark": "مُظلمٌ نوعًا ما", + "light": "مُضيء" + }, + "notifications": { + "title": "الإشعارات", + "favorites": "بِالإعْجاب بِمَنشوري", + "follows": "بِمُتابَعَتي", + "boosts": "بِإعادَةِ تدوينِ مَنشوري", + "mentions": "بِالإشارَةِ إليّ", + "trigger": { + "anyone": "أيُّ شخصٍ", + "follower": "مُتابِعٌ", + "follow": "أي شخص أُتابِعُه", + "noone": "لَا أحد", + "title": "أشعِرني عِندما يَقومُ" + } + }, + "preference": { + "title": "التَّفضيلات", + "true_black_dark_mode": "النَّمَطُ الأسوَدُ الداكِنُ الحَقيقي", + "disable_avatar_animation": "تَعطيلُ الصوَرِ الرمزيَّةِ المُتحرِّكَة", + "disable_emoji_animation": "تَعطيلُ الرُموزِ التَّعبيريَّةِ المُتحرِّكَة", + "using_default_browser": "اِستِخدامُ المُتصفِّحِ الاِفتراضي لِفتحِ الرَّوابِط", + "open_links_in_mastodon": "فَتحُ الرَّوابِطِ فِي مَاستودُون" + }, + "boring_zone": { + "title": "المنطِقَةُ المُملَّة", + "account_settings": "إعداداتُ الحِساب", + "terms": "شُرُوطُ الخِدمَة", + "privacy": "سِياسَةُ الخُصوصيَّة" + }, + "spicy_zone": { + "title": "المنطِقَةُ اللَّاذِعَة", + "clear": "مَحوُ ذاكِرَةِ التَّخزينِ المُؤقَّتِ لِلوسائِط", + "signout": "تَسجيلُ الخُروج" + } + }, + "footer": { + "mastodon_description": "ماستودون بَرنامجٌ مَفتُوحُ المَصدَر. يُمكِنُكَ المُساهَمَةُ، أوِ الإبلاغُ عَنِ المُشكِلات عَن طريق مِنصَّة جيت هاب (GitHub) في %s (%s)" + }, + "keyboard": { + "close_settings_window": "إغلاق نافذة الإعدادات" + } + }, + "report": { + "title_report": "إبلاغ", + "title": "الإبلاغ عن %s", + "step1": "الخطوة 1 مِن أصل 2", + "step2": "الخطوة 2 مِن أصل 2", + "content1": "هل ترغب في إضافة أي منشورات أُخرى إلى البلاغ؟", + "content2": "هل هناك أي شيء يجب أن يعرفه المُراقبين حول هذا البلاغ؟", + "report_sent_title": "شُكرًا لَكَ على الإبلاغ، سَوفَ نَنظُرُ فِي هَذَا الأمر.", + "send": "إرسال البلاغ", + "skip_to_send": "إرسال بدون تعليق", + "text_placeholder": "اكتب أو الصق تعليقات إضافيَّة", + "reported": "مُبْلَغٌ عَنه", + "step_one": { + "step_1_of_4": "الخطوة 1 مِن أصل 4", + "whats_wrong_with_this_post": "ما المُشكِلَةُ فِي هَذَا المَنشُور؟", + "whats_wrong_with_this_account": "ما المُشكِلَةُ فِي هَذَا الحِساب؟", + "whats_wrong_with_this_username": "ما المُشكِلَة مَعَ %s؟", + "select_the_best_match": "اِختَر أفضلَ تَطابُق", + "i_dont_like_it": "لا يُعجِبُني", + "it_is_not_something_you_want_to_see": "إنَّهُ ليسَ شيئًا تُريدُ رُؤيَتَه", + "its_spam": "إنَّهُ غَيرٌ مَرغوبٍ فيه", + "malicious_links_fake_engagement_or_repetetive_replies": "رَوابِطٌ ضَارَّة، اِرتِباطاتٌ مُزيَّفَة أو رُدودٌ مُتَكَرِّرَة", + "it_violates_server_rules": "يَنتَهِكُ قَواعِدَ الخادِم", + "you_are_aware_that_it_breaks_specific_rules": "أنتَ مُدِركٌ لِانتِهاكِهِ قَواعِدًا مُحَدَّدَة", + "its_something_else": "إنَّهُ شَيءٌ آخَر", + "the_issue_does_not_fit_into_other_categories": "المُشكِلَةُ لَا تَتَناسَبُ مَعَ الفِئاتِ الأُخرَى" + }, + "step_two": { + "step_2_of_4": "الخطوة 2 مِن أصل 4", + "which_rules_are_being_violated": "مَا هِيَ القَواعِدُ الَّتي تُنتَهَك؟", + "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق", + "i_just_don’t_like_it": "أنا فَقَط لا يُعجِبُني" + }, + "step_three": { + "step_3_of_4": "الخطوة 3 مِن أصل 4", + "are_there_any_posts_that_back_up_this_report": "هَل هُناكَ أيُّ مَنشُوراتٍ أُخرَى تَتَوافَقُ مَعَ هَذَا التَّقرير؟", + "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق" + }, + "step_four": { + "step_4_of_4": "الخطوة 4 مِن أصل 4", + "is_there_anything_else_we_should_know": "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟" + }, + "step_final": { + "dont_want_to_see_this": "ألَا تُريدُ رُؤيَةَ هَذَا؟", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك.", + "unfollow": "إلغاءُ المُتابَعَة", + "unfollowed": "أُلغِيَت المُتابَعَة", + "unfollow_user": "إلغاءُ مُتابَعَةِ %s", + "mute_user": "كَتمُ %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", + "block_user": "حَظرُ %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "إغلاق المُعايَنَة", + "show_next": "أظْهِر التَّالي", + "show_previous": "أظْهِر السَّابِق" + } + }, + "account_list": { + "tab_bar_hint": "المِلَفُّ المُحدَّدُ حالِيًّا: %s. اُنقُر نَقرًا مُزدَوَجًا مَعَ الاِستِمرارِ لِإظهارِ مُبدِّلِ الحِساب", + "dismiss_account_switcher": "تجاهُل مبدِّل الحِساب", + "add_account": "إضافَةُ حِساب" + }, + "wizard": { + "new_in_mastodon": "جديد في ماستودون", + "multiple_account_switch_intro_description": "بدِّل بين حسابات متعددة عبر الاستمرار بالضغط على زر الملف الشخصي.", + "accessibility_hint": "انقر نقرًا مزدوجًا لتجاهُل النافذة المنبثقة" + } + } +} \ No newline at end of file From f691cdcb23a20a56a5eb4aa8d4ac221bd09f8658 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:50:59 +0200 Subject: [PATCH 250/571] New translations app.json (German) --- .../StringsConvertor/input/de.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/de.lproj/app.json diff --git a/Localization/StringsConvertor/input/de.lproj/app.json b/Localization/StringsConvertor/input/de.lproj/app.json new file mode 100644 index 000000000..8215d0864 --- /dev/null +++ b/Localization/StringsConvertor/input/de.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Bitte versuche es erneut.", + "please_try_again_later": "Bitte versuche es später nochmal." + }, + "sign_up_failure": { + "title": "Registrierungsfehler" + }, + "server_error": { + "title": "Serverfehler" + }, + "vote_failure": { + "title": "Fehler bei Abstimmung", + "poll_ended": "Die Umfrage ist beendet" + }, + "discard_post_content": { + "title": "Entwurf verwerfen", + "message": "Bestätige, um den Beitrag zu verwerfen." + }, + "publish_post_failure": { + "title": "Fehler bei Veröffentlichung", + "message": "Fehler beim Veröffentlichen des Beitrags.\nBitte überprüfe deine Internetverbindung.", + "attachments_message": { + "video_attach_with_photo": "Es kann kein Video an einen Beitrag, der bereits Bilder enthält, angehängt werden.", + "more_than_one_video": "Es kann nicht mehr als ein Video angehängt werden." + } + }, + "edit_profile_failure": { + "title": "Fehler beim Bearbeiten des Profils", + "message": "Profil kann nicht bearbeitet werden. Bitte versuche es erneut." + }, + "sign_out": { + "title": "Abmelden", + "message": "Bist du sicher, dass du dich abmelden möchten?", + "confirm": "Abmelden" + }, + "block_domain": { + "title": "Bist du dir wirklich sicher, dass du die ganze Domain %s blockieren willst? In den meisten Fällen reichen ein paar gezielte Blockierungen oder Stummschaltungen aus und werden bevorzugt. Du wirst den Inhalt von dieser Domain nicht mehr sehen. Deine Follower von dieser Domain werden entfernt.", + "block_entire_domain": "Domain blockieren" + }, + "save_photo_failure": { + "title": "Foto konnte nicht gespeichert werden", + "message": "Bitte aktiviere den Zugriff auf die Fotobibliothek, um das Foto zu speichern." + }, + "delete_post": { + "title": "Bist du dir sicher, dass du diesen Beitrag löschen möchtest?", + "message": "Bist du dir sicher, dass du diesen Beitrag löschen willst?" + }, + "clean_cache": { + "title": "Zwischenspeicher leeren", + "message": "%s erfolgreich aus dem Cache gelöscht." + } + }, + "controls": { + "actions": { + "back": "Zurück", + "next": "Weiter", + "previous": "Vorheriges", + "open": "Öffnen", + "add": "Hinzufügen", + "remove": "Entfernen", + "edit": "Bearbeiten", + "save": "Speichern", + "ok": "OK", + "done": "Fertig", + "confirm": "Bestätigen", + "continue": "Fortfahren", + "compose": "Neue Nachricht", + "cancel": "Abbrechen", + "discard": "Verwerfen", + "try_again": "Nochmals versuchen", + "take_photo": "Foto aufnehmen", + "save_photo": "Foto speichern", + "copy_photo": "Foto kopieren", + "sign_in": "Anmelden", + "sign_up": "Registrieren", + "see_more": "Mehr anzeigen", + "preview": "Vorschau", + "share": "Teilen", + "share_user": "%s teilen", + "share_post": "Beitrag teilen", + "open_in_safari": "In Safari öffnen", + "open_in_browser": "Im Browser anzeigen", + "find_people": "Finde Personen zum Folgen", + "manually_search": "Stattdessen manuell suchen", + "skip": "Überspringen", + "reply": "Antworten", + "report_user": "%s melden", + "block_domain": "%s blockieren", + "unblock_domain": "Blockierung von %s aufheben", + "settings": "Einstellungen", + "delete": "Löschen" + }, + "tabs": { + "home": "Startseite", + "search": "Suche", + "notification": "Benachrichtigungen", + "profile": "Profil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Zu %s wechseln", + "compose_new_post": "Neuen Beitrag verfassen", + "show_favorites": "Favoriten anzeigen", + "open_settings": "Einstellungen öffnen" + }, + "timeline": { + "previous_status": "Vorheriger Beitrag", + "next_status": "Nächster Beitrag", + "open_status": "Beitrag öffnen", + "open_author_profile": "Profil des Verfassers ansehen", + "open_reblogger_profile": "Profil des teilenden Nutzers öffnen", + "reply_status": "Auf Beitrag antworten", + "toggle_reblog": "Teilen vom Beitrag umschalten", + "toggle_favorite": "Favorit vom Beitrag umschalten", + "toggle_content_warning": "Inhaltswarnung umschalten", + "preview_image": "Bildvorschau" + }, + "segmented_control": { + "previous_section": "Vorheriger Abschnitt", + "next_section": "Nächster Abschnitt" + } + }, + "status": { + "user_reblogged": "%s teilte", + "user_replied_to": "Antwortet auf %s", + "show_post": "Beitrag anzeigen", + "show_user_profile": "Benutzerprofil anzeigen", + "content_warning": "Inhaltswarnung", + "sensitive_content": "NSFW-Inhalt", + "media_content_warning": "Tippe irgendwo zum Anzeigen", + "tap_to_reveal": "Zum Anzeigen tippen", + "poll": { + "vote": "Abstimmen", + "closed": "Beendet" + }, + "actions": { + "reply": "Antworten", + "reblog": "Teilen", + "unreblog": "Nicht mehr teilen", + "favorite": "Favorit", + "unfavorite": "Aus Favoriten entfernen", + "menu": "Menü", + "hide": "Verstecken", + "show_image": "Bild anzeigen", + "show_gif": "GIF anzeigen", + "show_video_player": "Zeige Video-Player", + "tap_then_hold_to_show_menu": "Halte gedrückt um das Menü anzuzeigen" + }, + "tag": { + "url": "URL", + "mention": "Erwähnung", + "link": "Link", + "hashtag": "Hashtag", + "email": "E-Mail", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Jeder kann diesen Post sehen, aber nicht in der öffentlichen Timeline zeigen.", + "private": "Nur Follower des Authors können diesen Beitrag sehen.", + "private_from_me": "Nur meine Follower können diesen Beitrag sehen.", + "direct": "Nur erwähnte Benutzer können diesen Beitrag sehen." + } + }, + "friendship": { + "follow": "Folgen", + "following": "Folge Ich", + "request": "Anfragen", + "pending": "In Warteschlange", + "block": "Blockieren", + "block_user": "%s blockieren", + "block_domain": "%s blockieren", + "unblock": "Blockierung aufheben", + "unblock_user": "Blockierung von %s aufheben", + "blocked": "Blockiert", + "mute": "Stummschalten", + "mute_user": "%s stummschalten", + "unmute": "Nicht mehr stummschalten", + "unmute_user": "%s nicht mehr stummschalten", + "muted": "Stummgeschaltet", + "edit_info": "Information bearbeiten" + }, + "timeline": { + "filtered": "Gefiltert", + "timestamp": { + "now": "Gerade" + }, + "loader": { + "load_missing_posts": "Fehlende Beiträge laden", + "loading_missing_posts": "Lade fehlende Beiträge...", + "show_more_replies": "Weitere Antworten anzeigen" + }, + "header": { + "no_status_found": "Kein Beitrag gefunden", + "blocking_warning": "Du kannst das Profil dieses Benutzers nicht sehen\n solange du den Benutzer nicht entsperrst.\nDein Profil sieht für diesen Benutzer auch so aus.", + "user_blocking_warning": "Du kannst %ss Profil nicht sehen\nsolange du diesen Benutzer nicht entsperrst.\nDein Profil sieht für diesen Benutzer auch so aus.", + "blocked_warning": "Das Profil dieses Benutzers\nkann nicht angezeigt werden, bis er dich entsperrt.", + "user_blocked_warning": "Du kannst das Profil von %s nicht sehen \nbis der Benutzer dich entsperrt.", + "suspended_warning": "Dieser Nutzer wurde gesperrt.", + "user_suspended_warning": "Das Konto von %s wurde gesperrt." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Soziale Netzwerke wieder in deinen Händen.", + "get_started": "Erste Schritte", + "log_in": "Anmelden" + }, + "server_picker": { + "title": "Wähle einen Server,\nbeliebigen Server.", + "subtitle": "Wähle eine Gemeinschaft, die auf deinen Interessen, Region oder einem allgemeinen Zweck basiert.", + "subtitle_extend": "Wähle eine Gemeinschaft basierend auf deinen Interessen, deiner Region oder einem allgemeinen Zweck. Jede Gemeinschaft wird von einer völlig unabhängigen Organisation oder Einzelperson betrieben.", + "button": { + "category": { + "all": "Alle", + "all_accessiblity_description": "Kategorie: Alle", + "academia": "Wissenschaft", + "activism": "Aktivismus", + "food": "Essen", + "furry": "Furry", + "games": "Spiele", + "general": "Allgemein", + "journalism": "Journalismus", + "lgbt": "LGBT", + "regional": "Regional", + "art": "Kunst", + "music": "Musik", + "tech": "Technologie" + }, + "see_less": "Weniger anzeigen", + "see_more": "Mehr anzeigen" + }, + "label": { + "language": "SPRACHE", + "users": "BENUTZER", + "category": "KATEGORIE" + }, + "input": { + "placeholder": "Finde einen Server oder trete deinem eigenen bei...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Verfügbare Server werden gesucht...", + "bad_network": "Beim Laden der Daten ist etwas schief gelaufen. Überprüfe deine Internetverbindung.", + "no_results": "Keine Ergebnisse" + } + }, + "register": { + "title": "Erzähle uns von dir.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Löschen" + }, + "username": { + "placeholder": "Benutzername", + "duplicate_prompt": "Dieser Benutzername ist vergeben." + }, + "display_name": { + "placeholder": "Anzeigename" + }, + "email": { + "placeholder": "E-Mail" + }, + "password": { + "placeholder": "Passwort", + "require": "Anforderungen an dein Passwort:", + "character_limit": "8 Zeichen", + "accessibility": { + "checked": "Häkchen gesetzt", + "unchecked": "Häkchen entfernt" + }, + "hint": "Ihr Passwort muss mindestens 8 Zeichen lang sein" + }, + "invite": { + "registration_user_invite_request": "Warum möchtest du beitreten?" + } + }, + "error": { + "item": { + "username": "Benutzername", + "email": "E-Mail", + "password": "Passwort", + "agreement": "Vereinbarung", + "locale": "Sprache", + "reason": "Begründung" + }, + "reason": { + "blocked": "%s verwendet einen nicht erlaubten E-Mail-Anbieter", + "unreachable": "%s scheint nicht zu existieren", + "taken": "%s wird bereits verwendet", + "reserved": "%s ist ein reserviertes Schlüsselwort", + "accepted": "%s muss akzeptiert werden", + "blank": "%s ist erforderlich", + "invalid": "%s ist ungültig", + "too_long": "%s ist zu lang", + "too_short": "%s ist zu kurz", + "inclusion": "%s ist kein unterstützter Wert" + }, + "special": { + "username_invalid": "Benutzername kann nur alphanumerische Zeichen und Unterstriche enthalten", + "username_too_long": "Benutzername ist zu lang (darf nicht länger als 30 Zeichen sein)", + "email_invalid": "Dies ist keine gültige E-Mail-Adresse", + "password_too_short": "Passwort ist zu kurz (mindestens 8 Zeichen erforderlich)" + } + } + }, + "server_rules": { + "title": "Einige Grundregeln.", + "subtitle": "Diese Regeln werden von den Administratoren von %s festgelegt.", + "prompt": "Wenn du fortfährst, unterliegst du den Nutzungsbedingungen und den Datenschutzrichtlinien für %s.", + "terms_of_service": "Nutzungsbedingungen", + "privacy_policy": "Datenschutzerklärung", + "button": { + "confirm": "Ich stimme zu" + } + }, + "confirm_email": { + "title": "Noch eine letzte Sache.", + "subtitle": "Schaue kurz in dein E-Mail-Postfach und tippe den Link an, den wir dir gesendet haben.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "E-Mail-App öffnen", + "resend": "Erneut senden" + }, + "dont_receive_email": { + "title": "Bitte überprüfe deine E-Mails", + "description": "Überprüfe, ob deine E-Mail-Adresse korrekt ist und sieh im Spam-Ordner nach, falls du es noch nicht getan hast.", + "resend_email": "E-Mail erneut versenden" + }, + "open_email_app": { + "title": "Überprüfe deinen Posteingang.", + "description": "Wir haben dir gerade eine E-Mail geschickt. Überprüfe deinen Spam-Ordner, falls du es noch nicht getan hast.", + "mail": "Mail", + "open_email_client": "E-Mail-Client öffnen" + } + }, + "home_timeline": { + "title": "Startseite", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "Neue Beiträge anzeigen", + "published": "Veröffentlicht!", + "Publishing": "Beitrag wird veröffentlicht...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Finde Personen zum Folgen", + "follow_explain": "Wenn du jemandem folgst, dann siehst du deren Beiträge in deinem Home-Feed." + }, + "compose": { + "title": { + "new_post": "Neuer Beitrag", + "new_reply": "Neue Antwort" + }, + "media_selection": { + "camera": "Foto aufnehmen", + "photo_library": "Fotobibliothek", + "browse": "Durchsuchen" + }, + "content_input_placeholder": "Tippe oder füge ein, was dir am Herzen liegt", + "compose_action": "Veröffentlichen", + "replying_to_user": "antwortet auf %s", + "attachment": { + "photo": "Foto", + "video": "Video", + "attachment_broken": "Dieses %s scheint defekt zu sein und\nkann nicht auf Mastodon hochgeladen werden.", + "description_photo": "Für Menschen mit Sehbehinderung beschreiben...", + "description_video": "Für Menschen mit Sehbehinderung beschreiben..." + }, + "poll": { + "duration_time": "Dauer: %s", + "thirty_minutes": "30 Minuten", + "one_hour": "1 Stunde", + "six_hours": "6 Stunden", + "one_day": "1 Tag", + "three_days": "3 Tage", + "seven_days": "7 Tage", + "option_number": "Auswahlmöglichkeit %ld" + }, + "content_warning": { + "placeholder": "Schreibe eine Inhaltswarnung hier..." + }, + "visibility": { + "public": "Öffentlich", + "unlisted": "Nicht gelistet", + "private": "Nur für Folgende", + "direct": "Nur für Leute, die ich erwähne" + }, + "auto_complete": { + "space_to_add": "Leerzeichen um hinzuzufügen" + }, + "accessibility": { + "append_attachment": "Anhang hinzufügen", + "append_poll": "Umfrage hinzufügen", + "remove_poll": "Umfrage entfernen", + "custom_emoji_picker": "Benutzerdefinierter Emojiwähler", + "enable_content_warning": "Inhaltswarnung einschalten", + "disable_content_warning": "Inhaltswarnung ausschalten", + "post_visibility_menu": "Sichtbarkeitsmenü" + }, + "keyboard": { + "discard_post": "Beitrag verwerfen", + "publish_post": "Beitrag veröffentlichen", + "toggle_poll": "Umfrage umschalten", + "toggle_content_warning": "Inhaltswarnung umschalten", + "append_attachment_entry": "Anhang hinzufügen - %s", + "select_visibility_entry": "Sichtbarkeit auswählen - %s" + } + }, + "profile": { + "dashboard": { + "posts": "Beiträge", + "following": "Gefolgte", + "followers": "Folger" + }, + "fields": { + "add_row": "Zeile hinzufügen", + "placeholder": { + "label": "Bezeichnung", + "content": "Inhalt" + } + }, + "segmented_control": { + "posts": "Beiträge", + "replies": "Antworten", + "posts_and_replies": "Beiträge und Antworten", + "media": "Medien", + "about": "Über" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Konto stummschalten", + "message": "Bestätige %s stumm zu schalten" + }, + "confirm_unmute_user": { + "title": "Ton einschalten", + "message": "Bestätige um %s nicht mehr stummzuschalten" + }, + "confirm_block_user": { + "title": "Konto blockieren", + "message": "Bestätige %s zu blockieren" + }, + "confirm_unblock_user": { + "title": "Konto entsperren", + "message": "Bestätige %s zu entsperren" + } + }, + "accessibility": { + "show_avatar_image": "Profilbild anzeigen", + "edit_avatar_image": "Profilbild bearbeiten", + "show_banner_image": "Bannerbild anzeigen", + "double_tap_to_open_the_list": "Doppeltippen, um die Liste zu öffnen" + } + }, + "follower": { + "footer": "Follower von anderen Servern werden nicht angezeigt." + }, + "following": { + "footer": "Wem das Konto folgt wird von anderen Servern werden nicht angezeigt." + }, + "search": { + "title": "Suche", + "search_bar": { + "placeholder": "Hashtags und Benutzer suchen", + "cancel": "Abbrechen" + }, + "recommend": { + "button_text": "Alle anzeigen", + "hash_tag": { + "title": "Angesagt auf Mastodon", + "description": "Hashtags die an Aufmerksamkeit zunehmen", + "people_talking": "%s Leute reden" + }, + "accounts": { + "title": "Konten, die dir gefallen könnten", + "description": "Vielleicht gefallen dir diese Benutzer", + "follow": "Folgen" + } + }, + "searching": { + "segment": { + "all": "Alles", + "people": "Personen", + "hashtags": "Hashtags", + "posts": "Beiträge" + }, + "empty_state": { + "no_results": "Keine Ergebnisse" + }, + "recent_search": "Zuletzt gesucht", + "clear": "Zurücksetzen" + } + }, + "discovery": { + "tabs": { + "posts": "Beiträge", + "hashtags": "Hashtags", + "news": "Nachrichten", + "community": "Community", + "for_you": "Für dich" + }, + "intro": "Dies sind die Beiträge, die in deiner Umgebung auf Mastodon beliebter werden." + }, + "favorite": { + "title": "Deine Favoriten" + }, + "notification": { + "title": { + "Everything": "Alles", + "Mentions": "Erwähnungen" + }, + "notification_description": { + "followed_you": "folgt dir", + "favorited_your_post": "hat deinen Beitrag favorisiert", + "reblogged_your_post": "hat deinen Beitrag geteilt", + "mentioned_you": "hat dich erwähnt", + "request_to_follow_you": "Folgeanfrage", + "poll_has_ended": "Umfrage wurde beendet" + }, + "keyobard": { + "show_everything": "Alles anzeigen", + "show_mentions": "Erwähnungen anzeigen" + } + }, + "thread": { + "back_title": "Beitrag", + "title": "Beitrag von %s" + }, + "settings": { + "title": "Einstellungen", + "section": { + "appearance": { + "title": "Darstellung", + "automatic": "Automatisch", + "light": "Immer hell", + "dark": "Immer dunkel" + }, + "look_and_feel": { + "title": "Erscheinungsbild", + "use_system": "Systemeinstellung benutzen", + "really_dark": "Wirklich dunkel", + "sorta_dark": "Ziemlich dunkel", + "light": "Hell" + }, + "notifications": { + "title": "Benachrichtigungen", + "favorites": "Meinen Beitrag favorisiert", + "follows": "Mir folgt", + "boosts": "Meinen Beitrag teilt", + "mentions": "Mich erwähnt", + "trigger": { + "anyone": "jeder", + "follower": "ein Folger", + "follow": "ein von mir Gefolgter", + "noone": "niemand", + "title": "Benachrichtige mich, wenn" + } + }, + "preference": { + "title": "Präferenzen", + "true_black_dark_mode": "Vollständig dunkler Dunkelmodus", + "disable_avatar_animation": "Animierte Profilbilder deaktivieren", + "disable_emoji_animation": "Animierte Emojis deaktivieren", + "using_default_browser": "Standardbrowser zum Öffnen von Links verwenden", + "open_links_in_mastodon": "Links in Mastodon öffnen" + }, + "boring_zone": { + "title": "Der langweilige Bereich", + "account_settings": "Kontoeinstellungen", + "terms": "Allgemeine Geschäftsbedingungen", + "privacy": "Datenschutzerklärung" + }, + "spicy_zone": { + "title": "Der Gefährliche Bereich", + "clear": "Medien-Cache leeren", + "signout": "Abmelden" + } + }, + "footer": { + "mastodon_description": "Mastodon ist quelloffene Software. Du kannst auf GitHub unter %s (%s) Probleme melden" + }, + "keyboard": { + "close_settings_window": "Einstellungsfenster schließen" + } + }, + "report": { + "title_report": "Melden", + "title": "%s melden", + "step1": "Schritt 1 von 2", + "step2": "Schritt 2 von 2", + "content1": "Gibt es noch weitere Beiträge, die du der Meldung hinzufügen möchtest?", + "content2": "Gibt es etwas, was die Moderatoren über diese Meldung wissen sollten?", + "report_sent_title": "Danke für deine Meldung, wir werden uns damit beschäftigen.", + "send": "Meldung abschicken", + "skip_to_send": "Ohne Kommentar abschicken", + "text_placeholder": "Zusätzliche Kommentare eingeben oder einfügen", + "reported": "GEMELDET", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Vorschau schließen", + "show_next": "Nächstes anzeigen", + "show_previous": "Vorheriges anzeigen" + } + }, + "account_list": { + "tab_bar_hint": "Aktuell ausgewähltes Profil: %s. Doppeltippen dann gedrückt halten, um den Kontoschalter anzuzeigen", + "dismiss_account_switcher": "Dialog zum Wechseln des Kontos schließen", + "add_account": "Konto hinzufügen" + }, + "wizard": { + "new_in_mastodon": "Neu in Mastodon", + "multiple_account_switch_intro_description": "Wechsel zwischen mehreren Konten durch Drücken der Profil-Schaltfläche.", + "accessibility_hint": "Doppeltippen, um diesen Assistenten zu schließen" + } + } +} \ No newline at end of file From b92cc319647ab88ec1a424aaa223f5b6577d0569 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:01 +0200 Subject: [PATCH 251/571] New translations app.json (Spanish, Argentina) --- .../input/es-AR.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/es-AR.lproj/app.json diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json new file mode 100644 index 000000000..32dd4ce3f --- /dev/null +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Por favor, intentá de nuevo.", + "please_try_again_later": "Por favor, intentá de nuevo más tarde." + }, + "sign_up_failure": { + "title": "Error al registrarse" + }, + "server_error": { + "title": "Error del servidor" + }, + "vote_failure": { + "title": "Error al votar", + "poll_ended": "La encuesta finalizó" + }, + "discard_post_content": { + "title": "Descartar borrador", + "message": "Confirmá para descartar el contenido del mensaje redactado." + }, + "publish_post_failure": { + "title": "Error al enviar el mensaje", + "message": "Error al enviar en mensaje.\nPor favor, revisá tu conexión a Internet.", + "attachments_message": { + "video_attach_with_photo": "No se puede adjuntar un video a un mensaje que ya contenga imágenes.", + "more_than_one_video": "No se puede adjuntar más de un video." + } + }, + "edit_profile_failure": { + "title": "Error al editar el perfil", + "message": "No se pudo editar el perfil. Por favor, intentá de nuevo." + }, + "sign_out": { + "title": "Cerrar sesión", + "message": "¿Estás seguro que querés cerrar la sesión?", + "confirm": "Cerrar sesión" + }, + "block_domain": { + "title": "¿Estás completamente seguro que querés bloquear el %s entero? En la mayoría de los casos, unos cuantos bloqueos y silenciados puntuales son suficientes y preferibles. No vas a ver contenido de ese dominio y todos tus seguidores de ese dominio serán quitados.", + "block_entire_domain": "Bloquear dominio" + }, + "save_photo_failure": { + "title": "Error al guardar la imagen", + "message": "Por favor, habilitá el permiso de acceso a la biblioteca de fotos para guardar la imagen." + }, + "delete_post": { + "title": "Eliminar mensaje", + "message": "¿Estás seguro que querés eliminar este mensaje?" + }, + "clean_cache": { + "title": "Limpiar caché", + "message": "Se limpió exitosamente %s de la memoria caché." + } + }, + "controls": { + "actions": { + "back": "Volver", + "next": "Siguiente", + "previous": "Anterior", + "open": "Abrir", + "add": "Agregar", + "remove": "Quitar", + "edit": "Editar", + "save": "Guardar", + "ok": "Aceptar", + "done": "Listo", + "confirm": "Confirmar", + "continue": "Continuar", + "compose": "Redactar", + "cancel": "Cancelar", + "discard": "Descartar", + "try_again": "Intentá de nuevo", + "take_photo": "Tomar foto", + "save_photo": "Guardar foto", + "copy_photo": "Copiar foto", + "sign_in": "Iniciar sesión", + "sign_up": "Registrarse", + "see_more": "Ver más", + "preview": "Previsualización", + "share": "Compartir", + "share_user": "Compartir %s", + "share_post": "Compartir mensaje", + "open_in_safari": "Abrir en Safari", + "open_in_browser": "Abrir en el navegador", + "find_people": "Encontrá cuentas para seguir", + "manually_search": "Buscar manualmente", + "skip": "Omitir", + "reply": "Responder", + "report_user": "Denunciar a %s", + "block_domain": "Bloquear a %s", + "unblock_domain": "Desbloquear a %s", + "settings": "Configuración", + "delete": "Eliminar" + }, + "tabs": { + "home": "Principal", + "search": "Buscar", + "notification": "Notificación", + "profile": "Perfil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Cambiar a %s", + "compose_new_post": "Redactar un nuevo mensaje", + "show_favorites": "Mostrar favoritos", + "open_settings": "Abrir Configuración" + }, + "timeline": { + "previous_status": "Mensaje anterior", + "next_status": "Mensaje siguiente", + "open_status": "Abrir mensaje", + "open_author_profile": "Abrir perfil del autor", + "open_reblogger_profile": "Abrir perfil del adherente", + "reply_status": "Responder al mensaje", + "toggle_reblog": "Cambiar adhesión al mensaje", + "toggle_favorite": "Cambiar marca de favorito del mensaje", + "toggle_content_warning": "Cambiar modo de advertencia de contenido", + "preview_image": "Previsualizar imagen" + }, + "segmented_control": { + "previous_section": "Sección anterior", + "next_section": "Sección siguiente" + } + }, + "status": { + "user_reblogged": "%s adhirió", + "user_replied_to": "Respondió a %s", + "show_post": "Mostrar mensaje", + "show_user_profile": "Mostrar perfil de usuario", + "content_warning": "Advertencia de contenido", + "sensitive_content": "Contenido sensible", + "media_content_warning": "Tocá en cualquier parte para mostrar", + "tap_to_reveal": "Tocá para mostrar", + "poll": { + "vote": "Votar", + "closed": "Cerrada" + }, + "actions": { + "reply": "Responder", + "reblog": "Adherir", + "unreblog": "Deshacer adhesión", + "favorite": "Marcar como favorito", + "unfavorite": "Dejar de marcar como favorito", + "menu": "Menú", + "hide": "Ocultar", + "show_image": "Mostrar imagen", + "show_gif": "Mostrar GIF", + "show_video_player": "Mostrar reproductor de video", + "tap_then_hold_to_show_menu": "Tocá y mantené presionado para mostrar el menú" + }, + "tag": { + "url": "Dirección web", + "mention": "Mención", + "link": "Enlace", + "hashtag": "Etiqueta", + "email": "Correo electrónico", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Todo el mundo puede ver este mensaje pero no mostrarse en la línea temporal pública.", + "private": "Sólo sus seguidores pueden ver este mensaje.", + "private_from_me": "Sólo mis seguidores pueden ver este mensaje.", + "direct": "Sólo el usuario mencionado puede ver este mensaje." + } + }, + "friendship": { + "follow": "Seguir", + "following": "Siguiendo", + "request": "Solicitar", + "pending": "Pendientes", + "block": "Bloquear", + "block_user": "Bloquear a %s", + "block_domain": "Bloquear %s", + "unblock": "Desbloquear", + "unblock_user": "Desbloquear a %s", + "blocked": "Bloqueado", + "mute": "Silenciar", + "mute_user": "Silenciar a %s", + "unmute": "Dejar de silenciar", + "unmute_user": "Dejar de silenciar a %s", + "muted": "Silenciado", + "edit_info": "Editar información" + }, + "timeline": { + "filtered": "Filtrado", + "timestamp": { + "now": "Ahora" + }, + "loader": { + "load_missing_posts": "Cargar mensajes faltantes", + "loading_missing_posts": "Cargando mensajes faltantes…", + "show_more_replies": "Mostrar más respuestas" + }, + "header": { + "no_status_found": "Mensaje no encontrado", + "blocking_warning": "No podés ver el perfil de este usuario\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", + "user_blocking_warning": "No podés ver el perfil de %s\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", + "blocked_warning": "No podés ver el perfil de este usuario\n hasta que dicho usuario te desbloquee.", + "user_blocked_warning": "No podés ver el perfil de %s\n hasta que dicho usuario te desbloquee.", + "suspended_warning": "Este usuario está suspendido.", + "user_suspended_warning": "La cuenta de %s está suspendida." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "La red social,\nnuevamente en tu poder.", + "get_started": "Comenzá", + "log_in": "Iniciar sesión" + }, + "server_picker": { + "title": "Elegí un servidor,\nel que quieras.", + "subtitle": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales.", + "subtitle_extend": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales. Cada comunidad es operada por una organización o individuo totalmente independiente.", + "button": { + "category": { + "all": "Todas", + "all_accessiblity_description": "Categoría: Todas", + "academia": "académico", + "activism": "activismo", + "food": "comida", + "furry": "furry", + "games": "juegos", + "general": "general", + "journalism": "periodismo", + "lgbt": "lgbtq+", + "regional": "regional", + "art": "arte", + "music": "música", + "tech": "tecnología" + }, + "see_less": "Ver menos", + "see_more": "Ver más" + }, + "label": { + "language": "IDIOMA", + "users": "CUENTAS", + "category": "CATEGORÍA" + }, + "input": { + "placeholder": "Encontrá un servidor o unite al tuyo…", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Buscando servidores disponibles…", + "bad_network": "Algo salió mal al cargar los datos. Revisá tu conexión de Internet.", + "no_results": "No hay resultados" + } + }, + "register": { + "title": "Contanos sobre vos.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Eliminar" + }, + "username": { + "placeholder": "nombre de usuario", + "duplicate_prompt": "Este nombre de usuario ya está en uso." + }, + "display_name": { + "placeholder": "nombre para mostrar" + }, + "email": { + "placeholder": "correo electrónico" + }, + "password": { + "placeholder": "contraseña", + "require": "Tu contraseña necesita al menos:", + "character_limit": "8 caracteres", + "accessibility": { + "checked": "marcado", + "unchecked": "sin marcar" + }, + "hint": "Tu contraseña necesita al menos ocho caracteres" + }, + "invite": { + "registration_user_invite_request": "¿Por qué querés unirte?" + } + }, + "error": { + "item": { + "username": "Nombre de usuario", + "email": "Correo electrónico", + "password": "Contraseña", + "agreement": "Acuerdo", + "locale": "Idioma de la interface", + "reason": "Motivo" + }, + "reason": { + "blocked": "%s contiene un proveedor de correo electrónico no permitido", + "unreachable": "%s parece no existir", + "taken": "%s ya está en uso", + "reserved": "%s es una palabra clave reservada", + "accepted": "%s debe ser aceptado", + "blank": "%s es obligatorio", + "invalid": "%s no es válido", + "too_long": "%s es demasiado largo", + "too_short": "%s es demasiado corto", + "inclusion": "%s no es un valor soportado" + }, + "special": { + "username_invalid": "El nombre de usuario sólo debe contener caracteres alfanuméricos sin signos diacríticos y subguiones (\\\"_\\\")", + "username_too_long": "El nombre de usuario es demasiado largo (no puede tener más de 30 caracteres)", + "email_invalid": "Esta no es una dirección de correo electrónico válida", + "password_too_short": "La contraseña es demasiado corta (debe tener al menos 8 caracteres)" + } + } + }, + "server_rules": { + "title": "Algunas reglas básicas.", + "subtitle": "Estas reglas son establecidas por los administradores de %s.", + "prompt": "Al continuar, estás sujeto a los términos de servicio y política de privacidad de %s.", + "terms_of_service": "términos del servicio", + "privacy_policy": "política de privacidad", + "button": { + "confirm": "Estoy de acuerdo" + } + }, + "confirm_email": { + "title": "Una última cosa.", + "subtitle": "Acabamos de enviar un correo electrónico a %s,\npulsá en el enlace para confirmar tu cuenta.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Abrir aplicación de correo electrónico", + "resend": "Reenviar" + }, + "dont_receive_email": { + "title": "Revisá tu correo electrónico", + "description": "Revisá si tu dirección de correo electrónico es correcta así como tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste.", + "resend_email": "Reenviar correo electrónico" + }, + "open_email_app": { + "title": "Revisá tu bandeja de entrada.", + "description": "Te acabamos de enviar un correo electrónico. Revisá tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste.", + "mail": "Correo", + "open_email_client": "Abrir cliente de correo electrónico" + } + }, + "home_timeline": { + "title": "Principal", + "navigation_bar_state": { + "offline": "Desconectado", + "new_posts": "Ver nuevos mensajes", + "published": "¡Enviado!", + "Publishing": "Enviando mensaje…", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Encontrá cuentas para seguir", + "follow_explain": "Cuando sigás a alguien, verás sus mensajes en tu línea temporal principal." + }, + "compose": { + "title": { + "new_post": "Nuevo mensaje", + "new_reply": "Nueva respuesta" + }, + "media_selection": { + "camera": "Tomar foto", + "photo_library": "Biblioteca de fotos", + "browse": "Explorar" + }, + "content_input_placeholder": "¿Qué onda?", + "compose_action": "Enviar", + "replying_to_user": "respondiendo a %s", + "attachment": { + "photo": "foto", + "video": "video", + "attachment_broken": "Este archivo de %s está roto\ny no se puede subir a Mastodon.", + "description_photo": "Describí la foto para personas con dificultades visuales…", + "description_video": "Describí el video para personas con dificultades visuales…" + }, + "poll": { + "duration_time": "Duración: %s", + "thirty_minutes": "30 minutos", + "one_hour": "1 hora", + "six_hours": "6 horas", + "one_day": "1 día", + "three_days": "3 días", + "seven_days": "7 días", + "option_number": "Opción %ld" + }, + "content_warning": { + "placeholder": "Escribí una advertencia precisa acá…" + }, + "visibility": { + "public": "Público", + "unlisted": "No listado", + "private": "Sólo para seguidores", + "direct": "Sólo a las cuentas que menciono" + }, + "auto_complete": { + "space_to_add": "Espacio para agregar" + }, + "accessibility": { + "append_attachment": "Agregar archivo adjunto", + "append_poll": "Agregar encuesta", + "remove_poll": "Quitar encuesta", + "custom_emoji_picker": "Selector de emoji personalizado", + "enable_content_warning": "Habilitar advertencia de contenido", + "disable_content_warning": "Deshabilitar advertencia de contenido", + "post_visibility_menu": "Menú de visibilidad del mensaje" + }, + "keyboard": { + "discard_post": "Descartar mensaje", + "publish_post": "Enviar mensaje", + "toggle_poll": "Cambiar encuesta", + "toggle_content_warning": "Cambiar advertencia de contenido", + "append_attachment_entry": "Agregar archivo adjunto - %s", + "select_visibility_entry": "Seleccionar visibilidad - %s" + } + }, + "profile": { + "dashboard": { + "posts": "mensajes", + "following": "siguiendo", + "followers": "seguidores" + }, + "fields": { + "add_row": "Agregar fila", + "placeholder": { + "label": "Nombre de campo", + "content": "Valor de campo" + } + }, + "segmented_control": { + "posts": "Mensajes", + "replies": "Respuestas", + "posts_and_replies": "Mensajes y respuestas", + "media": "Medios", + "about": "Información" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Silenciar cuenta", + "message": "Confirmá para silenciar a %s" + }, + "confirm_unmute_user": { + "title": "Dejar de silenciar cuenta", + "message": "Confirmá para dejar de silenciar a %s" + }, + "confirm_block_user": { + "title": "Bloquear cuenta", + "message": "Confirmá para desbloquear a %s" + }, + "confirm_unblock_user": { + "title": "Desbloquear cuenta", + "message": "Confirmá para desbloquear a %s" + } + }, + "accessibility": { + "show_avatar_image": "Mostrar imagen de avatar", + "edit_avatar_image": "Editar imagen de avatar", + "show_banner_image": "Mostrar imagen de banner", + "double_tap_to_open_the_list": "Tocá dos veces para abrir la lista" + } + }, + "follower": { + "footer": "No se muestran los seguidores de otros servidores." + }, + "following": { + "footer": "No se muestran las cuentas de otros servidores que seguís." + }, + "search": { + "title": "Buscar", + "search_bar": { + "placeholder": "Buscar etiquetas y cuentas", + "cancel": "Cancelar" + }, + "recommend": { + "button_text": "Ver todos", + "hash_tag": { + "title": "Tendencias en Mastodon", + "description": "Etiquetas que están recibiendo bastante atención", + "people_talking": "%s cuentas están hablando" + }, + "accounts": { + "title": "Cuentas que te pueden gustar", + "description": "Puede que te guste seguir estas cuentas", + "follow": "Seguir" + } + }, + "searching": { + "segment": { + "all": "Todas", + "people": "Cuentas", + "hashtags": "Etiquetas", + "posts": "Mensajes" + }, + "empty_state": { + "no_results": "No hay resultados" + }, + "recent_search": "Búsquedas recientes", + "clear": "Limpiar" + } + }, + "discovery": { + "tabs": { + "posts": "Mensajes", + "hashtags": "Etiquetas", + "news": "Novedades", + "community": "Comunidad", + "for_you": "Para vos" + }, + "intro": "Estos son los mensajes que están ganando tracción en tu rincón de Mastodon." + }, + "favorite": { + "title": "Tus favoritos" + }, + "notification": { + "title": { + "Everything": "Todo", + "Mentions": "Menciones" + }, + "notification_description": { + "followed_you": "te sigue", + "favorited_your_post": "marcó como favorito tu mensaje", + "reblogged_your_post": "adhirió a tu mensaje", + "mentioned_you": "te mencionó", + "request_to_follow_you": "solicitó seguirte", + "poll_has_ended": "la encuesta terminó" + }, + "keyobard": { + "show_everything": "Mostrar todo", + "show_mentions": "Mostrar menciones" + } + }, + "thread": { + "back_title": "Mensaje", + "title": "Mensaje de %s" + }, + "settings": { + "title": "Configuración", + "section": { + "appearance": { + "title": "Apariencia", + "automatic": "Automática", + "light": "Siempre clara", + "dark": "Siempre oscura" + }, + "look_and_feel": { + "title": "Apariencia", + "use_system": "Usar sistema", + "really_dark": "Oscuro de verdad", + "sorta_dark": "Algo oscuro", + "light": "Claro" + }, + "notifications": { + "title": "Notificaciones", + "favorites": "Marcó como favorito mi mensaje", + "follows": "Me sigue", + "boosts": "Adhirió a mi mensaje", + "mentions": "Me mencionó", + "trigger": { + "anyone": "cualquiera", + "follower": "un seguidor", + "follow": "alguien a quien sigo", + "noone": "nadie", + "title": "Notificarme cuando" + } + }, + "preference": { + "title": "Configuración", + "true_black_dark_mode": "Modo negro oscuro real", + "disable_avatar_animation": "Deshabilitar avatares animados", + "disable_emoji_animation": "Deshabilitar emojis animados", + "using_default_browser": "Usar navegador web predeterminado para abrir enlaces", + "open_links_in_mastodon": "Abrir enlaces en Mastodon" + }, + "boring_zone": { + "title": "La zona aburrida", + "account_settings": "Configuración de la cuenta", + "terms": "Términos del servicio", + "privacy": "Política de privacidad" + }, + "spicy_zone": { + "title": "La zona picante", + "clear": "Limpiar memoria caché multimedia", + "signout": "Cerrar sesión" + } + }, + "footer": { + "mastodon_description": "Mastodon es software de código abierto. Podés informar errores en GitHub en %s (%s)" + }, + "keyboard": { + "close_settings_window": "Cerrar ventana de configuración" + } + }, + "report": { + "title_report": "Denunciar", + "title": "Denunciar a %s", + "step1": "Paso 1 de 2", + "step2": "Paso 2 de 2", + "content1": "¿Hay otros mensajes que te gustaría agregar a la denuncia?", + "content2": "¿Hay algo que los moderadores deban saber sobre esta denuncia?", + "report_sent_title": "Gracias por tu denuncia, vamos a revisarla.", + "send": "Enviar denuncia", + "skip_to_send": "Enviar sin comentarios", + "text_placeholder": "Escribí o pegá comentarios adicionales", + "reported": "DENUNCIADA", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Cerrar previsualización", + "show_next": "Mostrar siguiente", + "show_previous": "Mostrar anterior" + } + }, + "account_list": { + "tab_bar_hint": "Perfil seleccionado actualmente: %s. Tocá dos veces y mantenelo presionado para cambiar de cuenta", + "dismiss_account_switcher": "Descartar cambio de cuenta", + "add_account": "Agregar cuenta" + }, + "wizard": { + "new_in_mastodon": "Novedad en Mastodon", + "multiple_account_switch_intro_description": "Cambiá entre varias cuentas manteniendo presionado el botón del perfil.", + "accessibility_hint": "Tocá dos veces para descartar este asistente" + } + } +} \ No newline at end of file From 2f13399720142cf261ce1769324502c3575d23c7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:02 +0200 Subject: [PATCH 252/571] New translations Localizable.stringsdict (German) --- .../input/de.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict new file mode 100644 index 000000000..36fb9f19e --- /dev/null +++ b/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ungelesene Benachrichtigung + other + %ld ungelesene Benachrichtigungen + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Eingabelimit überschritten %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Zeichen + other + %ld Zeichen + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Eingabelimit eingehalten %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Zeichen + other + %ld Zeichen + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Beitrag + other + Beiträge + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Beitrag + other + %ld Beiträge + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Favorit + other + %ld Favoriten + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Reblog + other + %ld Reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Antwort + other + %ld Antworten + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Stimme + other + %ld Stimmen + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Wähler + other + %ld Wähler + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Mensch spricht + other + %ld Leute reden + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 folgt + other + %ld folgen + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Follower + other + %ld Follower + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Jahr übrig + other + noch %ld Jahre übrig + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Monat übrig + other + noch %ld Monate übrig + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Tag übrig + other + noch %ld Tage übrig + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Stunde übrig + other + noch %ld Stunden übrig + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Minute übrig + other + noch %ld Minuten übrig + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + noch 1 Sekunde übrig + other + noch %ld Sekunden übrig + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 Jahr + other + vor %ld Jahren + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 M + other + vor %ld Monaten + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 Tag + other + vor %ld Tagen + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 Stunde + other + vor %ld Stunden + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 Minute + other + vor %ld Minuten + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + vor 1 Sekunde + other + vor %ld Sekuden + + + + From b874ff62e35e4a71dc37dad0c603c293650938d0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:03 +0200 Subject: [PATCH 253/571] New translations app.json (Japanese) --- .../StringsConvertor/input/ja.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ja.lproj/app.json diff --git a/Localization/StringsConvertor/input/ja.lproj/app.json b/Localization/StringsConvertor/input/ja.lproj/app.json new file mode 100644 index 000000000..ccbae6490 --- /dev/null +++ b/Localization/StringsConvertor/input/ja.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "もう一度お試しください。", + "please_try_again_later": "後でもう一度お試しください。" + }, + "sign_up_failure": { + "title": "サインアップに失敗しました" + }, + "server_error": { + "title": "サーバーエラー" + }, + "vote_failure": { + "title": "投票の失敗", + "poll_ended": "投票は終了しました" + }, + "discard_post_content": { + "title": "投稿を破棄しますか?", + "message": "この操作は取り消しできません。下書きは失われます。" + }, + "publish_post_failure": { + "title": "失敗", + "message": "投稿に失敗しました。\nインターネットに接続されているか確認してください。", + "attachments_message": { + "video_attach_with_photo": "すでに画像が含まれている投稿に、動画を添付することはできません。", + "more_than_one_video": "複数の動画を添付することはできません。" + } + }, + "edit_profile_failure": { + "title": "プロフィールを編集できませんでした", + "message": "プロフィールを編集できません。もう一度お試しください。" + }, + "sign_out": { + "title": "サインアウト", + "message": "本当にサインアウトしますか?", + "confirm": "サインアウト" + }, + "block_domain": { + "title": "本当に%s全体をブロックしたいのですか? ほとんどの場合、いくつかのターゲットを絞ったブロックやミュートで十分ですし、それが望ましいです。そのドメインからのコンテンツが表示されなくなり、そのドメインからのフォロワーもすべて削除されます。", + "block_entire_domain": "ドメインをブロック" + }, + "save_photo_failure": { + "title": "写真の保存に失敗しました", + "message": "写真を保存するには、フォトライブラリへのアクセス許可を有効にしてください。" + }, + "delete_post": { + "title": "投稿を削除", + "message": "本当にこの投稿を削除しますか?" + }, + "clean_cache": { + "title": "キャッシュを消去", + "message": "%sのキャッシュを消去しました。" + } + }, + "controls": { + "actions": { + "back": "戻る", + "next": "次へ", + "previous": "前", + "open": "開く", + "add": "追加", + "remove": "消去", + "edit": "編集", + "save": "保存", + "ok": "OK", + "done": "完了", + "confirm": "確認", + "continue": "続ける", + "compose": "新規作成", + "cancel": "キャンセル", + "discard": "破棄", + "try_again": "再実行", + "take_photo": "写真を撮る", + "save_photo": "写真を撮る", + "copy_photo": "写真をコピー", + "sign_in": "サインイン", + "sign_up": "サインアップ", + "see_more": "もっと見る", + "preview": "プレビュー", + "share": "共有", + "share_user": "%sを共有", + "share_post": "投稿を共有", + "open_in_safari": "Safariで開く", + "open_in_browser": "ブラウザで開く", + "find_people": "フォローする人を見つける", + "manually_search": "手動で検索する", + "skip": "スキップ", + "reply": "返信", + "report_user": "%sを通報", + "block_domain": "%sをブロック", + "unblock_domain": "%sのブロックを解除", + "settings": "設定", + "delete": "削除" + }, + "tabs": { + "home": "ホーム", + "search": "検索", + "notification": "通知", + "profile": "プロフィール" + }, + "keyboard": { + "common": { + "switch_to_tab": "%sに切り替え", + "compose_new_post": "新しい投稿を作成", + "show_favorites": "お気に入りを表示", + "open_settings": "設定を開く" + }, + "timeline": { + "previous_status": "前の投稿", + "next_status": "次の投稿", + "open_status": "投稿を開く", + "open_author_profile": "プロフィールを見る", + "open_reblogger_profile": "ブーストした人のプロフィールを開く", + "reply_status": "投稿に返信", + "toggle_reblog": "ブーストを切り替える", + "toggle_favorite": "お気に入り登録を切り替える", + "toggle_content_warning": "閲覧注意を切り替える", + "preview_image": "画像をプレビュー" + }, + "segmented_control": { + "previous_section": "前のセクション", + "next_section": "次のセクション" + } + }, + "status": { + "user_reblogged": "%sがブースト", + "user_replied_to": "%sに返信", + "show_post": "投稿を見る", + "show_user_profile": "プロフィールを見る", + "content_warning": "コンテンツ警告", + "sensitive_content": "Sensitive Content", + "media_content_warning": "どこかをタップして表示", + "tap_to_reveal": "タップして表示", + "poll": { + "vote": "投票", + "closed": "クローズド" + }, + "actions": { + "reply": "返信", + "reblog": "ブースト", + "unreblog": "ブーストを戻す", + "favorite": "お気に入り", + "unfavorite": "お気に入り登録を取り消す", + "menu": "メニュー", + "hide": "非表示", + "show_image": "画像を表示", + "show_gif": "GIFを表示", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "メンション", + "link": "リンク", + "hashtag": "ハッシュタグ", + "email": "メール", + "emoji": "絵文字" + }, + "visibility": { + "unlisted": "この投稿は誰でも見ることができますが、公開タイムラインには表示されません。", + "private": "この投稿はフォロワーに限り見ることができます。", + "private_from_me": "この投稿はフォロワーに限り見ることができます。", + "direct": "この投稿はメンションされたユーザーに限り見ることができます。" + } + }, + "friendship": { + "follow": "フォロー", + "following": "フォロー中", + "request": "リクエスト", + "pending": "保留", + "block": "ブロック", + "block_user": "%sをブロック", + "block_domain": "%sをブロック", + "unblock": "ブロックを解除", + "unblock_user": "%sのブロックを解除", + "blocked": "ブロック済み", + "mute": "ミュート", + "mute_user": "%sをミュート", + "unmute": "ミュートを解除", + "unmute_user": "%sのミュートを解除", + "muted": "ミュート済み", + "edit_info": "編集" + }, + "timeline": { + "filtered": "フィルター済み", + "timestamp": { + "now": "今" + }, + "loader": { + "load_missing_posts": "不足している投稿を読み込む", + "loading_missing_posts": "読込中...", + "show_more_replies": "返信をさらに表示" + }, + "header": { + "no_status_found": "投稿が見つかりません", + "blocking_warning": "ブロックを解除するまでこのユーザーをみることはできません。\nそういうことです。", + "user_blocking_warning": "%sがブロックを解除しない限りプロフィールをみることはできません。\nそういうことです。", + "blocked_warning": "ブロックされているようです...", + "user_blocked_warning": "%sがブロックを解除しない限りプロフィールをみることはできません。", + "suspended_warning": "このユーザーは停止されています。", + "user_suspended_warning": "%sのアカウントは停止されました。" + } + } + } + }, + "scene": { + "welcome": { + "slogan": "ソーシャルネットワーキングを、あなたの手の中に.", + "get_started": "はじめる", + "log_in": "ログイン" + }, + "server_picker": { + "title": "サーバーを選択", + "subtitle": "あなたの興味分野・地域に合ったコミュニティや、汎用のものを選択してください。", + "subtitle_extend": "あなたの興味分野・地域に合ったコミュニティや、汎用のものを選択してください。各コミュニティはそれぞれ完全に独立した組織や個人によって運営されています。", + "button": { + "category": { + "all": "すべて", + "all_accessiblity_description": "カテゴリ: すべて", + "academia": "アカデミア", + "activism": "アクティビズム", + "food": "食べ物", + "furry": "ケモノ", + "games": "ゲーム", + "general": "全般", + "journalism": "言論", + "lgbt": "lgbt", + "regional": "地域", + "art": "アート", + "music": "音楽", + "tech": "技術" + }, + "see_less": "閉じる", + "see_more": "もっと見る" + }, + "label": { + "language": "言語", + "users": "ユーザー", + "category": "カテゴリー" + }, + "input": { + "placeholder": "サーバーを探す", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "利用可能なサーバーの検索...", + "bad_network": "データの読み込み中に何か問題が発生しました。インターネットの接続状況を確認してください。", + "no_results": "なし" + } + }, + "register": { + "title": "あなたのことを教えてください", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "削除" + }, + "username": { + "placeholder": "ユーザー名", + "duplicate_prompt": "このユーザー名は使用されています" + }, + "display_name": { + "placeholder": "表示名" + }, + "email": { + "placeholder": "メール" + }, + "password": { + "placeholder": "パスワード", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "パスワードは最低でも8文字必要です。" + }, + "invite": { + "registration_user_invite_request": "なぜ参加したいと思ったのですか?" + } + }, + "error": { + "item": { + "username": "ユーザー名", + "email": "メール", + "password": "パスワード", + "agreement": "契約", + "locale": "地域", + "reason": "理由" + }, + "reason": { + "blocked": "%s は許可されていないメールプロバイダを含んでいます", + "unreachable": "%sは存在しないようです", + "taken": "%sは既に使われています", + "reserved": "%sは予約語です", + "accepted": "%s に合意しなければなりません", + "blank": "%sが必要です", + "invalid": "%sは無効です", + "too_long": "%sは長すぎます", + "too_short": "%sは短すぎます", + "inclusion": "%s はサポートされていない値です" + }, + "special": { + "username_invalid": "ユーザーネームには、英数字とアンダースコアのみを使用してください。", + "username_too_long": "ユーザー名が長すぎます(30文字以内)", + "email_invalid": "有効なメールアドレスではありません", + "password_too_short": "パスワードが短すぎます(8文字以上)" + } + } + }, + "server_rules": { + "title": "いくつかのルールがあります。", + "subtitle": "これらのルールは、%sの管理者によって設定されています。", + "prompt": "同意することでお客様は以下のサービスの利用規約とプライバシーポリシーに従うことになります。 %s.", + "terms_of_service": "利用規約", + "privacy_policy": "プライバシーポリシー", + "button": { + "confirm": "同意する" + } + }, + "confirm_email": { + "title": "さいごにもうひとつ。", + "subtitle": "先程 %s にメールを送信しました。リンクをタップしてアカウントを確認してください。", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "メールアプリを開く", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "メールをチェックしてください", + "description": "メールアドレスが正しいかどうか、また、迷惑メールフォルダに入っていないかどうかも確認してください。", + "resend_email": "もう一度メールを送信" + }, + "open_email_app": { + "title": "メールを確認", + "description": "先ほどメールをお送りしました。まだの方は、迷惑メールフォルダをご確認ください。", + "mail": "メール", + "open_email_client": "メールアプリを開く" + } + }, + "home_timeline": { + "title": "ホーム", + "navigation_bar_state": { + "offline": "オフライン", + "new_posts": "新しい投稿を見る", + "published": "投稿しました!", + "Publishing": "投稿中...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "フォローする人を探す", + "follow_explain": "誰かをフォローすると、その人の投稿がタイムラインに表示されるようになります。" + }, + "compose": { + "title": { + "new_post": "新しい投稿", + "new_reply": "新しい返信" + }, + "media_selection": { + "camera": "写真を撮る", + "photo_library": "フォトライブラリ", + "browse": "ブラウズ" + }, + "content_input_placeholder": "気になることを入力またはペースト", + "compose_action": "投稿", + "replying_to_user": "%sに返信", + "attachment": { + "photo": "写真", + "video": "動画", + "attachment_broken": "%sは壊れていてMastodonにアップロードできません。", + "description_photo": "閲覧が難しいユーザーへの画像説明", + "description_video": "閲覧が難しいユーザーへの映像説明" + }, + "poll": { + "duration_time": "期間: %s", + "thirty_minutes": "30分", + "one_hour": "1時間", + "six_hours": "6時間", + "one_day": "1日", + "three_days": "3日", + "seven_days": "7日", + "option_number": "オプション %ld" + }, + "content_warning": { + "placeholder": "ここに警告を書いてください..." + }, + "visibility": { + "public": "パブリック", + "unlisted": "非表示", + "private": "フォロワーのみ", + "direct": "ダイレクト" + }, + "auto_complete": { + "space_to_add": "スペースを追加" + }, + "accessibility": { + "append_attachment": "アタッチメントの追加", + "append_poll": "投票を追加", + "remove_poll": "投票を消去", + "custom_emoji_picker": "カスタム絵文字ピッカー", + "enable_content_warning": "閲覧注意を有効にする", + "disable_content_warning": "閲覧注意を無効にする", + "post_visibility_menu": "投稿の表示メニュー" + }, + "keyboard": { + "discard_post": "投稿を破棄", + "publish_post": "投稿する", + "toggle_poll": "投票を切り替える", + "toggle_content_warning": "閲覧注意を切り替える", + "append_attachment_entry": "アタッチメントを追加 - %s", + "select_visibility_entry": "公開設定を選択 - %s" + } + }, + "profile": { + "dashboard": { + "posts": "投稿", + "following": "フォロー", + "followers": "フォロワー" + }, + "fields": { + "add_row": "行追加", + "placeholder": { + "label": "ラベル", + "content": "コンテンツ" + } + }, + "segmented_control": { + "posts": "投稿", + "replies": "返信", + "posts_and_replies": "投稿と返信", + "media": "メディア", + "about": "概要" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "ミュートを解除", + "message": "%sをミュートしますか?" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "他のサーバーからのフォロワーは表示されません。" + }, + "following": { + "footer": "他のサーバーにいるフォローは表示されません。" + }, + "search": { + "title": "検索", + "search_bar": { + "placeholder": "ハッシュタグとユーザーを検索", + "cancel": "キャンセル" + }, + "recommend": { + "button_text": "すべて見る", + "hash_tag": { + "title": "マストドンに関するトレンド", + "description": "注目されているハッシュタグ", + "people_talking": "%s人が話題について話しています" + }, + "accounts": { + "title": "おすすめのアカウント", + "description": "以下のアカウントをフォローしてみてはいかがでしょうか?", + "follow": "フォロー" + } + }, + "searching": { + "segment": { + "all": "すべて", + "people": "人々", + "hashtags": "ハッシュタグ", + "posts": "投稿" + }, + "empty_state": { + "no_results": "なし" + }, + "recent_search": "最近の検索", + "clear": "クリア" + } + }, + "discovery": { + "tabs": { + "posts": "投稿", + "hashtags": "ハッシュタグ", + "news": "ニュース", + "community": "コミュニティ", + "for_you": "おすすめ" + }, + "intro": "あなたのMastodonサーバーで注目を集めている投稿がここに表示されます。" + }, + "favorite": { + "title": "お気に入り" + }, + "notification": { + "title": { + "Everything": "すべて", + "Mentions": "メンション" + }, + "notification_description": { + "followed_you": "さんにフォローされました", + "favorited_your_post": "さんがあなたの投稿をお気に入りに登録しました", + "reblogged_your_post": "さんがあなたの投稿をブーストしました", + "mentioned_you": "さんがあなたに返信しました", + "request_to_follow_you": "さんがあなたにフォローリクエストしました", + "poll_has_ended": "アンケートが終了しました" + }, + "keyobard": { + "show_everything": "すべて見る", + "show_mentions": "メンションを見る" + } + }, + "thread": { + "back_title": "投稿", + "title": "%sの投稿" + }, + "settings": { + "title": "設定", + "section": { + "appearance": { + "title": "外観", + "automatic": "システムに合わせる", + "light": "ライト", + "dark": "ダーク" + }, + "look_and_feel": { + "title": "テーマ", + "use_system": "端末の設定を使う", + "really_dark": "ブラック", + "sorta_dark": "ダーク", + "light": "ライト" + }, + "notifications": { + "title": "通知", + "favorites": "お気に入り登録", + "follows": "フォロー", + "boosts": "ブースト", + "mentions": "メンション", + "trigger": { + "anyone": "誰でも", + "follower": "フォロワー", + "follow": "フォローしている人", + "noone": "なし", + "title": "通知を受け取る" + } + }, + "preference": { + "title": "環境設定", + "true_black_dark_mode": "真っ黒なダークテーマを使用する", + "disable_avatar_animation": "アバターのアニメーションを無効化する", + "disable_emoji_animation": "絵文字のアニメーションを無効化する", + "using_default_browser": "既定のブラウザでリンクを開く", + "open_links_in_mastodon": "Mastodonでリンクを開く" + }, + "boring_zone": { + "title": "アプリについて", + "account_settings": "アカウント設定", + "terms": "利用規約", + "privacy": "プライバシーポリシー" + }, + "spicy_zone": { + "title": "スパイシーゾーン", + "clear": "メディアキャッシュをクリア", + "signout": "サインアウト" + } + }, + "footer": { + "mastodon_description": "Mastodonはオープンソースです。バグの報告はGithubの%s (%s)で行うことができます。" + }, + "keyboard": { + "close_settings_window": "設定を閉じる" + } + }, + "report": { + "title_report": "報告する", + "title": "%sを通報", + "step1": "ステップ 1/2", + "step2": "ステップ 2/2", + "content1": "他に通報したい投稿はありますか?", + "content2": "この通報についてモデレーターに伝達しておきたい事項はありますか?", + "report_sent_title": "ご報告ありがとうございます、追って確認します。", + "send": "通報を送信", + "skip_to_send": "コメントなしで送信", + "text_placeholder": "追加コメントを入力", + "reported": "報告済み", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "プレビューを閉じる", + "show_next": "次を見る", + "show_previous": "前を見る" + } + }, + "account_list": { + "tab_bar_hint": "現在のアカウント: %s. ダブルタップしてアカウント切替画面を表示します", + "dismiss_account_switcher": "アカウント切替画面を閉じます", + "add_account": "アカウントを追加" + }, + "wizard": { + "new_in_mastodon": "Mastodon の新機能", + "multiple_account_switch_intro_description": "プロフィールボタンを押して複数のアカウントを切り替えます。", + "accessibility_hint": "チュートリアルを閉じるには、ダブルタップしてください" + } + } +} \ No newline at end of file From 3df7e0b2641cc1392e2fdf7282b791849b36ff0c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:04 +0200 Subject: [PATCH 254/571] New translations app.json (Korean) --- .../StringsConvertor/input/ko.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ko.lproj/app.json diff --git a/Localization/StringsConvertor/input/ko.lproj/app.json b/Localization/StringsConvertor/input/ko.lproj/app.json new file mode 100644 index 000000000..ad93f3d65 --- /dev/null +++ b/Localization/StringsConvertor/input/ko.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "다시 시도해주세요.", + "please_try_again_later": "나중에 다시 시도해 주세요" + }, + "sign_up_failure": { + "title": "가입 실패" + }, + "server_error": { + "title": "서버 오류" + }, + "vote_failure": { + "title": "투표 실패", + "poll_ended": "투표가 끝났습니다" + }, + "discard_post_content": { + "title": "초안 버리기", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "게시 실패", + "message": "글을 게시하는데 실패했습니다.\n인터넷 연결을 확인해 주세요.", + "attachments_message": { + "video_attach_with_photo": "이미 그림이 첨부된 글에는 영상을 첨부할 수 없습니다.", + "more_than_one_video": "영상은 한 개까지만 첨부할 수 있습니다." + } + }, + "edit_profile_failure": { + "title": "프로필 수정 오류", + "message": "프로필을 수정할 수 없습니다. 다시 시도해 주세요." + }, + "sign_out": { + "title": "로그아웃", + "message": "정말로 로그아웃 하시겠습니까?", + "confirm": "로그아웃" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "도메인 차단" + }, + "save_photo_failure": { + "title": "사진 저장 실패", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "정말로 이 게시물을 삭제하시겠습니까?", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "캐시 삭제", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "뒤로가기", + "next": "다음", + "previous": "이전", + "open": "열기", + "add": "추가", + "remove": "삭제", + "edit": "수정", + "save": "저장", + "ok": "확인", + "done": "완료", + "confirm": "확인", + "continue": "계속", + "compose": "Compose", + "cancel": "취소", + "discard": "버리기", + "try_again": "다시 시도", + "take_photo": "사진 촬영", + "save_photo": "사진 저장", + "copy_photo": "사진 복사", + "sign_in": "로그인", + "sign_up": "회원가입", + "see_more": "더 보기", + "preview": "미리보기", + "share": "공유", + "share_user": "%s를 공유", + "share_post": "게시물 공유", + "open_in_safari": "사파리에서 열기", + "open_in_browser": "Open in Browser", + "find_people": "팔로우 할 사람들 찾기", + "manually_search": "대신 수동으로 검색하기", + "skip": "건너뛰기", + "reply": "답장", + "report_user": "%s 신고하기", + "block_domain": "%s 차단하기", + "unblock_domain": "%s 차단 해제", + "settings": "설정", + "delete": "삭제" + }, + "tabs": { + "home": "홈", + "search": "검색", + "notification": "알림", + "profile": "프로필" + }, + "keyboard": { + "common": { + "switch_to_tab": "%s로 전환", + "compose_new_post": "새 글 작성", + "show_favorites": "즐겨찾기 보이기", + "open_settings": "설정 열기" + }, + "timeline": { + "previous_status": "이전 글", + "next_status": "다음 글", + "open_status": "게시물 열기", + "open_author_profile": "작성자의 프로필 열기", + "open_reblogger_profile": "리블로거의 프로필 열기", + "reply_status": "게시물에 답장", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "이미지 미리보기" + }, + "segmented_control": { + "previous_section": "이전 구역", + "next_section": "다음 구역" + } + }, + "status": { + "user_reblogged": "%s 님이 리블로그 하였습니다", + "user_replied_to": "%s 님에게 답장", + "show_post": "게시물 보기", + "show_user_profile": "사용자 프로필 보기", + "content_warning": "열람 주의", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "투표", + "closed": "마감" + }, + "actions": { + "reply": "답글", + "reblog": "리블로그", + "unreblog": "리블로그 취소", + "favorite": "즐겨찾기", + "unfavorite": "즐겨찾기 해제", + "menu": "메뉴", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "멘션", + "link": "링크", + "hashtag": "해시태그", + "email": "이메일", + "emoji": "에모지" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "팔로우", + "following": "팔로잉", + "request": "요청", + "pending": "대기중", + "block": "차단", + "block_user": "%s 차단", + "block_domain": "%s 차단", + "unblock": "차단 해제", + "unblock_user": "%s 차단 해제", + "blocked": "차단됨", + "mute": "뮤트", + "mute_user": "%s 뮤트", + "unmute": "뮤트 해제", + "unmute_user": "%s 뮤트 해제", + "muted": "뮤트됨", + "edit_info": "정보 편집" + }, + "timeline": { + "filtered": "필터됨", + "timestamp": { + "now": "지금" + }, + "loader": { + "load_missing_posts": "빈 게시물 불러오기", + "loading_missing_posts": "빈 게시물 불러오는 중…", + "show_more_replies": "답글 더 보기" + }, + "header": { + "no_status_found": "게시물이 없습니다", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "이 사용자는 정지된 상태입니다.", + "user_suspended_warning": "%s의 계정은 정지된 상태입니다." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "소셜 네트워킹을\n여러분의 손에 돌려드립니다.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "서버를 고르세요,\n아무 서버나 좋습니다.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "모두", + "all_accessiblity_description": "분류: 전체", + "academia": "학술", + "activism": "사회운동", + "food": "음식", + "furry": "수인", + "games": "게임", + "general": "일반", + "journalism": "언론", + "lgbt": "성소수자", + "regional": "지역", + "art": "예술", + "music": "음악", + "tech": "기술" + }, + "see_less": "간략히 보기", + "see_more": "더 보기" + }, + "label": { + "language": "언어", + "users": "사용자", + "category": "분류" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "결과 없음" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "삭제" + }, + "username": { + "placeholder": "사용자명", + "duplicate_prompt": "이 사용자명은 이미 사용중입니다." + }, + "display_name": { + "placeholder": "표시되는 이름" + }, + "email": { + "placeholder": "이메일" + }, + "password": { + "placeholder": "암호", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "암호는 최소 8글자 이상이어야 합니다" + }, + "invite": { + "registration_user_invite_request": "가입하려는 이유가 무엇인가요?" + } + }, + "error": { + "item": { + "username": "사용자명", + "email": "이메일", + "password": "암호", + "agreement": "Agreement", + "locale": "지역설정", + "reason": "사유" + }, + "reason": { + "blocked": "%s는 허용되지 않은 이메일 제공자를 포함합니다", + "unreachable": "%s는 존재하지 않는 것 같습니다", + "taken": "%s는 이미 사용 중입니다", + "reserved": "%s는 예약된 키워드입니다", + "accepted": "%s는 반드시 동의해야 합니다", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "동의합니다" + } + }, + "confirm_email": { + "title": "마지막으로.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "오프라인", + "new_posts": "새 글 보기", + "published": "게시됨!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "시각장애인을 위한 사진 설명…", + "description_video": "시각장애인을 위한 영상 설명…" + }, + "poll": { + "duration_time": "기간: %s", + "thirty_minutes": "30분", + "one_hour": "1시간", + "six_hours": "6시간", + "one_day": "1일", + "three_days": "3일", + "seven_days": "7일", + "option_number": "옵션 %ld" + }, + "content_warning": { + "placeholder": "정확한 경고 문구를 여기에 작성하세요…" + }, + "visibility": { + "public": "공개", + "unlisted": "비표시", + "private": "팔로워 전용", + "direct": "내가 멘션한 사람만" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "첨부파일 추가", + "append_poll": "투표 추가", + "remove_poll": "투표 삭제", + "custom_emoji_picker": "커스텀 에모지 선택기", + "enable_content_warning": "열람 주의 설정", + "disable_content_warning": "열람 주의 해제", + "post_visibility_menu": "게시물 공개범위 메뉴" + }, + "keyboard": { + "discard_post": "글 버리기", + "publish_post": "게시", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "게시물", + "following": "팔로잉", + "followers": "팔로워" + }, + "fields": { + "add_row": "행 추가", + "placeholder": { + "label": "라벨", + "content": "내용" + } + }, + "segmented_control": { + "posts": "게시물", + "replies": "답글", + "posts_and_replies": "Posts and Replies", + "media": "미디어", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "계정 뮤트 해제", + "message": "%s 뮤트 해제 확인" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "검색", + "search_bar": { + "placeholder": "해시태그와 사용자 검색", + "cancel": "취소" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "설정", + "true_black_dark_mode": "트루 블랙 어두운 모드", + "disable_avatar_animation": "움직이는 아바타 비활성화", + "disable_emoji_animation": "움직이는 에모지 비활성화", + "using_default_browser": "기본 브라우저로 링크 열기", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "지루한 영역", + "account_settings": "계정 설정", + "terms": "서비스 약관", + "privacy": "개인정보 정책" + }, + "spicy_zone": { + "title": "매운 영역", + "clear": "미디어 캐시 삭제", + "signout": "로그아웃" + } + }, + "footer": { + "mastodon_description": "마스토돈은 오픈소스 소프트웨어입니다. Github의 %s (%s)에서 문제를 보고할 수 있습니다." + }, + "keyboard": { + "close_settings_window": "설정 창 닫기" + } + }, + "report": { + "title_report": "Report", + "title": "%s 신고하기", + "step1": "1단계 (총 2단계)", + "step2": "2단계 (총 2단계)", + "content1": "신고에 추가하고 싶은 다른 게시물이 존재하나요?", + "content2": "이 신고에 대해 중재자들이 알아야 할 것이 있나요?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "신고 전송", + "skip_to_send": "추가설명 없이 보내기", + "text_placeholder": "추가 설명을 적거나 붙여넣으세요", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "서버의 중재자들이 이것을 심사하는 동안, 당신은 %s에 대한 행동을 취할 수 있습니다" + } + }, + "preview": { + "keyboard": { + "close_preview": "미리보기 닫기", + "show_next": "다음 보기", + "show_previous": "이전 보기" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From e4070148b117114ac146d0833cebb050fccd69da Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:05 +0200 Subject: [PATCH 255/571] New translations app.json (Dutch) --- .../StringsConvertor/input/nl.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/nl.lproj/app.json diff --git a/Localization/StringsConvertor/input/nl.lproj/app.json b/Localization/StringsConvertor/input/nl.lproj/app.json new file mode 100644 index 000000000..499214f7b --- /dev/null +++ b/Localization/StringsConvertor/input/nl.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Probeer het opnieuw.", + "please_try_again_later": "Probeer het later nog eens." + }, + "sign_up_failure": { + "title": "Registratiefout" + }, + "server_error": { + "title": "Serverfout" + }, + "vote_failure": { + "title": "Stemmen Mislukt", + "poll_ended": "De peiling is beëindigd" + }, + "discard_post_content": { + "title": "Verwijder concept", + "message": "Bevestig het verwijderen van het concept bericht." + }, + "publish_post_failure": { + "title": "Publicatiefout", + "message": "Het publiceren van het bericht is mislukt. Controleer je internetverbinding.", + "attachments_message": { + "video_attach_with_photo": "Een video kan niet aan een bericht met afbeeldingen worden gekoppeld.", + "more_than_one_video": "Kan niet meer dan één video toevoegen." + } + }, + "edit_profile_failure": { + "title": "Profiel bewerken mislukt", + "message": "Je profiel kan niet bewerkt worden. Probeer het opnieuw." + }, + "sign_out": { + "title": "Log-uit", + "message": "Weet je zeker dat je wilt uitloggen?", + "confirm": "Log-uit" + }, + "block_domain": { + "title": "Weet je het echt heel erg zeker dat je alles van %s wilt negeren? In de meeste gevallen is het blokkeren of negeren van een paar specifieke personen voldoende. Je zult geen berichten van deze server op openbare tijdlijnen zien of in jouw meldingen. Jouw volgers van deze server worden verwijderd.", + "block_entire_domain": "Blokkeer domein" + }, + "save_photo_failure": { + "title": "Foto Opslaan Mislukt", + "message": "Geef toestemming om de foto op te slaan." + }, + "delete_post": { + "title": "Verwijder Bericht", + "message": "Weet je zeker dat je dit bericht wilt verwijderen?" + }, + "clean_cache": { + "title": "Cache-geheugen Wissen", + "message": "Cache-geheugen (%s) succesvol gewist." + } + }, + "controls": { + "actions": { + "back": "Terug", + "next": "Volgende", + "previous": "Vorige", + "open": "Open", + "add": "Voeg toe", + "remove": "Verwijder", + "edit": "Bewerk", + "save": "Bewaar", + "ok": "Ok", + "done": "Klaar", + "confirm": "Bevestigen", + "continue": "Ga verder", + "compose": "Schrijf bericht", + "cancel": "Annuleer", + "discard": "Weggooien", + "try_again": "Probeer Opnieuw", + "take_photo": "Maak foto", + "save_photo": "Bewaar foto", + "copy_photo": "Kopieer foto", + "sign_in": "Aanmelden", + "sign_up": "Registreren", + "see_more": "Meer", + "preview": "Voorvertoning", + "share": "Deel", + "share_user": "Delen %s", + "share_post": "Deel bericht", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in browser", + "find_people": "Zoek mensen om te volgen", + "manually_search": "Handmatig zoeken", + "skip": "Overslaan", + "reply": "Reageer", + "report_user": "Rapporteer %s", + "block_domain": "Blokkeer %s", + "unblock_domain": "Deblokkeer %s", + "settings": "Instellingen", + "delete": "Verwijder" + }, + "tabs": { + "home": "Start", + "search": "Zoek", + "notification": "Melding", + "profile": "Profiel" + }, + "keyboard": { + "common": { + "switch_to_tab": "Overschakelen naar %s", + "compose_new_post": "Nieuw Bericht Opstellen", + "show_favorites": "Favorieten Weergeven", + "open_settings": "Open Instellingen" + }, + "timeline": { + "previous_status": "Vorig Bericht", + "next_status": "Volgend Bericht", + "open_status": "Open Bericht", + "open_author_profile": "Open Auteursprofiel", + "open_reblogger_profile": "Open Delersprofiel", + "reply_status": "Reageer", + "toggle_reblog": "Delen bij berichten omschakelen", + "toggle_favorite": "Favoriet in-/uitschakelen bij Post", + "toggle_content_warning": "Inhoudswaarschuwing", + "preview_image": "Voorvertoning Afbeelding" + }, + "segmented_control": { + "previous_section": "Vorige Sectie", + "next_section": "Volgende Sectie" + } + }, + "status": { + "user_reblogged": "%s heeft gedeeld", + "user_replied_to": "Reactie op %s", + "show_post": "Toon Bericht", + "show_user_profile": "Toon Gebruikersprofiel", + "content_warning": "Inhoudswaarschuwing", + "sensitive_content": "Gevoelige inhoud", + "media_content_warning": "Tap hier om te tonen", + "tap_to_reveal": "Tik om te onthullen", + "poll": { + "vote": "Stemmen", + "closed": "Gesloten" + }, + "actions": { + "reply": "Reageren", + "reblog": "Delen", + "unreblog": "Delen ongedaan maken", + "favorite": "Toevoegen aan Favorieten", + "unfavorite": "Verwijderen uit Favorieten", + "menu": "Menu", + "hide": "Verberg", + "show_image": "Toon afbeelding", + "show_gif": "GIF weergeven", + "show_video_player": "Toon videospeler", + "tap_then_hold_to_show_menu": "Tik en houd vast om menu te tonen" + }, + "tag": { + "url": "URL", + "mention": "Vermelden", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Iedereen kan dit bericht zien maar het wordt niet in de publieke tijdlijn getoond.", + "private": "Alleen hun volgers kunnen dit bericht zien.", + "private_from_me": "Alleen mijn volgers kunnen dit bericht zien.", + "direct": "Alleen de vermelde persoon kan dit bericht zien." + } + }, + "friendship": { + "follow": "Volgen", + "following": "Gevolgd", + "request": "Verzoeken", + "pending": "In afwachting", + "block": "Blokkeren", + "block_user": "Blokkeer %s", + "block_domain": "Blokkeer %s", + "unblock": "Deblokkeer", + "unblock_user": "Deblokkeer %s", + "blocked": "Geblokkeerd", + "mute": "Negeren", + "mute_user": "Negeer %s", + "unmute": "Niet langer negeren", + "unmute_user": "%s niet langer negeren", + "muted": "Genegeerd", + "edit_info": "Bewerken" + }, + "timeline": { + "filtered": "Gefilterd", + "timestamp": { + "now": "Nu" + }, + "loader": { + "load_missing_posts": "Resterende berichten laden", + "loading_missing_posts": "Resterende berichten laden...", + "show_more_replies": "Toon meer reacties" + }, + "header": { + "no_status_found": "Geen Berichten Gevonden", + "blocking_warning": "U kunt het profiel van deze geblokkeerde gebruiker niet bekijken.\nUw profiel ziet er zo uit voor hen.", + "user_blocking_warning": "U kunt het profiel van %s niet bekijken zolang deze gebruiker geblokkeerd is.\nUw profiel ziet er zo uit voor hen.", + "blocked_warning": "U kunt het profiel van deze gebruiker niet bekijken zolang u geblokkeerd bent.", + "user_blocked_warning": "U kunt het profiel van %s niet bekijken zolang u geblokkeerd bent.", + "suspended_warning": "Deze gebruiker is geschorst.", + "user_suspended_warning": "%s's account is geschorst." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Sociale media terug in uw handen.", + "get_started": "Aan de slag", + "log_in": "Log in" + }, + "server_picker": { + "title": "Kies een server, welke dan ook.", + "subtitle": "Kies een gemeenschap gebaseerd op jouw interesses, regio of een algemeen doel.", + "subtitle_extend": "Kies een gemeenschap gebaseerd op jouw interesses, regio, of een algemeen doel. Elke gemeenschap wordt beheerd door een volledig onafhankelijke organisatie of individu.", + "button": { + "category": { + "all": "Alles", + "all_accessiblity_description": "Categorie: Alles", + "academia": "academisch", + "activism": "activisme", + "food": "eten", + "furry": "furry", + "games": "spellen", + "general": "algemeen", + "journalism": "journalistiek", + "lgbt": "lgbt", + "regional": "regionaal", + "art": "kunst", + "music": "muziek", + "tech": "technologie" + }, + "see_less": "Minder Weergeven", + "see_more": "Meer Weergeven" + }, + "label": { + "language": "TAAL", + "users": "GEBRUIKERS", + "category": "CATEGORIE" + }, + "input": { + "placeholder": "Zoek uw server of sluit u bij een nieuwe server aan...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Beschikbare servers zoeken...", + "bad_network": "Er is een fout opgetreden bij het laden van de gegevens. Controleer uw internetverbinding.", + "no_results": "Geen resultaten" + } + }, + "register": { + "title": "Vertel ons over uzelf.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Verwijderen" + }, + "username": { + "placeholder": "gebruikersnaam", + "duplicate_prompt": "Deze gebruikersnaam is al in gebruik." + }, + "display_name": { + "placeholder": "weergavenaam" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "wachtwoord", + "require": "Je wachtwoord moet ten minste:", + "character_limit": "8 tekens", + "accessibility": { + "checked": "ingeschakeld", + "unchecked": "uitgeschakeld" + }, + "hint": "Uw wachtwoord moet ten minste acht tekens bevatten" + }, + "invite": { + "registration_user_invite_request": "Waarom wil u zich hier registreren?" + } + }, + "error": { + "item": { + "username": "Gebruikersnaam", + "email": "Email", + "password": "Wachtwoord", + "agreement": "Overeenkomst", + "locale": "Taal", + "reason": "Reden" + }, + "reason": { + "blocked": "%s gebruikt een niet-toegestane emailprovider", + "unreachable": "%s lijkt niet te bestaan", + "taken": "%s is reeds in gebruik", + "reserved": "%s is een gereserveerd woord", + "accepted": "%s moet geaccepteerd worden", + "blank": "%s is vereist", + "invalid": "%s is ongeldig", + "too_long": "%s is te lang", + "too_short": "%s is te kort", + "inclusion": "%s is een niet-ondersteunde waarde" + }, + "special": { + "username_invalid": "Een gebruikersnaam mag alleen alfanumerieke karakters en lage streepjes bevatten", + "username_too_long": "De gebruikersnaam is te lang (het kan maximaal 30 karakters bevatten)", + "email_invalid": "Dit is geen geldig emailadres", + "password_too_short": "Het wachtwoord is te kort (het moet ten minste 8 tekens bevatten)" + } + } + }, + "server_rules": { + "title": "Enkele basisregels.", + "subtitle": "Deze regels zijn ingesteld door de beheerders van %s.", + "prompt": "Als u verder gaat dan gaat u akkoord met de servicevoorwaarden en privacybeleid van %s.", + "terms_of_service": "servicevoorwaarden", + "privacy_policy": "privacybeleid", + "button": { + "confirm": "Ik Ga Akkoord" + } + }, + "confirm_email": { + "title": "Nog één ding.", + "subtitle": "We hebben een e-mail gestuurd naar %s,\nklik op de link om uw account te bevestigen.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Email Openen", + "resend": "Verstuur opnieuw" + }, + "dont_receive_email": { + "title": "Controleer uw emailadres", + "description": "Controleer of uw emailadres correct is en of the email in de ongewenste email filter terecht is gekomen.", + "resend_email": "Email Opnieuw Versturen" + }, + "open_email_app": { + "title": "Ga naar uw inbox.", + "description": "We hebben u een e-mail gestuurd. Controleer ook uw de ongewenste email filter.", + "mail": "Mail", + "open_email_client": "Open Email Applicatie" + } + }, + "home_timeline": { + "title": "Start", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "Bekijk nieuwe berichten", + "published": "Gepubliceerd!", + "Publishing": "Bericht publiceren...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Zoek Mensen om te Volgen", + "follow_explain": "Wanneer u iemand volgt, ziet u hun berichten op de startpagina." + }, + "compose": { + "title": { + "new_post": "Nieuw Bericht", + "new_reply": "Nieuwe Reactie" + }, + "media_selection": { + "camera": "Foto Maken", + "photo_library": "Fotobibliotheek", + "browse": "Bladeren" + }, + "content_input_placeholder": "Schrijf of plak wat in je hoofd rondzweeft", + "compose_action": "Publiceren", + "replying_to_user": "reageren op %s", + "attachment": { + "photo": "foto", + "video": "video", + "attachment_broken": "Deze %s is corrupt en kan niet geüpload worden naar Mastodon.", + "description_photo": "Omschrijf de foto voor mensen met een visuele beperking...", + "description_video": "Omschrijf de video voor mensen met een visuele beperking..." + }, + "poll": { + "duration_time": "Duur: %s", + "thirty_minutes": "30 minuten", + "one_hour": "1 Uur", + "six_hours": "6 Uur", + "one_day": "1 Dag", + "three_days": "3 Dagen", + "seven_days": "7 Dagen", + "option_number": "Optie %ld" + }, + "content_warning": { + "placeholder": "Schrijf hier een nauwkeurige waarschuwing..." + }, + "visibility": { + "public": "Openbaar", + "unlisted": "Niet-vermeld", + "private": "Alleen volgers", + "direct": "Alleen vermelde gebruikers" + }, + "auto_complete": { + "space_to_add": "Spaties toe te voegen" + }, + "accessibility": { + "append_attachment": "Bijlage Toevoegen", + "append_poll": "Peiling Toevoegen", + "remove_poll": "Peiling verwijderen", + "custom_emoji_picker": "Eigen Emojikiezer", + "enable_content_warning": "Inhoudswaarschuwing inschakelen", + "disable_content_warning": "Inhoudswaarschuwing Uitschakelen", + "post_visibility_menu": "Berichtzichtbaarheidsmenu" + }, + "keyboard": { + "discard_post": "Bericht Verwijderen", + "publish_post": "Bericht Publiceren", + "toggle_poll": "Peiling omschakelen", + "toggle_content_warning": "Inhoudswaarschuwing Omschakelen", + "append_attachment_entry": "Bijlage Toevoegen - %s", + "select_visibility_entry": "Zichtbaarheid Selecteren - %s" + } + }, + "profile": { + "dashboard": { + "posts": "berichten", + "following": "volgend", + "followers": "volgers" + }, + "fields": { + "add_row": "Rij Toevoegen", + "placeholder": { + "label": "Etiket", + "content": "Inhoud" + } + }, + "segmented_control": { + "posts": "Berichten", + "replies": "Reacties", + "posts_and_replies": "Berichten en reacties", + "media": "Media", + "about": "Informatie" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Negeer account", + "message": "Bevestig om %s te negeren" + }, + "confirm_unmute_user": { + "title": "Account Negeren", + "message": "Bevestig om %s te negeren" + }, + "confirm_block_user": { + "title": "Blokkeer account", + "message": "Bevestig om %s te blokkeren" + }, + "confirm_unblock_user": { + "title": "Deblokkeer Account", + "message": "Bevestig om %s te deblokkeren" + } + }, + "accessibility": { + "show_avatar_image": "Toon avatar-afbeelding", + "edit_avatar_image": "Bewerk avatar-afbeelding", + "show_banner_image": "Toon banner-afbeelding", + "double_tap_to_open_the_list": "Dubbel tikken om de lijst te openen" + } + }, + "follower": { + "footer": "Volgers van andere servers worden niet weergegeven." + }, + "following": { + "footer": "Volgers van andere servers worden niet weergegeven." + }, + "search": { + "title": "Zoeken", + "search_bar": { + "placeholder": "Zoek hashtags en gebruikers", + "cancel": "Annuleren" + }, + "recommend": { + "button_text": "Alles weergeven", + "hash_tag": { + "title": "Trending op Mastodon", + "description": "Hashtags die behoorlijk wat aandacht krijgen", + "people_talking": "%s gebruikers praten hierover" + }, + "accounts": { + "title": "Interessante accounts voor u", + "description": "Misschien dat u geïnteresseerd bent in deze accounts", + "follow": "Volgen" + } + }, + "searching": { + "segment": { + "all": "Alles", + "people": "Gebruikers", + "hashtags": "Hashtags", + "posts": "Berichten" + }, + "empty_state": { + "no_results": "Geen resultaten" + }, + "recent_search": "Recente zoekopdrachten", + "clear": "Wissen" + } + }, + "discovery": { + "tabs": { + "posts": "Berichten", + "hashtags": "Hashtags", + "news": "Nieuws", + "community": "Community", + "for_you": "Voor jou" + }, + "intro": "Dit zijn de berichten die populair zijn in jouw Mastodon-kringen." + }, + "favorite": { + "title": "Uw favorieten" + }, + "notification": { + "title": { + "Everything": "Alles", + "Mentions": "Vermeldingen" + }, + "notification_description": { + "followed_you": "volgt je", + "favorited_your_post": "heeft je bericht als favoriet gemrkeerd", + "reblogged_your_post": "deelde je bericht", + "mentioned_you": "noemde je", + "request_to_follow_you": "verzoek je te volgen", + "poll_has_ended": "de peiling is beëindigd" + }, + "keyobard": { + "show_everything": "Alles weergeven", + "show_mentions": "Vermeldingen weergeven" + } + }, + "thread": { + "back_title": "Bericht", + "title": "Bericht van %s" + }, + "settings": { + "title": "Instellingen", + "section": { + "appearance": { + "title": "Uiterlijk", + "automatic": "Automatisch", + "light": "Altijd Licht", + "dark": "Altijd Donker" + }, + "look_and_feel": { + "title": "Opmaak", + "use_system": "Gebruik systeem", + "really_dark": "Echt donker", + "sorta_dark": "Donker", + "light": "Licht" + }, + "notifications": { + "title": "Meldingen", + "favorites": "Mijn bericht als favoriet toevoegt", + "follows": "Mij volgt", + "boosts": "Mijn bericht deelt", + "mentions": "Mij vermeldt", + "trigger": { + "anyone": "iemand", + "follower": "een volger", + "follow": "iemand die ik volg", + "noone": "niemand", + "title": "Stuur mij een melding wanneer" + } + }, + "preference": { + "title": "Instellingen", + "true_black_dark_mode": "Echt zwarte donker uiterlijk", + "disable_avatar_animation": "Geanimeerde avatars uitschakelen", + "disable_emoji_animation": "Geanimeerde emojis uitschakelen", + "using_default_browser": "Gebruik de standaard browser om links te openen", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "De Saaie Instellingen", + "account_settings": "Accountinstellingen", + "terms": "Servicevoorwaarden", + "privacy": "Privacybeleid" + }, + "spicy_zone": { + "title": "De Gevaarlijke Instellingen", + "clear": "Mediacache wissen", + "signout": "Afmelden" + } + }, + "footer": { + "mastodon_description": "Mastodon is vrije software. Je kunt problemen melden op GitHub via %s (%s)" + }, + "keyboard": { + "close_settings_window": "Instellingsvenster Sluiten" + } + }, + "report": { + "title_report": "Rapporteer", + "title": "Rapporteer %s", + "step1": "Stap 1 van 2", + "step2": "Stap 2 van 2", + "content1": "Zijn er nog meer berichten die u aan het rapport wilt toevoegen?", + "content2": "Is er iets anders over dit rapport dat de moderators zouden moeten weten?", + "report_sent_title": "Bedankt voor het rapporteren, we zullen hiernaar kijken.", + "send": "Stuur rapport", + "skip_to_send": "Verstuur zonder opmerkingen", + "text_placeholder": "Schrijf of plak aanvullende opmerkingen", + "reported": "Gerapporteerd", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Voorbeeldweergave Sluiten", + "show_next": "Volgende", + "show_previous": "Vorige" + } + }, + "account_list": { + "tab_bar_hint": "Huidige geselecteerde profiel: %s. Dubbel-tik en houd vast om account te wisselen", + "dismiss_account_switcher": "Annuleer account wisselen", + "add_account": "Voeg account toe" + }, + "wizard": { + "new_in_mastodon": "Nieuw in Mastodon", + "multiple_account_switch_intro_description": "Schakel tussen meerdere accounts door de profielknop in te drukken en vast te houden.", + "accessibility_hint": "Tik tweemaal om het popup-scherm te sluiten" + } + } +} \ No newline at end of file From a084123c87c03673866dfc75d2493642a5c2c6b1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:06 +0200 Subject: [PATCH 256/571] New translations app.json (Portuguese) --- .../StringsConvertor/input/pt.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt.lproj/app.json diff --git a/Localization/StringsConvertor/input/pt.lproj/app.json b/Localization/StringsConvertor/input/pt.lproj/app.json new file mode 100644 index 000000000..32eaea9d2 --- /dev/null +++ b/Localization/StringsConvertor/input/pt.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Please try again.", + "please_try_again_later": "Please try again later." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 397f4a30c068f99c06e51691b9c4283fc987db5b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:07 +0200 Subject: [PATCH 257/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/sv.lproj/app.json diff --git a/Localization/StringsConvertor/input/sv.lproj/app.json b/Localization/StringsConvertor/input/sv.lproj/app.json new file mode 100644 index 000000000..6cba86344 --- /dev/null +++ b/Localization/StringsConvertor/input/sv.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Var god försök igen.", + "please_try_again_later": "Var god försök igen senare." + }, + "sign_up_failure": { + "title": "Registrering misslyckades" + }, + "server_error": { + "title": "Serverfel" + }, + "vote_failure": { + "title": "Röstning misslyckades", + "poll_ended": "Omröstningen har avslutats" + }, + "discard_post_content": { + "title": "Släng utkast", + "message": "Bekräfta för att slänga inläggsutkast." + }, + "publish_post_failure": { + "title": "Publicering misslyckades", + "message": "Det gick inte att publicera inlägget.\nKontrollera din internetanslutning.", + "attachments_message": { + "video_attach_with_photo": "Det går inte att bifoga en video till ett inlägg som redan innehåller bilder.", + "more_than_one_video": "Det går inte att bifoga mer än en video." + } + }, + "edit_profile_failure": { + "title": "Profilredigering misslyckades", + "message": "Kan inte redigera profil. Var god försök igen." + }, + "sign_out": { + "title": "Logga ut", + "message": "Är du säker på att du vill logga ut?", + "confirm": "Logga ut" + }, + "block_domain": { + "title": "Är du verkligen, verkligen säker på att du vill blockera hela %s? I de flesta fall är några riktade blockeringar eller nedtystade konton tillräckligt och att föredra. Du kommer inte se innehåll från den domänen och dina följare från den domänen kommer att tas bort.", + "block_entire_domain": "Blockera domän" + }, + "save_photo_failure": { + "title": "Spara foto misslyckades", + "message": "Aktivera åtkomst till Bilder för att spara bilden." + }, + "delete_post": { + "title": "Radera inlägg", + "message": "Är du säker på att du vill radera detta inlägg?" + }, + "clean_cache": { + "title": "Rensa cache", + "message": "Rensade %s cache." + } + }, + "controls": { + "actions": { + "back": "Tillbaka", + "next": "Nästa", + "previous": "Föregående", + "open": "Öppna", + "add": "Lägg till", + "remove": "Radera", + "edit": "Redigera", + "save": "Spara", + "ok": "OK", + "done": "Klar", + "confirm": "Bekräfta", + "continue": "Fortsätt", + "compose": "Skriv", + "cancel": "Avbryt", + "discard": "Släng", + "try_again": "Försök igen", + "take_photo": "Ta foto", + "save_photo": "Spara foto", + "copy_photo": "Kopiera foto", + "sign_in": "Logga in", + "sign_up": "Registrera dig", + "see_more": "Visa mer", + "preview": "Förhandsvisa", + "share": "Dela", + "share_user": "Dela %s", + "share_post": "Dela inlägg", + "open_in_safari": "Öppna i Safari", + "open_in_browser": "Öppna i webbläsare", + "find_people": "Hitta personer att följa", + "manually_search": "Sök manuellt istället", + "skip": "Hoppa över", + "reply": "Svara", + "report_user": "Rapportera %s", + "block_domain": "Blockera %s", + "unblock_domain": "Avblockera %s", + "settings": "Inställningar", + "delete": "Radera" + }, + "tabs": { + "home": "Hem", + "search": "Sök", + "notification": "Notis", + "profile": "Profil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Växla till %s", + "compose_new_post": "Skriv nytt inlägg", + "show_favorites": "Visa favoriter", + "open_settings": "Öppna inställningar" + }, + "timeline": { + "previous_status": "Föregående inlägg", + "next_status": "Nästa inlägg", + "open_status": "Öppna inlägg", + "open_author_profile": "Öppna författarens profil", + "open_reblogger_profile": "Öppna ompostarens profil", + "reply_status": "Svara på inlägg", + "toggle_reblog": "Växla ompostning på inlägg", + "toggle_favorite": "Växla favorit på inlägg", + "toggle_content_warning": "Växla innehållsvarning", + "preview_image": "Förhandsgranska bild" + }, + "segmented_control": { + "previous_section": "Föregående avsnitt", + "next_section": "Nästa avsnitt" + } + }, + "status": { + "user_reblogged": "%s ompostade", + "user_replied_to": "Svarade på %s", + "show_post": "Visa inlägg", + "show_user_profile": "Visa användarprofil", + "content_warning": "Innehållsvarning", + "sensitive_content": "Känsligt innehåll", + "media_content_warning": "Tryck var som helst för att visa", + "tap_to_reveal": "Tryck för att visa", + "poll": { + "vote": "Rösta", + "closed": "Stängd" + }, + "actions": { + "reply": "Svara", + "reblog": "Omposta", + "unreblog": "Ångra ompostning", + "favorite": "Favorit", + "unfavorite": "Ta bort favorit", + "menu": "Meny", + "hide": "Dölj", + "show_image": "Visa bild", + "show_gif": "Visa GIF", + "show_video_player": "Visa videospelare", + "tap_then_hold_to_show_menu": "Tryck och håll ned för att visa menyn" + }, + "tag": { + "url": "URL", + "mention": "Omnämn", + "link": "Länk", + "hashtag": "Hashtagg", + "email": "E-post", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen.", + "private": "Endast deras följare kan se detta inlägg.", + "private_from_me": "Bara mina följare kan se det här inlägget.", + "direct": "Endast omnämnda användare kan se detta inlägg." + } + }, + "friendship": { + "follow": "Följ", + "following": "Följer", + "request": "Följ", + "pending": "Väntande", + "block": "Blockera", + "block_user": "Blockera %s", + "block_domain": "Blockera %s", + "unblock": "Avblockera", + "unblock_user": "Avblockera %s", + "blocked": "Blockerad", + "mute": "Tysta", + "mute_user": "Tysta %s", + "unmute": "Avtysta", + "unmute_user": "Avtysta %s", + "muted": "Tystad", + "edit_info": "Redigera info" + }, + "timeline": { + "filtered": "Filtrerat", + "timestamp": { + "now": "Nu" + }, + "loader": { + "load_missing_posts": "Ladda saknade inlägg", + "loading_missing_posts": "Laddar saknade inlägg...", + "show_more_replies": "Visa fler svar" + }, + "header": { + "no_status_found": "Inga inlägg hittades", + "blocking_warning": "Du kan inte visa användarens profil\nförrän du avblockerar dem.\nDin profil ser ut så här för dem.", + "user_blocking_warning": "Du kan inte visa %ss profil\nförrän du avblockerar dem.\nDin profil ser ut så här för dem.", + "blocked_warning": "Du kan inte visa den här användarens profil\nförrän de avblockerar dig.", + "user_blocked_warning": "Du kan inte visa %ss profil\nförrän de avblockerar dig.", + "suspended_warning": "Denna användare har blivit avstängd.", + "user_suspended_warning": "%ss konto har blivit avstängt." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Socialt nätverkande\ntillbaka i dina händer.", + "get_started": "Kom igång", + "log_in": "Logga in" + }, + "server_picker": { + "title": "Mastodon utgörs av användare på olika servrar.", + "subtitle": "Välj en server baserat på dina intressen, region eller ett allmänt syfte.", + "subtitle_extend": "Välj en server baserat på dina intressen, region eller ett allmänt syfte. Varje server drivs av en helt oberoende organisation eller individ.", + "button": { + "category": { + "all": "Alla", + "all_accessiblity_description": "Kategori: Alla", + "academia": "vetenskap", + "activism": "aktivism", + "food": "mat", + "furry": "furry", + "games": "spel", + "general": "allmänt", + "journalism": "journalistik", + "lgbt": "lgbt", + "regional": "regionalt", + "art": "konst", + "music": "musik", + "tech": "teknik" + }, + "see_less": "Visa mindre", + "see_more": "Visa mer" + }, + "label": { + "language": "SPRÅK", + "users": "ANVÄNDARE", + "category": "KATEGORI" + }, + "input": { + "placeholder": "Sök gemenskaper", + "search_servers_or_enter_url": "Sök gemenskaper eller ange URL" + }, + "empty_state": { + "finding_servers": "Söker tillgängliga servrar...", + "bad_network": "Något gick fel när data laddades. Försök igen eller kontrollera din internetanslutning.", + "no_results": "Inga resultat" + } + }, + "register": { + "title": "Låt oss få igång dig på %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Radera" + }, + "username": { + "placeholder": "användarnamn", + "duplicate_prompt": "Det här användarnamnet är redan taget." + }, + "display_name": { + "placeholder": "visningsnamn" + }, + "email": { + "placeholder": "e-post" + }, + "password": { + "placeholder": "lösenord", + "require": "Ditt lösenord behöver minst:", + "character_limit": "8 tecken", + "accessibility": { + "checked": "markerad", + "unchecked": "avmarkerad" + }, + "hint": "Ditt lösenord måste bestå av minst 8 tecken" + }, + "invite": { + "registration_user_invite_request": "Varför vill du gå med?" + } + }, + "error": { + "item": { + "username": "Användarnamn", + "email": "E-post", + "password": "Lösenord", + "agreement": "Avtal", + "locale": "Språk", + "reason": "Anledning" + }, + "reason": { + "blocked": "%s innehåller en icke tillåten e-postleverantör", + "unreachable": "%s verkar inte existera", + "taken": "%s används redan", + "reserved": "%s är ett reserverat nyckelord", + "accepted": "%s måste godkännas", + "blank": "%s krävs", + "invalid": "%s är ogiltig", + "too_long": "%s är för långt", + "too_short": "%s är för kort", + "inclusion": "%s är inte ett värde som stöds" + }, + "special": { + "username_invalid": "Användarnamnet kan bara innehålla alfanumeriska tecken och understreck", + "username_too_long": "Användarnamnet är för långt (kan inte vara längre än 30 tecken)", + "email_invalid": "Detta är inte en giltig e-postadress", + "password_too_short": "Lösenordet är för kort (det måste vara minst 8 tecken)" + } + } + }, + "server_rules": { + "title": "Några grundregler.", + "subtitle": "Dessa sätts och verkställs av moderatorerna på %s.", + "prompt": "Genom att fortsätta omfattas du av villkoren för tjänsten och sekretesspolicyn för %s.", + "terms_of_service": "användarvillkor", + "privacy_policy": "integritetspolicy", + "button": { + "confirm": "Jag godkänner" + } + }, + "confirm_email": { + "title": "En sista sak.", + "subtitle": "Tryck på länken vi e-postade till dig för att verifiera ditt konto.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Öppna e-postappen", + "resend": "Skicka igen" + }, + "dont_receive_email": { + "title": "Kolla din e-post", + "description": "Kontrollera om din e-postadress är korrekt samt din skräppostmapp om du inte har gjort det.", + "resend_email": "Skicka e-postmeddelande igen" + }, + "open_email_app": { + "title": "Kolla din inkorg.", + "description": "Vi har precis skickat ett e-postmeddelande till dig. Kontrollera din skräpmapp om du inte har gjort det.", + "mail": "E-post", + "open_email_client": "Öppna e-postklient" + } + }, + "home_timeline": { + "title": "Hem", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "Nya inlägg", + "published": "Publicerat!", + "Publishing": "Publicerar inlägget...", + "accessibility": { + "logo_label": "Logo-knapp", + "logo_hint": "Tryck för att bläddra till toppen och tryck igen för föregående plats" + } + } + }, + "suggestion_account": { + "title": "Hitta personer att följa", + "follow_explain": "När du följer någon, kommer du att se deras inlägg i ditt hemflöde." + }, + "compose": { + "title": { + "new_post": "Nytt inlägg", + "new_reply": "Nytt svar" + }, + "media_selection": { + "camera": "Ta foto", + "photo_library": "Fotobibliotek", + "browse": "Bläddra" + }, + "content_input_placeholder": "Skriv eller klistra in vad du har på hjärtat", + "compose_action": "Publicera", + "replying_to_user": "svarar %s", + "attachment": { + "photo": "foto", + "video": "video", + "attachment_broken": "Denna %s är trasig och kan inte\nladdas upp till Mastodon.", + "description_photo": "Beskriv fotot för synskadade...", + "description_video": "Beskriv videon för de synskadade..." + }, + "poll": { + "duration_time": "Längd: %s", + "thirty_minutes": "30 minuter", + "one_hour": "1 timme", + "six_hours": "6 timmar", + "one_day": "1 dag", + "three_days": "3 dagar", + "seven_days": "7 dagar", + "option_number": "Alternativ %ld" + }, + "content_warning": { + "placeholder": "Skriv en noggrann varning här..." + }, + "visibility": { + "public": "Offentlig", + "unlisted": "Olistad", + "private": "Endast följare", + "direct": "Bara personer jag nämner" + }, + "auto_complete": { + "space_to_add": "Mellanslag för att lägga till" + }, + "accessibility": { + "append_attachment": "Lägg till bilaga", + "append_poll": "Lägg till omröstning", + "remove_poll": "Ta bort omröstning", + "custom_emoji_picker": "Anpassad emoji-väljare", + "enable_content_warning": "Aktivera innehållsvarning", + "disable_content_warning": "Inaktivera innehållsvarning", + "post_visibility_menu": "Inläggssynlighetsmeny" + }, + "keyboard": { + "discard_post": "Släng inlägget", + "publish_post": "Publicera inlägget", + "toggle_poll": "Växla omröstning", + "toggle_content_warning": "Växla innehållsvarning", + "append_attachment_entry": "Lägg till bilaga - %s", + "select_visibility_entry": "Välj synlighet - %s" + } + }, + "profile": { + "dashboard": { + "posts": "inlägg", + "following": "följer", + "followers": "följare" + }, + "fields": { + "add_row": "Lägg till rad", + "placeholder": { + "label": "Etikett", + "content": "Innehåll" + } + }, + "segmented_control": { + "posts": "Inlägg", + "replies": "Svar", + "posts_and_replies": "Inlägg och svar", + "media": "Media", + "about": "Om" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Tysta konto", + "message": "Bekräfta för att tysta %s" + }, + "confirm_unmute_user": { + "title": "Avtysta konto", + "message": "Bekräfta för att avtysta %s" + }, + "confirm_block_user": { + "title": "Blockera konto", + "message": "Bekräfta för att blockera %s" + }, + "confirm_unblock_user": { + "title": "Avblockera konto", + "message": "Bekräfta för att avblockera %s" + } + }, + "accessibility": { + "show_avatar_image": "Visa profilbild", + "edit_avatar_image": "Redigera profilbild", + "show_banner_image": "Visa banner", + "double_tap_to_open_the_list": "Dubbeltryck för att öppna listan" + } + }, + "follower": { + "footer": "Följare från andra servrar visas inte." + }, + "following": { + "footer": "Följda på andra servrar visas inte." + }, + "search": { + "title": "Sök", + "search_bar": { + "placeholder": "Sök hashtaggar och användare", + "cancel": "Avbryt" + }, + "recommend": { + "button_text": "Visa alla", + "hash_tag": { + "title": "Trendar på Mastodon", + "description": "Hashtaggar som får en hel del uppmärksamhet", + "people_talking": "%s personer diskuterar" + }, + "accounts": { + "title": "Konton som du kanske gillar", + "description": "Du kanske vill följa dessa konton", + "follow": "Följ" + } + }, + "searching": { + "segment": { + "all": "Allt", + "people": "Personer", + "hashtags": "Hashtaggar", + "posts": "Inlägg" + }, + "empty_state": { + "no_results": "Inga resultat" + }, + "recent_search": "Senaste sökningarna", + "clear": "Rensa" + } + }, + "discovery": { + "tabs": { + "posts": "Inlägg", + "hashtags": "Hashtaggar", + "news": "Nyheter", + "community": "Server", + "for_you": "För dig" + }, + "intro": "Detta är de inlägg som engagerar i ditt hörn av Mastodon." + }, + "favorite": { + "title": "Dina favoriter" + }, + "notification": { + "title": { + "Everything": "Allting", + "Mentions": "Omnämningar" + }, + "notification_description": { + "followed_you": "följde dig", + "favorited_your_post": "favoriserade ditt inlägg", + "reblogged_your_post": "ompostade ditt inlägg", + "mentioned_you": "nämnde dig", + "request_to_follow_you": "begär att följa dig", + "poll_has_ended": "omröstningen har avslutats" + }, + "keyobard": { + "show_everything": "Visa allt", + "show_mentions": "Visa omnämningar" + } + }, + "thread": { + "back_title": "Inlägg", + "title": "Inlägg från %s" + }, + "settings": { + "title": "Inställningar", + "section": { + "appearance": { + "title": "Utseende", + "automatic": "Automatisk", + "light": "Alltid ljus", + "dark": "Alltid mörk" + }, + "look_and_feel": { + "title": "Utseende och känsla", + "use_system": "Följ systeminställningarna", + "really_dark": "Verkligen mörk", + "sorta_dark": "Ganska mörk", + "light": "Ljust" + }, + "notifications": { + "title": "Notiser", + "favorites": "Favoriserar mitt inlägg", + "follows": "Följer mig", + "boosts": "Ompostar mitt inlägg", + "mentions": "Omnämner mig", + "trigger": { + "anyone": "alla", + "follower": "en följare", + "follow": "någon jag följer", + "noone": "ingen", + "title": "Meddela mig när" + } + }, + "preference": { + "title": "Inställningar", + "true_black_dark_mode": "True black-mörkt läge", + "disable_avatar_animation": "Inaktivera animerade avatarer", + "disable_emoji_animation": "Inaktivera animerade emojis", + "using_default_browser": "Använd standardwebbläsare för att öppna länkar", + "open_links_in_mastodon": "Öppna länkar i Mastodon" + }, + "boring_zone": { + "title": "Den tråkiga zonen", + "account_settings": "Kontoinställningar", + "terms": "Användarvillkor", + "privacy": "Integritetspolicy" + }, + "spicy_zone": { + "title": "Den spännande zonen", + "clear": "Rensa mediacache", + "signout": "Logga ut" + } + }, + "footer": { + "mastodon_description": "Mastodon är programvara med öppen källkod. Du kan rapportera problem via GitHub på %s (%s)" + }, + "keyboard": { + "close_settings_window": "Stäng inställningsfönstret" + } + }, + "report": { + "title_report": "Rapportera", + "title": "Rapportera %s", + "step1": "Steg 1 av 2", + "step2": "Steg 2 av 2", + "content1": "Finns det några andra inlägg du vill lägga till i rapporten?", + "content2": "Finns det något som moderatorerna borde känna till om denna rapport?", + "report_sent_title": "Tack för din rapport, vi ska titta på det.", + "send": "Skicka rapport", + "skip_to_send": "Skicka utan kommentar", + "text_placeholder": "Skriv eller klistra in ytterligare kommentarer", + "reported": "RAPPORTERAD", + "step_one": { + "step_1_of_4": "Steg 1 av 4", + "whats_wrong_with_this_post": "Vad är fel med det här inlägget?", + "whats_wrong_with_this_account": "Vad är fel med det här kontot?", + "whats_wrong_with_this_username": "Vad är fel med %s?", + "select_the_best_match": "Välj den bästa träffen", + "i_dont_like_it": "Jag tycker inte om det", + "it_is_not_something_you_want_to_see": "Det är inget som du vill se", + "its_spam": "Det är skräppost", + "malicious_links_fake_engagement_or_repetetive_replies": "Skadliga länkar, bedrägligt beteende eller repetitiva svar", + "it_violates_server_rules": "Det bryter mot serverns regler", + "you_are_aware_that_it_breaks_specific_rules": "Du är medveten om att det bryter mot specifika regler", + "its_something_else": "Det är något annat", + "the_issue_does_not_fit_into_other_categories": "Frågan passar inte in i andra kategorier" + }, + "step_two": { + "step_2_of_4": "Steg 2 av 4", + "which_rules_are_being_violated": "Vilka regler överträds?", + "select_all_that_apply": "Välj allt som stämmer", + "i_just_don’t_like_it": "Jag tycker bara inte om det" + }, + "step_three": { + "step_3_of_4": "Steg 3 av 4", + "are_there_any_posts_that_back_up_this_report": "Finns det några inlägg som stöder denna rapport?", + "select_all_that_apply": "Välj allt som stämmer" + }, + "step_four": { + "step_4_of_4": "Steg 4 av 4", + "is_there_anything_else_we_should_know": "Finns det något annat vi borde veta?" + }, + "step_final": { + "dont_want_to_see_this": "Vill du inte se det här?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "När du ser något som du inte gillar på Mastodon kan du ta bort personen från din upplevelse.", + "unfollow": "Avfölj", + "unfollowed": "Slutade följa", + "unfollow_user": "Avfölj %s", + "mute_user": "Tysta %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade.", + "block_user": "Blockera %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Stäng förhandsvisning", + "show_next": "Visa nästa", + "show_previous": "Visa föregående" + } + }, + "account_list": { + "tab_bar_hint": "Nuvarande vald profil: %s. Dubbeltryck och håll för att visa kontoväxlare", + "dismiss_account_switcher": "Stäng kontoväxlare", + "add_account": "Lägg till konto" + }, + "wizard": { + "new_in_mastodon": "Nytt i Mastodon", + "multiple_account_switch_intro_description": "Växla mellan flera konton genom att hålla inne profilknappen.", + "accessibility_hint": "Dubbeltryck för att avvisa den här guiden" + } + } +} \ No newline at end of file From dffd0b6d8103c9f4b2b5368455ecf64e4535f50c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:08 +0200 Subject: [PATCH 258/571] New translations app.json (Chinese Traditional) --- .../input/zh-Hant.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hant.lproj/app.json diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json new file mode 100644 index 000000000..fea696cc6 --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "請再試一次。", + "please_try_again_later": "請稍候再試。" + }, + "sign_up_failure": { + "title": "註冊失敗" + }, + "server_error": { + "title": "伺服器錯誤" + }, + "vote_failure": { + "title": "投票失敗", + "poll_ended": "投票已結束" + }, + "discard_post_content": { + "title": "捨棄草稿", + "message": "確認放棄編寫中的嘟文內容。" + }, + "publish_post_failure": { + "title": "發表嘟文失敗", + "message": "發表嘟文失敗。\n請檢查您的網路連線。", + "attachments_message": { + "video_attach_with_photo": "無法在已有圖片的嘟文上附加影片。", + "more_than_one_video": "無法附加一個以上影片。" + } + }, + "edit_profile_failure": { + "title": "編輯個人檔案錯誤", + "message": "無法編輯個人檔案。請重試。" + }, + "sign_out": { + "title": "登出", + "message": "您確定要登出嗎?", + "confirm": "登出" + }, + "block_domain": { + "title": "真的非常確定封鎖整個 %s 網域嗎?大部分情況下,您只需要封鎖或靜音少數特定的帳帳戶能滿足需求了。您將不能看到來自此網域的內容。您來自該網域的跟隨者也將被移除。", + "block_entire_domain": "封鎖網域" + }, + "save_photo_failure": { + "title": "儲存照片失敗", + "message": "請開啟圖片庫存取權限以儲存照片。" + }, + "delete_post": { + "title": "刪除嘟文", + "message": "是否確定要刪除此嘟文?" + }, + "clean_cache": { + "title": "清除快取", + "message": "成功清除 %s 快取。" + } + }, + "controls": { + "actions": { + "back": "上一頁", + "next": "下一頁", + "previous": "上一步", + "open": "開啟", + "add": "新增", + "remove": "刪除", + "edit": "編輯", + "save": "儲存", + "ok": "OK", + "done": "完成", + "confirm": "確認", + "continue": "繼續", + "compose": "撰寫", + "cancel": "取消", + "discard": "捨棄", + "try_again": "再試一次", + "take_photo": "拍攝照片", + "save_photo": "儲存照片", + "copy_photo": "複製照片", + "sign_in": "登入", + "sign_up": "註冊", + "see_more": "檢視更多", + "preview": "預覽", + "share": "分享", + "share_user": "分享 %s", + "share_post": "分享嘟文", + "open_in_safari": "在 Safari 中開啟", + "open_in_browser": "在瀏覽器中開啟", + "find_people": "尋找一些人來跟隨", + "manually_search": "手動搜尋", + "skip": "跳過", + "reply": "回覆", + "report_user": "檢舉 %s", + "block_domain": "封鎖 %s", + "unblock_domain": "解除封鎖 %s", + "settings": "設定", + "delete": "刪除" + }, + "tabs": { + "home": "首頁", + "search": "搜尋", + "notification": "通知", + "profile": "個人檔案" + }, + "keyboard": { + "common": { + "switch_to_tab": "切換至 %s", + "compose_new_post": "撰寫新嘟文", + "show_favorites": "顯示最愛", + "open_settings": "開啟設定" + }, + "timeline": { + "previous_status": "先前的嘟文", + "next_status": "下一則嘟文", + "open_status": "開啟嘟文", + "open_author_profile": "開啟作者的個人檔案頁面", + "open_reblogger_profile": "開啟轉嘟者的個人檔案頁面", + "reply_status": "回覆嘟文", + "toggle_reblog": "切換轉發嘟文", + "toggle_favorite": "切換最愛嘟文", + "toggle_content_warning": "切換內容警告", + "preview_image": "預覽圖片" + }, + "segmented_control": { + "previous_section": "上一個區塊", + "next_section": "下一個區塊" + } + }, + "status": { + "user_reblogged": "%s 已轉嘟", + "user_replied_to": "回覆給 %s", + "show_post": "顯示嘟文", + "show_user_profile": "顯示使用者個人檔案頁面", + "content_warning": "內容警告", + "sensitive_content": "敏感內容", + "media_content_warning": "輕觸任何地方以顯示", + "tap_to_reveal": "輕觸以顯示", + "poll": { + "vote": "投票", + "closed": "已關閉" + }, + "actions": { + "reply": "回覆", + "reblog": "轉嘟", + "unreblog": "取消轉嘟", + "favorite": "最愛", + "unfavorite": "取消最愛", + "menu": "選單", + "hide": "隱藏", + "show_image": "顯示圖片", + "show_gif": "顯示 GIF", + "show_video_player": "顯示影片播放器", + "tap_then_hold_to_show_menu": "輕觸然後按住以顯示選單" + }, + "tag": { + "url": "網址", + "mention": "提及", + "link": "連結", + "hashtag": "主題標籤", + "email": "電子郵件", + "emoji": "emoji" + }, + "visibility": { + "unlisted": "任何人都能看到此嘟文,但是不會顯示於公開時間軸上。", + "private": "只有他們的跟隨者能看到此嘟文。", + "private_from_me": "只有我的跟隨者能看到此嘟文。", + "direct": "只有被提及的使用者能看到此嘟文。" + } + }, + "friendship": { + "follow": "跟隨", + "following": "跟隨中", + "request": "請求", + "pending": "等待中", + "block": "封鎖", + "block_user": "封鎖 %s", + "block_domain": "封鎖 %s", + "unblock": "解除封鎖", + "unblock_user": "解除封鎖 %s", + "blocked": "已封鎖", + "mute": "靜音", + "mute_user": "靜音 %s", + "unmute": "取消靜音", + "unmute_user": "取消靜音 %s", + "muted": "已靜音", + "edit_info": "編輯" + }, + "timeline": { + "filtered": "已過濾", + "timestamp": { + "now": "剛剛" + }, + "loader": { + "load_missing_posts": "讀取錯過的嘟文", + "loading_missing_posts": "正在讀取錯過的嘟文...", + "show_more_replies": "顯示更多回覆" + }, + "header": { + "no_status_found": "沒有任何嘟文", + "blocking_warning": "您無法瀏覽該使用者的個人檔案,除非您取消封鎖。\n您的個人檔案看起來像是這樣。", + "user_blocking_warning": "您無法瀏覽 %s 的個人檔案,除非您取消封鎖。\n您的個人檔案看起來像是這樣。", + "blocked_warning": "您無法瀏覽該使用者的個人檔案,除非他們取消封鎖您。", + "user_blocked_warning": "您無法瀏覽 %s 的個人檔案,除非他們取消封鎖您。", + "suspended_warning": "此使用者已被停權。", + "user_suspended_warning": "%s 的帳號已經被停權。" + } + } + } + }, + "scene": { + "welcome": { + "slogan": "社群網路\n還權於您。", + "get_started": "新手上路", + "log_in": "登入" + }, + "server_picker": { + "title": "Mastodon 由不同伺服器的使用者組成。", + "subtitle": "基於您的興趣、地區、或一般用途選定一個伺服器。", + "subtitle_extend": "基於您的興趣、地區、或一般用途選定一個伺服器。每個伺服器是由完全獨立的組織或個人營運。", + "button": { + "category": { + "all": "全部", + "all_accessiblity_description": "分類:全部", + "academia": "學術", + "activism": "社會運動", + "food": "食物", + "furry": "毛茸茸", + "games": "遊戲", + "general": "一般", + "journalism": "新聞記者", + "lgbt": "LGBT", + "regional": "區域性", + "art": "藝術", + "music": "音樂", + "tech": "科技" + }, + "see_less": "顯示較少", + "see_more": "檢視更多" + }, + "label": { + "language": "語言", + "users": "使用者", + "category": "分類" + }, + "input": { + "placeholder": "搜尋伺服器", + "search_servers_or_enter_url": "搜尋社群或輸入 URL 地址" + }, + "empty_state": { + "finding_servers": "尋找可用的伺服器...", + "bad_network": "讀取資料時發生錯誤。請檢查您的網路連線。", + "no_results": "沒有結果" + } + }, + "register": { + "title": "讓我們一起設定 %s 吧!", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "刪除" + }, + "username": { + "placeholder": "使用者名稱", + "duplicate_prompt": "此使用者名稱已被佔用。" + }, + "display_name": { + "placeholder": "顯示名稱" + }, + "email": { + "placeholder": "電子郵件" + }, + "password": { + "placeholder": "密碼", + "require": "您的密碼必須是至少:", + "character_limit": "8 個字元", + "accessibility": { + "checked": "已選擇", + "unchecked": "取消勾選" + }, + "hint": "您的密碼必須至少為八個字元" + }, + "invite": { + "registration_user_invite_request": "為什麼想要加入呢?" + } + }, + "error": { + "item": { + "username": "使用者名稱", + "email": "電子郵件", + "password": "密碼", + "agreement": "條款", + "locale": "地區", + "reason": "原因" + }, + "reason": { + "blocked": "%s 包含不被允許的電子郵件供應商", + "unreachable": "%s 似乎並不存在", + "taken": "%s 已被使用", + "reserved": "%s 是一個保留的關鍵字", + "accepted": "請先閱讀並同意 %s", + "blank": "%s 為必填選項", + "invalid": "%s 是無效的", + "too_long": "%s 太長了", + "too_short": "%s 太短了", + "inclusion": "%s 是不被支援的值" + }, + "special": { + "username_invalid": "使用者名稱僅能包含英文字母數字以及底線", + "username_too_long": "使用者名稱太長了(不能超過 30 個字元)", + "email_invalid": "這不是一個有效的電子郵件地址", + "password_too_short": "密碼太短了(至少需要八個字元)" + } + } + }, + "server_rules": { + "title": "一些基本守則。", + "subtitle": "這些被 %s 的管管們制定以及實施。", + "prompt": "繼續的話,代表您將遵守 %s 的服務條款和隱私權政策。", + "terms_of_service": "服務條款", + "privacy_policy": "隱私權政策", + "button": { + "confirm": "我已閱讀並同意" + } + }, + "confirm_email": { + "title": "最後一步。", + "subtitle": "點擊我們寄送給您的帳號驗證連結。", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "開啟電子郵件 App", + "resend": "重新發送" + }, + "dont_receive_email": { + "title": "請檢查您的電子郵件", + "description": "請檢查您的電子郵件地址是否正確,以及您的垃圾信件夾。", + "resend_email": "重新發送電子郵件" + }, + "open_email_app": { + "title": "請檢查您的收件夾。", + "description": "我們剛寄送您一封電子郵件。請檢查您的垃圾信件夾。", + "mail": "電子郵件", + "open_email_client": "請開啟電子郵件程式" + } + }, + "home_timeline": { + "title": "首頁", + "navigation_bar_state": { + "offline": "離線", + "new_posts": "檢視最新嘟文", + "published": "嘟出去!", + "Publishing": "發表嘟文...", + "accessibility": { + "logo_label": "標誌按鈕", + "logo_hint": "輕點一下捲至頂端並且再點ㄧ下回到原先位置" + } + } + }, + "suggestion_account": { + "title": "尋找一些人來跟隨", + "follow_explain": "當您跟隨這些人時,將會看到他們的嘟文出現在您的首頁時間軸上。" + }, + "compose": { + "title": { + "new_post": "新增嘟文", + "new_reply": "新增回覆" + }, + "media_selection": { + "camera": "拍攝照片", + "photo_library": "圖片庫", + "browse": "瀏覽" + }, + "content_input_placeholder": "正在想些什麼嗎?", + "compose_action": "嘟出去", + "replying_to_user": "正在回覆 %s", + "attachment": { + "photo": "照片", + "video": "影片", + "attachment_broken": "此 %s 已損毀,並無法被上傳至 Mastodon。", + "description_photo": "為視障人士提供圖片說明...", + "description_video": "為視障人士提供影片說明..." + }, + "poll": { + "duration_time": "持續時間:%s", + "thirty_minutes": "30 分鐘", + "one_hour": "一小時", + "six_hours": "六小時", + "one_day": "一天", + "three_days": "三天", + "seven_days": "七天", + "option_number": "選項 %ld" + }, + "content_warning": { + "placeholder": "請於此處寫下精準的警告..." + }, + "visibility": { + "public": "公開", + "unlisted": "不公開", + "private": "僅限跟隨者", + "direct": "僅限於我提及的人" + }, + "auto_complete": { + "space_to_add": "添加的空白" + }, + "accessibility": { + "append_attachment": "新增附件", + "append_poll": "新增投票", + "remove_poll": "移除投票", + "custom_emoji_picker": "自訂 emoji 選擇器", + "enable_content_warning": "啟用內容警告", + "disable_content_warning": "停用內容警告", + "post_visibility_menu": "嘟文可見性選單" + }, + "keyboard": { + "discard_post": "捨棄嘟文", + "publish_post": "發表嘟文", + "toggle_poll": "切換投票", + "toggle_content_warning": "切換內容警告", + "append_attachment_entry": "新增附件 - %s", + "select_visibility_entry": "選擇可見性 - %s" + } + }, + "profile": { + "dashboard": { + "posts": "嘟文", + "following": "跟隨中", + "followers": "跟隨者" + }, + "fields": { + "add_row": "新增列", + "placeholder": { + "label": "標籤", + "content": "內容" + } + }, + "segmented_control": { + "posts": "嘟文", + "replies": "回覆", + "posts_and_replies": "嘟文及回覆", + "media": "媒體", + "about": "關於" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "靜音", + "message": "確認將 %s 靜音" + }, + "confirm_unmute_user": { + "title": "取消靜音", + "message": "確認將 %s 取消靜音" + }, + "confirm_block_user": { + "title": "封鎖", + "message": "確認將 %s 封鎖" + }, + "confirm_unblock_user": { + "title": "取消封鎖", + "message": "確認將 %s 取消封鎖" + } + }, + "accessibility": { + "show_avatar_image": "顯示大頭貼", + "edit_avatar_image": "編輯大頭貼", + "show_banner_image": "顯示橫幅圖片", + "double_tap_to_open_the_list": "點兩下以開啟列表" + } + }, + "follower": { + "footer": "來自其他伺服器的跟隨者不會被顯示。" + }, + "following": { + "footer": "來自其他伺服器的跟隨中不會被顯示。" + }, + "search": { + "title": "搜尋", + "search_bar": { + "placeholder": "搜尋主題標籤及使用者", + "cancel": "取消" + }, + "recommend": { + "button_text": "檢視全部", + "hash_tag": { + "title": "Mastodon 上的熱門討論", + "description": "發燒中的主題標籤", + "people_talking": "%s 人正在討論" + }, + "accounts": { + "title": "您可能會喜歡的帳號", + "description": "您也許想跟隨這些帳號", + "follow": "跟隨" + } + }, + "searching": { + "segment": { + "all": "全部", + "people": "使用者", + "hashtags": "主題標籤", + "posts": "嘟文" + }, + "empty_state": { + "no_results": "沒有任何結果" + }, + "recent_search": "最近的搜尋", + "clear": "清除" + } + }, + "discovery": { + "tabs": { + "posts": "嘟文", + "hashtags": "主題標籤", + "news": "最新消息", + "community": "社群", + "for_you": "為您推薦" + }, + "intro": "這些嘟文正在您 Mastodon 的角落受到注目。" + }, + "favorite": { + "title": "您的最愛" + }, + "notification": { + "title": { + "Everything": "全部", + "Mentions": "提及" + }, + "notification_description": { + "followed_you": "跟隨了您", + "favorited_your_post": "最愛了您的嘟文", + "reblogged_your_post": "轉嘟了您的嘟文", + "mentioned_you": "提到了您", + "request_to_follow_you": "要求跟隨您", + "poll_has_ended": "投票已結束" + }, + "keyobard": { + "show_everything": "顯示全部", + "show_mentions": "顯示提及" + } + }, + "thread": { + "back_title": "嘟文", + "title": "來自 %s 的嘟文" + }, + "settings": { + "title": "設定", + "section": { + "appearance": { + "title": "外觀設定", + "automatic": "自動", + "light": "亮色佈景主題", + "dark": "深色佈景主題" + }, + "look_and_feel": { + "title": "外觀與風格", + "use_system": "與系統一致", + "really_dark": "闇黑風格", + "sorta_dark": "有點黑又不會太黑", + "light": "淺色" + }, + "notifications": { + "title": "通知", + "favorites": "將我的嘟文加到最愛", + "follows": "跟隨著我", + "boosts": "將我的嘟文轉嘟", + "mentions": "提到了我", + "trigger": { + "anyone": "任何人", + "follower": "跟隨者", + "follow": "任何我跟隨的人", + "noone": "沒有人", + "title": "以下狀況請通知我" + } + }, + "preference": { + "title": "偏好設定", + "true_black_dark_mode": "真☆闇黑模式", + "disable_avatar_animation": "停用動畫大頭貼", + "disable_emoji_animation": "停用動畫 emoji", + "using_default_browser": "使用預設瀏覽器開啟連結", + "open_links_in_mastodon": "在 Mastodon 中開啟連結" + }, + "boring_zone": { + "title": "無聊的這些", + "account_settings": "帳號設定", + "terms": "服務條款", + "privacy": "隱私權政策" + }, + "spicy_zone": { + "title": "危險地帶", + "clear": "清除媒體快取", + "signout": "登出" + } + }, + "footer": { + "mastodon_description": "Mastodon 是開源軟體。您可以在 GitHub %s (%s) 上回報問題。" + }, + "keyboard": { + "close_settings_window": "關閉設定視窗" + } + }, + "report": { + "title_report": "檢舉", + "title": "檢舉 %s", + "step1": "兩個步驟中的第一步", + "step2": "兩個步驟中的第二步", + "content1": "還有其他您想加入這份檢舉報告的嘟文嗎?", + "content2": "有其他管管們需要知道關於這份檢舉報告的嗎?", + "report_sent_title": "感謝您的檢舉,我們將著手處理。", + "send": "傳送檢舉報告", + "skip_to_send": "不加入備註並傳送", + "text_placeholder": "請輸入或貼上額外的備註", + "reported": "已檢舉", + "step_one": { + "step_1_of_4": "四個步驟中的第一步", + "whats_wrong_with_this_post": "這則嘟文有什麼問題嗎?", + "whats_wrong_with_this_account": "這個帳號有什麼問題嗎?", + "whats_wrong_with_this_username": "%s 有什麼問題嗎?", + "select_the_best_match": "選擇最佳條件符合", + "i_dont_like_it": "我不喜歡", + "it_is_not_something_you_want_to_see": "這是您不想看到的", + "its_spam": "垃圾訊息", + "malicious_links_fake_engagement_or_repetetive_replies": "有害連結、假造的互動,或是重複性回覆", + "it_violates_server_rules": "違反伺服器規則", + "you_are_aware_that_it_breaks_specific_rules": "您知道它違反特定規則", + "its_something_else": "其他原因", + "the_issue_does_not_fit_into_other_categories": "這個問題不屬於其他分類" + }, + "step_two": { + "step_2_of_4": "四個步驟中的第二步", + "which_rules_are_being_violated": "違反了哪些規則?", + "select_all_that_apply": "請選擇所有適用的選項", + "i_just_don’t_like_it": "就是不順眼" + }, + "step_three": { + "step_3_of_4": "四個步驟中的第三步", + "are_there_any_posts_that_back_up_this_report": "是否有能佐證這份檢舉之嘟文?", + "select_all_that_apply": "請選擇所有適用的選項" + }, + "step_four": { + "step_4_of_4": "四個步驟中的第四步", + "is_there_anything_else_we_should_know": "有什麼其他您想讓我們知道的嗎?" + }, + "step_final": { + "dont_want_to_see_this": "不想再看到這個?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "當您看到某些不喜歡的內容時,您可以將該帳號從您的體驗中移除。", + "unfollow": "取消跟隨", + "unfollowed": "已取消跟隨", + "unfollow_user": "取消跟隨 %s", + "mute_user": "靜音 %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "您不會在您的首頁時間軸中再見到他們的嘟文或轉嘟。他們不會知道他們已被靜音。", + "block_user": "封鎖 %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "他們將無法跟隨您或是看到您的嘟文。他們能看到他們是否已被封鎖。", + "while_we_review_this_you_can_take_action_against_user": "當我們正在審核時,您可以對 %s 採取以下措施" + } + }, + "preview": { + "keyboard": { + "close_preview": "關閉預覽", + "show_next": "顯示下一筆", + "show_previous": "顯示上一筆" + } + }, + "account_list": { + "tab_bar_hint": "目前已選擇的個人檔案:%s。點兩下然後按住以顯示帳號切換器", + "dismiss_account_switcher": "關閉帳號切換器", + "add_account": "新增帳號" + }, + "wizard": { + "new_in_mastodon": "Mastodon 新功能", + "multiple_account_switch_intro_description": "按住個人檔案按鈕以於多個帳號間切換。", + "accessibility_hint": "點兩下以關閉此設定精靈" + } + } +} \ No newline at end of file From 10e42dac97a51e527a2588c7666eea8dee20e3a4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:09 +0200 Subject: [PATCH 259/571] New translations app.json (English) --- .../StringsConvertor/input/en.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/en.lproj/app.json diff --git a/Localization/StringsConvertor/input/en.lproj/app.json b/Localization/StringsConvertor/input/en.lproj/app.json new file mode 100644 index 000000000..32eaea9d2 --- /dev/null +++ b/Localization/StringsConvertor/input/en.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Please try again.", + "please_try_again_later": "Please try again later." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Server Error" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "The poll has ended" + }, + "discard_post_content": { + "title": "Discard Draft", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Cannot attach more than one video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Cannot edit profile. Please try again." + }, + "sign_out": { + "title": "Sign Out", + "message": "Are you sure you want to sign out?", + "confirm": "Sign Out" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Block Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Delete Post", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Clean Cache", + "message": "Successfully cleaned %s cache." + } + }, + "controls": { + "actions": { + "back": "Back", + "next": "Next", + "previous": "Previous", + "open": "Open", + "add": "Add", + "remove": "Remove", + "edit": "Edit", + "save": "Save", + "ok": "OK", + "done": "Done", + "confirm": "Confirm", + "continue": "Continue", + "compose": "Compose", + "cancel": "Cancel", + "discard": "Discard", + "try_again": "Try Again", + "take_photo": "Take Photo", + "save_photo": "Save Photo", + "copy_photo": "Copy Photo", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Share", + "share_user": "Share %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 0055d3f6e3305310acabc1b4fdafe9f0607dbbfc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:09 +0200 Subject: [PATCH 260/571] New translations app.json (Portuguese, Brazilian) --- .../input/pt-BR.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt-BR.lproj/app.json diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/app.json b/Localization/StringsConvertor/input/pt-BR.lproj/app.json new file mode 100644 index 000000000..d5c6b5c8e --- /dev/null +++ b/Localization/StringsConvertor/input/pt-BR.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Por favor tente novamente.", + "please_try_again_later": "Tente novamente mais tarde." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Erro do servidor" + }, + "vote_failure": { + "title": "Falha ao votar", + "poll_ended": "Essa enquete terminou" + }, + "discard_post_content": { + "title": "Deletar Rascunho", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Falha ao publicar", + "message": "Falha ao publicar o post.\nPor favor verifique a sua conexão de internet.", + "attachments_message": { + "video_attach_with_photo": "Não é possível adicionar um vídeo à um toot que já contém imagens.", + "more_than_one_video": "Não é possível adicionar mais de um vídeo." + } + }, + "edit_profile_failure": { + "title": "Falha ao atualizar perfil", + "message": "Não foi possível atualizar o perfil. Por favor tente novamente." + }, + "sign_out": { + "title": "Sair", + "message": "Você tem certeza que deseja sair?", + "confirm": "Sair" + }, + "block_domain": { + "title": "Você tem absoluta certeza de que quer bloquear todo %s? Na maioria dos casos é suficiente e preferível bloquear ou ignorar algumas contas específicas. Você não verá conteúdos desse domínio, e todos os seus seguidores desse domínio serão removidos.", + "block_entire_domain": "Bloquear Domínio" + }, + "save_photo_failure": { + "title": "Falha ao salvar foto", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Deletar Toot", + "message": "Você tem certeza que deseja deletar esse toot?" + }, + "clean_cache": { + "title": "Limpar Cache", + "message": "%s do cache removidos com sucesso." + } + }, + "controls": { + "actions": { + "back": "Voltar", + "next": "Próximo", + "previous": "Anterior", + "open": "Abrir", + "add": "Adicionar", + "remove": "Remover", + "edit": "Editar", + "save": "Salvar", + "ok": "OK", + "done": "Concluir", + "confirm": "Confirmar", + "continue": "Continuar", + "compose": "Compor", + "cancel": "Cancelar", + "discard": "Descartar", + "try_again": "Tente novamente", + "take_photo": "Take Photo", + "save_photo": "Salvar foto", + "copy_photo": "Copiar foto", + "sign_in": "Sign In", + "sign_up": "Sign Up", + "see_more": "See More", + "preview": "Preview", + "share": "Compartilhar", + "share_user": "Compartilhar %s", + "share_post": "Share Post", + "open_in_safari": "Open in Safari", + "open_in_browser": "Open in Browser", + "find_people": "Find people to follow", + "manually_search": "Manually search instead", + "skip": "Skip", + "reply": "Reply", + "report_user": "Report %s", + "block_domain": "Block %s", + "unblock_domain": "Unblock %s", + "settings": "Settings", + "delete": "Delete" + }, + "tabs": { + "home": "Home", + "search": "Search", + "notification": "Notification", + "profile": "Profile" + }, + "keyboard": { + "common": { + "switch_to_tab": "Switch to %s", + "compose_new_post": "Compose New Post", + "show_favorites": "Show Favorites", + "open_settings": "Open Settings" + }, + "timeline": { + "previous_status": "Previous Post", + "next_status": "Next Post", + "open_status": "Open Post", + "open_author_profile": "Open Author's Profile", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Reply to Post", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Replied to %s", + "show_post": "Show Post", + "show_user_profile": "Show user profile", + "content_warning": "Content Warning", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Tap anywhere to reveal", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Responder", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Follow", + "following": "Following", + "request": "Request", + "pending": "Pending", + "block": "Block", + "block_user": "Block %s", + "block_domain": "Block %s", + "unblock": "Unblock", + "unblock_user": "Unblock %s", + "blocked": "Blocked", + "mute": "Mute", + "mute_user": "Mute %s", + "unmute": "Unmute", + "unmute_user": "Unmute %s", + "muted": "Muted", + "edit_info": "Edit Info" + }, + "timeline": { + "filtered": "Filtered", + "timestamp": { + "now": "Now" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Show more replies" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Mastodon is made of users in different servers.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "All", + "all_accessiblity_description": "Category: All", + "academia": "academia", + "activism": "activism", + "food": "food", + "furry": "furry", + "games": "games", + "general": "general", + "journalism": "journalism", + "lgbt": "lgbt", + "regional": "regional", + "art": "art", + "music": "music", + "tech": "tech" + }, + "see_less": "See Less", + "see_more": "See More" + }, + "label": { + "language": "LANGUAGE", + "users": "USERS", + "category": "CATEGORY" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Finding available servers...", + "bad_network": "Something went wrong while loading the data. Check your internet connection.", + "no_results": "No results" + } + }, + "register": { + "title": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Your password needs at least eight characters" + }, + "invite": { + "registration_user_invite_request": "Why do you want to join?" + } + }, + "error": { + "item": { + "username": "Username", + "email": "Email", + "password": "Password", + "agreement": "Agreement", + "locale": "Locale", + "reason": "Reason" + }, + "reason": { + "blocked": "%s contains a disallowed email provider", + "unreachable": "%s does not seem to exist", + "taken": "%s is already in use", + "reserved": "%s is a reserved keyword", + "accepted": "%s must be accepted", + "blank": "%s is required", + "invalid": "%s is invalid", + "too_long": "%s is too long", + "too_short": "%s is too short", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Username is too long (can’t be longer than 30 characters)", + "email_invalid": "This is not a valid email address", + "password_too_short": "Password is too short (must be at least 8 characters)" + } + } + }, + "server_rules": { + "title": "Some ground rules.", + "subtitle": "These are set and enforced by the %s moderators.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "terms of service", + "privacy_policy": "privacy policy", + "button": { + "confirm": "I Agree" + } + }, + "confirm_email": { + "title": "One last thing.", + "subtitle": "Tap the link we emailed to you to verify your account.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Open Email App", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Check your email", + "description": "Check if your email address is correct as well as your junk folder if you haven’t.", + "resend_email": "Resend Email" + }, + "open_email_app": { + "title": "Check your inbox.", + "description": "We just sent you an email. Check your junk folder if you haven’t.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Home", + "navigation_bar_state": { + "offline": "Offline", + "new_posts": "See new posts", + "published": "Published!", + "Publishing": "Publishing post...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "When you follow someone, you’ll see their posts in your home feed." + }, + "compose": { + "title": { + "new_post": "New Post", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Type or paste what’s on your mind", + "compose_action": "Publish", + "replying_to_user": "replying to %s", + "attachment": { + "photo": "photo", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Describe the photo for the visually-impaired...", + "description_video": "Describe the video for the visually-impaired..." + }, + "poll": { + "duration_time": "Duration: %s", + "thirty_minutes": "30 minutes", + "one_hour": "1 Hour", + "six_hours": "6 Hours", + "one_day": "1 Day", + "three_days": "3 Days", + "seven_days": "7 Days", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Write an accurate warning here..." + }, + "visibility": { + "public": "Public", + "unlisted": "Unlisted", + "private": "Followers only", + "direct": "Only people I mention" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Add Attachment", + "append_poll": "Add Poll", + "remove_poll": "Remove Poll", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Enable Content Warning", + "disable_content_warning": "Disable Content Warning", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Add Attachment - %s", + "select_visibility_entry": "Select Visibility - %s" + } + }, + "profile": { + "dashboard": { + "posts": "posts", + "following": "following", + "followers": "followers" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Content" + } + }, + "segmented_control": { + "posts": "Posts", + "replies": "Replies", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Search", + "search_bar": { + "placeholder": "Search hashtags and users", + "cancel": "Cancel" + }, + "recommend": { + "button_text": "See All", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Accounts you might like", + "description": "You may like to follow these accounts", + "follow": "Follow" + } + }, + "searching": { + "segment": { + "all": "All", + "people": "People", + "hashtags": "Hashtags", + "posts": "Posts" + }, + "empty_state": { + "no_results": "No results" + }, + "recent_search": "Recent searches", + "clear": "Clear" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Show Everything", + "show_mentions": "Show Mentions" + } + }, + "thread": { + "back_title": "Post", + "title": "Post from %s" + }, + "settings": { + "title": "Settings", + "section": { + "appearance": { + "title": "Appearance", + "automatic": "Automatic", + "light": "Always Light", + "dark": "Always Dark" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifications", + "favorites": "Favorites my post", + "follows": "Follows me", + "boosts": "Reblogs my post", + "mentions": "Mentions me", + "trigger": { + "anyone": "anyone", + "follower": "a follower", + "follow": "anyone I follow", + "noone": "no one", + "title": "Notify me when" + } + }, + "preference": { + "title": "Preferences", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "The Boring Zone", + "account_settings": "Account Settings", + "terms": "Terms of Service", + "privacy": "Privacy Policy" + }, + "spicy_zone": { + "title": "The Spicy Zone", + "clear": "Clear Media Cache", + "signout": "Sign Out" + } + }, + "footer": { + "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" + }, + "keyboard": { + "close_settings_window": "Close Settings Window" + } + }, + "report": { + "title_report": "Report", + "title": "Report %s", + "step1": "Step 1 of 2", + "step2": "Step 2 of 2", + "content1": "Are there any other posts you’d like to add to the report?", + "content2": "Is there anything the moderators should know about this report?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 342f99b1466b5a1a5441e21a030559c98f712c71 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:10 +0200 Subject: [PATCH 261/571] New translations app.json (Indonesian) --- .../StringsConvertor/input/id.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/id.lproj/app.json diff --git a/Localization/StringsConvertor/input/id.lproj/app.json b/Localization/StringsConvertor/input/id.lproj/app.json new file mode 100644 index 000000000..9768f7efe --- /dev/null +++ b/Localization/StringsConvertor/input/id.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Silakan coba lagi.", + "please_try_again_later": "Silakan coba lagi nanti." + }, + "sign_up_failure": { + "title": "Sign Up Failure" + }, + "server_error": { + "title": "Kesalahan Server" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "Japat telah berakhir" + }, + "discard_post_content": { + "title": "Hapus Draf", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Publish Failure", + "message": "Failed to publish the post.\nPlease check your internet connection.", + "attachments_message": { + "video_attach_with_photo": "Tidak dapat melampirkan video di postingan yang sudah mengandung gambar.", + "more_than_one_video": "Tidak dapat melampirkan lebih dari satu video." + } + }, + "edit_profile_failure": { + "title": "Edit Profile Error", + "message": "Tidak dapat menyunting profil. Harap coba lagi." + }, + "sign_out": { + "title": "Keluar", + "message": "Apakah Anda yakin ingin keluar?", + "confirm": "Keluar" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Blokir Domain" + }, + "save_photo_failure": { + "title": "Save Photo Failure", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Apakah Anda yakin ingin menghapus postingan ini?", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Bersihkan Cache", + "message": "Berhasil menghapus %s cache." + } + }, + "controls": { + "actions": { + "back": "Kembali", + "next": "Selanjutnya", + "previous": "Sebelumnya", + "open": "Buka", + "add": "Tambah", + "remove": "Hapus", + "edit": "Sunting", + "save": "Simpan", + "ok": "OKE", + "done": "Selesai", + "confirm": "Konfirmasi", + "continue": "Lanjut", + "compose": "Compose", + "cancel": "Batal", + "discard": "Discard", + "try_again": "Coba Lagi", + "take_photo": "Take Photo", + "save_photo": "Simpan Foto", + "copy_photo": "Salin Foto", + "sign_in": "Masuk", + "sign_up": "Daftar", + "see_more": "Lihat lebih banyak", + "preview": "Pratinjau", + "share": "Bagikan", + "share_user": "Bagikan %s", + "share_post": "Bagikan Postingan", + "open_in_safari": "Buka di Safari", + "open_in_browser": "Open in Browser", + "find_people": "Cari orang untuk diikuti", + "manually_search": "Manually search instead", + "skip": "Lewati", + "reply": "Balas", + "report_user": "Laporkan %s", + "block_domain": "Blokir %s", + "unblock_domain": "Berhenti memblokir %s", + "settings": "Pengaturan", + "delete": "Hapus" + }, + "tabs": { + "home": "Beranda", + "search": "Cari", + "notification": "Notifikasi", + "profile": "Profil" + }, + "keyboard": { + "common": { + "switch_to_tab": "Beralih ke %s", + "compose_new_post": "Tulis Postingan Baru", + "show_favorites": "Tampilkan Favorit", + "open_settings": "Buka Pengaturan" + }, + "timeline": { + "previous_status": "Postingan Sebelumnya", + "next_status": "Postingan Selanjutnya", + "open_status": "Buka Postingan", + "open_author_profile": "Buka Profil Penulis", + "open_reblogger_profile": "Open Reblogger's Profile", + "reply_status": "Balas Postingan", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Toggle Content Warning", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Next Section" + } + }, + "status": { + "user_reblogged": "%s reblogged", + "user_replied_to": "Membalas %s", + "show_post": "Tampilkan Postingan", + "show_user_profile": "Tampilkan Profil Pengguna", + "content_warning": "Peringatan Konten", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Ketuk di mana saja untuk melihat", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Ditutup" + }, + "actions": { + "reply": "Balas", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorit", + "unfavorite": "Unfavorite", + "menu": "Menu", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Sebut", + "link": "Tautan", + "hashtag": "Tagar", + "email": "Surel", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Ikuti", + "following": "Mengikuti", + "request": "Request", + "pending": "Pending", + "block": "Blokir", + "block_user": "Blokir %s", + "block_domain": "Blokir %s", + "unblock": "Berhenti memblokir", + "unblock_user": "Berhenti memblokir %s", + "blocked": "Diblokir", + "mute": "Bisukan", + "mute_user": "Bisukan %s", + "unmute": "Berhenti membisukan", + "unmute_user": "Berhenti membisukan %s", + "muted": "Dibisukan", + "edit_info": "Sunting Info" + }, + "timeline": { + "filtered": "Tersaring", + "timestamp": { + "now": "Sekarang" + }, + "loader": { + "load_missing_posts": "Load missing posts", + "loading_missing_posts": "Loading missing posts...", + "show_more_replies": "Tampilkan lebih banyak balasan" + }, + "header": { + "no_status_found": "No Post Found", + "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", + "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", + "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", + "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", + "suspended_warning": "This user has been suspended.", + "user_suspended_warning": "%s’s account has been suspended." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Social networking\nback in your hands.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Pilih sebuah server,\nserver manapun.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "Semua", + "all_accessiblity_description": "Kategori: Semua", + "academia": "academia", + "activism": "aktivisme", + "food": "makanan", + "furry": "furry", + "games": "permainan", + "general": "umum", + "journalism": "jurnalisme", + "lgbt": "lgbt", + "regional": "regional", + "art": "seni", + "music": "musik", + "tech": "teknologi" + }, + "see_less": "Lihat Lebih Sedikit", + "see_more": "Lihat Lebih Banyak" + }, + "label": { + "language": "BAHASA", + "users": "PENGGUNA", + "category": "KATEGORI" + }, + "input": { + "placeholder": "Search servers", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Mencari server yang tersedia...", + "bad_network": "Sesuatu yang salah terjadi ketika memuat data. Periksa koneksi internet Anda.", + "no_results": "Tak ada hasil" + } + }, + "register": { + "title": "Beritahu kami tentang diri Anda.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Hapus" + }, + "username": { + "placeholder": "nama pengguna", + "duplicate_prompt": "Nama pengguna ini sudah diambil." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "surel" + }, + "password": { + "placeholder": "kata sandi", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Kata sandi Anda harus memiliki sekurang-kurangnya delapan karakter" + }, + "invite": { + "registration_user_invite_request": "Mengapa Anda ingin bergabung?" + } + }, + "error": { + "item": { + "username": "Nama pengguna", + "email": "Surel", + "password": "Kata sandi", + "agreement": "Persetujuan", + "locale": "Locale", + "reason": "Alasan" + }, + "reason": { + "blocked": "%s mengandung penyedia surel yang dilarang", + "unreachable": "%s sepertinya tidak ada", + "taken": "%s sudah digunakan", + "reserved": "%s is a reserved keyword", + "accepted": "%s harus diterima", + "blank": "%s diperlukan", + "invalid": "%s tidak valid", + "too_long": "%s terlalu panjang", + "too_short": "%s terlalu pendek", + "inclusion": "%s is not a supported value" + }, + "special": { + "username_invalid": "Username must only contain alphanumeric characters and underscores", + "username_too_long": "Nama pengguna terlalu panjang (tidak boleh lebih dari 30 karakter)", + "email_invalid": "Ini bukan alamat surel yang valid", + "password_too_short": "Kata sandi terlalu pendek (harus sekurang-kurangnya 8 karakter)" + } + } + }, + "server_rules": { + "title": "Beberapa aturan dasar.", + "subtitle": "Peraturan ini ditetapkan oleh admin %s.", + "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", + "terms_of_service": "kebijakan layanan", + "privacy_policy": "kebijakan privasi", + "button": { + "confirm": "Saya Setuju" + } + }, + "confirm_email": { + "title": "Satu hal lagi.", + "subtitle": "Kami baru saja mengirim sebuah surel ke %s,\nketuk tautannya untuk mengkonfirmasi akun Anda.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Buka Aplikasi Surel", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Periksa surel Anda", + "description": "Periksa apakah surel Anda benar dan juga folder junk Anda jika belum memeriksanya.", + "resend_email": "Kirim Ulang Surel" + }, + "open_email_app": { + "title": "Periksa kotak masuk Anda.", + "description": "Kami baru saja mengirimkan Anda sebuah surel. Periksa folder junk Anda jika Anda belum memeriksanya.", + "mail": "Mail", + "open_email_client": "Open Email Client" + } + }, + "home_timeline": { + "title": "Beranda", + "navigation_bar_state": { + "offline": "Luring", + "new_posts": "Lihat postingan baru", + "published": "Dipublikasikan!", + "Publishing": "Mempublikasikan postingan...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Find People to Follow", + "follow_explain": "Ketika Anda mengikuti seseorang, Anda akan melihat postingan mereka di beranda Anda." + }, + "compose": { + "title": { + "new_post": "Postingan Baru", + "new_reply": "New Reply" + }, + "media_selection": { + "camera": "Take Photo", + "photo_library": "Photo Library", + "browse": "Browse" + }, + "content_input_placeholder": "Ketik atau tempel apa yang Anda pada pikiran Anda", + "compose_action": "Publikasikan", + "replying_to_user": "membalas %s", + "attachment": { + "photo": "foto", + "video": "video", + "attachment_broken": "%s ini rusak dan tidak dapat diunggah ke Mastodon.", + "description_photo": "Jelaskan fotonya untuk mereka yang tidak dapat melihat dengan jelas...", + "description_video": "Jelaskan videonya untuk mereka yang tidak dapat melihat dengan jelas..." + }, + "poll": { + "duration_time": "Durasi: %s", + "thirty_minutes": "30 menit", + "one_hour": "1 Jam", + "six_hours": "6 Jam", + "one_day": "1 Hari", + "three_days": "3 Hari", + "seven_days": "7 Hari", + "option_number": "Option %ld" + }, + "content_warning": { + "placeholder": "Tulis peringatan yang akurat di sini..." + }, + "visibility": { + "public": "Publik", + "unlisted": "Unlisted", + "private": "Pengikut saja", + "direct": "Hanya orang yang saya sebut" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Tambahkan Lampiran", + "append_poll": "Tambahkan Japat", + "remove_poll": "Hapus Japat", + "custom_emoji_picker": "Custom Emoji Picker", + "enable_content_warning": "Aktifkan Peringatan Konten", + "disable_content_warning": "Nonaktifkan Peringatan Konten", + "post_visibility_menu": "Post Visibility Menu" + }, + "keyboard": { + "discard_post": "Discard Post", + "publish_post": "Publish Post", + "toggle_poll": "Toggle Poll", + "toggle_content_warning": "Toggle Content Warning", + "append_attachment_entry": "Tambahkan Lampiran - %s", + "select_visibility_entry": "Pilih Visibilitas - %s" + } + }, + "profile": { + "dashboard": { + "posts": "postingan", + "following": "mengikuti", + "followers": "pengikut" + }, + "fields": { + "add_row": "Add Row", + "placeholder": { + "label": "Label", + "content": "Isi" + } + }, + "segmented_control": { + "posts": "Postingan", + "replies": "Balasan", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Berhenti Membisukan Akun", + "message": "Confirm to unmute %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Followers from other servers are not displayed." + }, + "following": { + "footer": "Follows from other servers are not displayed." + }, + "search": { + "title": "Cari", + "search_bar": { + "placeholder": "Cari tagar dan pengguna", + "cancel": "Batal" + }, + "recommend": { + "button_text": "Lihat Semua", + "hash_tag": { + "title": "Trending on Mastodon", + "description": "Hashtags that are getting quite a bit of attention", + "people_talking": "%s people are talking" + }, + "accounts": { + "title": "Akun-akun yang mungkin Anda sukai", + "description": "Anda mungkin ingin mengikuti akun-akun ini", + "follow": "Ikuti" + } + }, + "searching": { + "segment": { + "all": "Semua", + "people": "Orang", + "hashtags": "Tagar", + "posts": "Postingan" + }, + "empty_state": { + "no_results": "Tidak ada hasil" + }, + "recent_search": "Recent searches", + "clear": "Hapus" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Segalanya", + "Mentions": "Sebutan" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Tampilkan Segalanya", + "show_mentions": "Tampilkan Sebutan" + } + }, + "thread": { + "back_title": "Postingan", + "title": "Postingan oleh %s" + }, + "settings": { + "title": "Pengaturan", + "section": { + "appearance": { + "title": "Tampilan", + "automatic": "Otomatis", + "light": "Selalu Cerah", + "dark": "Selalu Gelap" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Notifikasi", + "favorites": "Favorites my post", + "follows": "Mengikuti saya", + "boosts": "Reblogs my post", + "mentions": "Menyebut saya", + "trigger": { + "anyone": "siapapun", + "follower": "seorang pengikut", + "follow": "siapapun yang saya ikuti", + "noone": "no one", + "title": "Beritahu saya ketika" + } + }, + "preference": { + "title": "Preferensi", + "true_black_dark_mode": "True black dark mode", + "disable_avatar_animation": "Disable animated avatars", + "disable_emoji_animation": "Disable animated emojis", + "using_default_browser": "Use default browser to open links", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "Zona Membosankan", + "account_settings": "Pengaturan Akun", + "terms": "Kebijakan Layanan", + "privacy": "Kebijakan Privasi" + }, + "spicy_zone": { + "title": "Zona Pedas", + "clear": "Hapus Cache Media", + "signout": "Keluar" + } + }, + "footer": { + "mastodon_description": "Mastodon adalah perangkat lunak sumber terbuka. Anda dapat melaporkan masalah melalui GitHub di %s (%s)" + }, + "keyboard": { + "close_settings_window": "Tutup Jendela Pengaturan" + } + }, + "report": { + "title_report": "Report", + "title": "Laporkan %s", + "step1": "Langkah 1 dari 2", + "step2": "Langkah 2 dari 2", + "content1": "Apakah ada postingan lain yang ingin Anda tambahkan ke laporannya?", + "content2": "Ada yang moderator harus tahu tentang laporan ini?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Kirim Laporan", + "skip_to_send": "Kirim tanpa komentar", + "text_placeholder": "Ketik atau tempel komentar tambahan", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + }, + "account_list": { + "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", + "dismiss_account_switcher": "Dismiss Account Switcher", + "add_account": "Add Account" + }, + "wizard": { + "new_in_mastodon": "New in Mastodon", + "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", + "accessibility_hint": "Double tap to dismiss this wizard" + } + } +} \ No newline at end of file From 570e50a99d20aac584e380bec400aecac8d80a02 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:11 +0200 Subject: [PATCH 262/571] New translations Intents.strings (Scottish Gaelic) --- .../Intents/input/gd.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/gd.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.strings new file mode 100644 index 000000000..526defecd --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Postaich air Mastodon"; + +"751xkl" = "Susbaint teacsa"; + +"CsR7G2" = "Postaich air Mastodon"; + +"HZSGTr" = "Dè an t-susbaint ri postadh?"; + +"HdGikU" = "Dh’fhàillig leis a’ phostadh"; + +"KDNTJ4" = "Adhbhar an fhàilligidh"; + +"RHxKOw" = "Cuir post le susbaint teacsa"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Postaich ${content} air Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Faicsinneachd"; + +"Zo4jgJ" = "Faicsinneachd a’ phuist"; + +"apSxMG-dYQ5NN" = "Tha ${count} roghainn(ean) dha “Poblach” ann."; + +"apSxMG-ehFLjY" = "Tha ${count} roghainn(ean) dha “Luchd-leantainn a-mhàin” ann."; + +"ayoYEb-dYQ5NN" = "${content}, poblach"; + +"ayoYEb-ehFLjY" = "${content}, luchd-leantainn a-mhàin"; + +"dUyuGg" = "Postaich air Mastodon"; + +"dYQ5NN" = "Poblach"; + +"ehFLjY" = "Luchd-leantainn a-mhàin"; + +"gfePDu" = "Fhàillig leis a’ phostadh. ${failureReason}"; + +"k7dbKQ" = "Chaidh am post a chur."; + +"oGiqmY-dYQ5NN" = "A bheil “Poblach” fainear dhut le cinnt?"; + +"oGiqmY-ehFLjY" = "A bheil “Luchd-leantainn a-mhàin” fainear dhut le cinnt?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Chaidh am post a chur. "; From 330a1362ff42241dbd1717191e2313386d23d430 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:12 +0200 Subject: [PATCH 263/571] New translations Intents.stringsdict (Scottish Gaelic) --- .../input/gd.lproj/Intents.stringsdict | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/gd.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.stringsdict new file mode 100644 index 000000000..4b93628d7 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/gd.lproj/Intents.stringsdict @@ -0,0 +1,46 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Tha %#@count_option@ dha “${content}” ann. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld roghainn + two + %ld roghainn + few + %ld roghainnean + other + %ld roghainn + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Tha %#@count_option@ dha “${visibility}” ann. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld roghainn + two + %ld roghainn + few + %ld roghainnean + other + %ld roghainn + + + + From 79ce8ae1876d2669929082febc41646d09fae1ec Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:13 +0200 Subject: [PATCH 264/571] New translations Localizable.stringsdict (Catalan) --- .../input/ca.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict new file mode 100644 index 000000000..c83c65883 --- /dev/null +++ b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notificació per llegir + other + %ld notificacions per llegir + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + El límit de la entrada supera a %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caràcter + other + %ld caràcters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + El límit de la entrada continua sent %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caràcter + other + %ld caràcters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + publicació + other + publicacions + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mèdia + other + %ld mèdia + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 publicació + other + %ld publicacions + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorit + other + %ld favorits + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 impuls + other + %ld impulsos + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 Resposta + other + %ld respostes + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vot + other + %ld vots + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votant + other + %ld votants + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 persona en parla + other + %ld persones en parlen + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguit + other + %ld seguits + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguidor + other + %ld seguidors + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 any restant + other + %ld anys restants + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mes restant + other + %ld mesos restants + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dia restant + other + %ld dies restants + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hora restant + other + %ld hores restants + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minut restant + other + %ld minuts restants + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 segon restant + other + %ld segons restants + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1 any + other + fa %ld anys + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1 mes + other + fa %ld mesos + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1 día + other + fa %ld dies + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1h + other + fa %ld hores + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1 minut + other + fa %ld minuts + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1 segon + other + fa %ld segons + + + + From ba71d74ecc225ffa9e8fc6b374e95e301a9830b6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:14 +0200 Subject: [PATCH 265/571] New translations ios-infoPlist.json (Spanish, Argentina) --- .../StringsConvertor/input/es-AR.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/es-AR.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/es-AR.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/es-AR.lproj/ios-infoPlist.json new file mode 100644 index 000000000..e9873af8f --- /dev/null +++ b/Localization/StringsConvertor/input/es-AR.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Usado para tomar fotos para los mensajes", + "NSPhotoLibraryAddUsageDescription": "Usado para guardar la foto en la Biblioteca de fotos", + "NewPostShortcutItemTitle": "Nuevo mensaje", + "SearchShortcutItemTitle": "Buscar" +} From a3fbf03451fc474c7503490d8c011463a122b32f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:15 +0200 Subject: [PATCH 266/571] New translations ios-infoPlist.json (Thai) --- .../StringsConvertor/input/th.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/th.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/th.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/th.lproj/ios-infoPlist.json new file mode 100644 index 000000000..0eaf8d4bc --- /dev/null +++ b/Localization/StringsConvertor/input/th.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "ใช้เพื่อถ่ายรูปสำหรับโพสต์สถานะ", + "NSPhotoLibraryAddUsageDescription": "ใช้เพื่อบันทึกรูปภาพลงในคลังรูปภาพ", + "NewPostShortcutItemTitle": "โพสต์ใหม่", + "SearchShortcutItemTitle": "ค้นหา" +} From d7f24ad13dc66d5ad60caf5142efc3ca1721fee5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:16 +0200 Subject: [PATCH 267/571] New translations ios-infoPlist.json (Hindi) --- .../StringsConvertor/input/hi.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/hi.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/hi.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/hi.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/hi.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From 8649f1752dbc53ca32d533af78ce63ecd8ec9d4d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:17 +0200 Subject: [PATCH 268/571] New translations ios-infoPlist.json (English, United States) --- .../StringsConvertor/input/en-US.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/en-US.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/en-US.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/en-US.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/en-US.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From 850c70136a111a3e8cfa1a34314a34112f165ef5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:17 +0200 Subject: [PATCH 269/571] New translations ios-infoPlist.json (Welsh) --- .../StringsConvertor/input/cy.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/cy.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/cy.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/cy.lproj/ios-infoPlist.json new file mode 100644 index 000000000..ee0c5bfee --- /dev/null +++ b/Localization/StringsConvertor/input/cy.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "Post Newydd", + "SearchShortcutItemTitle": "Chwilio" +} From df581eb215fc925dab8eb1e93b047e787cf57413 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:18 +0200 Subject: [PATCH 270/571] New translations ios-infoPlist.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/kmr.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/kmr.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/kmr.lproj/ios-infoPlist.json new file mode 100644 index 000000000..cdb286c00 --- /dev/null +++ b/Localization/StringsConvertor/input/kmr.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Bo kişandina wêneyê ji bo rewşa şandiyan tê bikaranîn", + "NSPhotoLibraryAddUsageDescription": "Ji bo tomarkirina wêneyê di pirtûkxaneya wêneyan de tê bikaranîn", + "NewPostShortcutItemTitle": "Şandiya nû", + "SearchShortcutItemTitle": "Bigere" +} From b088edd9494430526af49ac38d58cf021f116ae3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:19 +0200 Subject: [PATCH 271/571] New translations ios-infoPlist.json (Kabyle) --- .../StringsConvertor/input/kab.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/kab.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/kab.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/kab.lproj/ios-infoPlist.json new file mode 100644 index 000000000..41128876a --- /dev/null +++ b/Localization/StringsConvertor/input/kab.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Yettwaseqdac i tuṭṭfa n tewlafin deg usuffeɣ n waddaden", + "NSPhotoLibraryAddUsageDescription": "Yettwaseqdac i usekles n tewlafin deg temkarḍit n tewlafin", + "NewPostShortcutItemTitle": "Tasuffeɣt tamaynut", + "SearchShortcutItemTitle": "Nadi" +} From bd05702789062bf5f8037b4155d90a481ad3c246 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:20 +0200 Subject: [PATCH 272/571] New translations Localizable.stringsdict (Romanian) --- .../input/ro.lproj/Localizable.stringsdict | 474 ++++++++++++++++++ 1 file changed, 474 insertions(+) create mode 100644 Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict new file mode 100644 index 000000000..457dcd5e1 --- /dev/null +++ b/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict @@ -0,0 +1,474 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + few + %ld unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + few + %ld characters + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + few + %ld characters + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + few + posts + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + few + %ld media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + few + %ld posts + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + few + %ld favorites + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + few + %ld reblogs + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + few + %ld replies + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + few + %ld votes + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + few + %ld voters + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + few + %ld people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + few + %ld following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + few + %ld followers + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + few + %ld years left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + few + %ld months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + few + %ld days left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + few + %ld hours left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + few + %ld minutes left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + few + %ld seconds left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + few + %ldy ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + few + %ldM ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + few + %ldd ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + few + %ldh ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + few + %ldm ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + few + %lds ago + other + %lds ago + + + + From 80880e5ca284acda318b80695f92267e038b3739 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:21 +0200 Subject: [PATCH 273/571] New translations Localizable.stringsdict (Arabic) --- .../input/ar.lproj/Localizable.stringsdict | 630 ++++++++++++++++++ 1 file changed, 630 insertions(+) create mode 100644 Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict new file mode 100644 index 000000000..61ba17c28 --- /dev/null +++ b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict @@ -0,0 +1,630 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا إشعار غير مقروء + one + إشعار واحِد غير مقروء + two + إشعاران غير مقروءان + few + %ld إشعارات غير مقروءة + many + %ld إشعارًا غيرَ مقروء + other + %ld إشعار غير مقروء + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + تمَّ تجاوز حدّ الإدخال %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا حرف + one + حرفٌ واحِد + two + حرفان اثنان + few + %ld حُرُوف + many + %ld حرفًا + other + %ld حَرف + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + يتبقَّى على حدّ الإدخال %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا حرف + one + حرفٌ واحِد + two + حرفان اثنان + few + %ld حُرُوف + many + %ld حرفًا + other + %ld حَرف + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا منشور + one + منشور + two + منشوران + few + منشورات + many + منشورًا + other + منشور + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld media + one + 1 media + two + %ld media + few + %ld media + many + %ld media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا مَنشورات + one + منشورٌ واحِد + two + منشورانِ اثنان + few + %ld منشورات + many + %ld منشورًا + other + %ld منشور + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا إعجاب + one + إعجابٌ واحِد + two + إعجابانِ اثنان + few + %ld إعجابات + many + %ld إعجابًا + other + %ld إعجاب + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا إعاد تدوين + one + إعادةُ تدوينٍ واحِدة + two + إعادتا تدوين + few + %ld إعاداتِ تدوين + many + %ld إعادةٍ للتدوين + other + %ld إعادة تدوين + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا رَدّ + one + رَدٌّ واحِد + two + رَدَّانِ اِثنان + few + %ld رُدُود + many + %ld رَدًّا + other + %ld رَدّ + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا صوت + one + صوتٌ واحِد + two + صوتانِ اثنان + few + %ld أصوات + many + %ld صوتًا + other + %ld صوت + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا مُصوِّتون + one + مُصوِّتٌ واحِد + two + مُصوِّتانِ اثنان + few + %ld مُصوِّتين + many + %ld مُصوِّتًا + other + %ld مُصوِّت + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا أحَدَ يتحدَّث + one + شخصٌ واحدٌ يتحدَّث + two + شخصانِ اثنان يتحدَّثا + few + %ld أشخاصٍ يتحدَّثون + many + %ld شخصًا يتحدَّثون + other + %ld شخصٍ يتحدَّثون + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا مُتابَع + one + مُتابَعٌ واحد + two + مُتابَعانِ + few + %ld مُتابَعين + many + %ld مُتابَعًا + other + %ld مُتابَع + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + لا مُتابِع + one + مُتابِعٌ واحد + two + مُتابِعانِ اثنان + few + %ld مُتابِعين + many + %ld مُتابِعًا + other + %ld مُتابِع + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لَحظة + one + تتبقى سنة + two + تتبقى سنتين + few + تتبقى %ld سنوات + many + تتبقى %ld سنةً + other + تتبقى %ld سنة + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لَحظة + one + يتبقى شهر + two + يتبقى شهرين + few + يتبقى %ld أشهر + many + يتبقى %ld شهرًا + other + يتبقى %ld شهر + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لحظة + one + يتبقى يوم + two + يتبقى يومين + few + يتبقى %ld أيام + many + يتبقى %ld يومًا + other + يتبقى %ld يوم + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لَحظة + one + تتبقى ساعة + two + تتبقى ساعتين + few + تتبقى %ld ساعات + many + تتبقى %ld ساعةً + other + تتبقى %ld ساعة + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لَحظة + one + تتبقى دقيقة + two + تتبقى دقيقتين + few + تتبقى %ld دقائق + many + تتبقى %ld دقيقةً + other + تتبقى %ld دقيقة + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + تتبقى لَحظة + one + تتبقى ثانية واحِدة + two + تتبقى ثانيتان + few + تتبقى %ld ثوان + many + تتبقى %ld ثانية + other + تتبقى %ld ثانية + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldع + two + مُنذُ %ldع + few + مُنذُ %ldع + many + مُنذُ %ldع + other + مُنذُ %ldع + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldش + two + مُنذُ %ldش + few + مُنذُ %ldش + many + مُنذُ %ldش + other + مُنذُ %ldش + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldي + two + مُنذُ %ldي + few + مُنذُ %ldي + many + مُنذُ %ldي + other + مُنذُ %ldي + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldس + two + مُنذُ %ldس + few + مُنذُ %ldس + many + مُنذُ %ldس + other + مُنذُ %ldس + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldد + two + مُنذُ %ldد + few + مُنذُ %ldد + many + مُنذُ %ldد + other + مُنذُ %ldد + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + مُنذُ لَحظة + one + مُنذُ %ldث + two + مُنذُ %ldث + few + مُنذُ %ldث + many + مُنذُ %ldث + other + مُنذُ %ldث + + + + From c52a4e0387feb2761f0881479b77c1b2c4d919b3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:22 +0200 Subject: [PATCH 274/571] New translations Localizable.stringsdict (Danish) --- .../input/da.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict new file mode 100644 index 000000000..80cfd3d62 --- /dev/null +++ b/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From 547db16de9282247f82ef7f13d4a9e94a4c34509 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:23 +0200 Subject: [PATCH 275/571] New translations ios-infoPlist.json (Portuguese, Brazilian) --- .../StringsConvertor/input/pt-BR.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt-BR.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/pt-BR.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/pt-BR.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From 481ad7277eaf19100842ec03a8042050c1e96a59 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:24 +0200 Subject: [PATCH 276/571] New translations Localizable.stringsdict (Italian) --- .../input/it.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict new file mode 100644 index 000000000..423ca4104 --- /dev/null +++ b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notifica non letta + other + %ld notifiche non lette + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Il limite di input supera %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carattere + other + %ld caratteri + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Il limite di input rimane %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 carattere + other + %ld caratteri + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + post + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 contenuto multimediale + other + %ld contenuti multimediali + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld post + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 preferito + other + %ld preferiti + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 condivisione + other + %ld condivisioni + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 risposta + other + %ld risposte + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voto + other + %ld voti + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votante + other + %ld votanti + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 persona ne parla + other + %ld persone ne parlano + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld stanno seguendo + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguace + other + %ld seguaci + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 anno rimasto + other + %ld anni rimasti + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mese rimasto + other + %ld mesi rimasti + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 giorno rimasto + other + %ld giorni rimasti + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ora rimasta + other + %ld ore rimaste + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuto rimasto + other + %ld minuti rimasti + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 secondo rimasto + other + %ld secondi rimasti + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 anno fa + other + %ld anni fa + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mese fa + other + %ld mesi fa + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 giorno fa + other + %ld giorni fa + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ora fa + other + %ld ore fa + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuto fa + other + %ld minuti fa + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 secondo fa + other + %ld secondi fa + + + + From dd4e670287321ee8d79e7e7f2d294430388cab0b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:25 +0200 Subject: [PATCH 277/571] New translations Localizable.stringsdict (Japanese) --- .../input/ja.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict new file mode 100644 index 000000000..87e4f8a5e --- /dev/null +++ b/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 件の未読通知 + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 文字 + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 文字 + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 投稿 + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld お気に入り + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ブースト + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld票 + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld人が投稿 + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld フォロー + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld フォロワー + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 残り%ld年 + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldか月前 + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 残り%ld日 + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 残り%ld時間 + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 残り%ld分 + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 残り%ld秒 + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 年前 + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldか月前 + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld日前 + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld時間前 + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld分前 + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld秒前 + + + + From 66acf0b20eb66de4de4990d44f86d67912f2e0f7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:26 +0200 Subject: [PATCH 278/571] New translations Localizable.stringsdict (Korean) --- .../input/ko.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict new file mode 100644 index 000000000..c5ecb53b3 --- /dev/null +++ b/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 게시물 + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 미디어 %ld개 + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 개의 즐겨찾기 + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 개의 리블로그 + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 개의 투표 + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld명의 투표자 + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 명이 말하고 있음 + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %lds ago + + + + From da01d2509377a646005901bd0e1a17ec58cf07a3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:27 +0200 Subject: [PATCH 279/571] New translations Localizable.stringsdict (Dutch) --- .../input/nl.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict new file mode 100644 index 000000000..e6f9353de --- /dev/null +++ b/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Invoer limiet overschrijdt %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 teken + other + %ld tekens + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Invoerlimiet blijft %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 teken + other + %ld tekens + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + bericht + other + berichten + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 bericht + other + %ld berichten + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favoriet + other + %ld favorieten + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 gedeeld bericht + other + %ld gedeelde berichten + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 stem + other + %ld stemmen + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 kiezer + other + %ld kiezers + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 gebruiker die praat + other + %ld gebruikers die praten + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 volgend + other + %ld volgend + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 volger + other + %ld volgers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 jaar resterend + other + %ld jaren resterend + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 maanden resterend + other + %ld maanden resterend + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dag resterend + other + %ld dagen resterend + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 uur resterend + other + %ld uur resterend + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuut resterend + other + %ld minuten resterend + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seconde resterend + other + %ld seconden resterend + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From f624be05712b0a47213cbedec884f36795441c47 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:27 +0200 Subject: [PATCH 280/571] New translations Localizable.stringsdict (Portuguese) --- .../input/pt.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict new file mode 100644 index 000000000..80cfd3d62 --- /dev/null +++ b/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From 52749e3dab818ca4d9d056b19f9ce4146bb5b3ca Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:30 +0200 Subject: [PATCH 281/571] New translations Localizable.stringsdict (Russian) --- .../input/ru.lproj/Localizable.stringsdict | 526 ++++++++++++++++++ 1 file changed, 526 insertions(+) create mode 100644 Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict new file mode 100644 index 000000000..026815a8e --- /dev/null +++ b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict @@ -0,0 +1,526 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + few + %ld unread notification + many + %ld unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Лимит превышен на %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld символ + few + %ld символа + many + %ld символов + other + %ld символа + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld символ остался + few + %ld символа осталось + many + %ld символов осталось + other + %ld символа осталось + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + пост + few + поста + many + постов + other + поста + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld медиафайл + few + %ld медиафайла + many + %ld медиафайлов + other + %ld медиафайла + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld пост + few + %ld поста + many + %ld постов + other + %ld поста + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld добавил(а) в избранное + few + %ld добавили в избранное + many + %ld добавили в избранное + other + %ld добавили в избранное + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld продвинул(а) + few + %ld продвинули + many + %ld продвинули + other + %ld продвинули + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + few + %ld replies + many + %ld replies + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld голос + few + %ld голоса + many + %ld голосов + other + %ld голоса + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + few + %ld voters + many + %ld voters + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + few + %ld people talking + many + %ld people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + few + %ld following + many + %ld following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + few + %ld followers + many + %ld followers + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + few + %ld years left + many + %ld years left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + few + %ld months left + many + %ld months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + few + %ld days left + many + %ld days left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + few + %ld hours left + many + %ld hours left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + few + %ld minutes left + many + %ld minutes left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + few + %ld seconds left + many + %ld seconds left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + few + %ldy ago + many + %ldy ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + few + %ldM ago + many + %ldM ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + few + %ldd ago + many + %ldd ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + few + %ldh ago + many + %ldh ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + few + %ldm ago + many + %ldm ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + few + %lds ago + many + %lds ago + other + %lds ago + + + + From 95f6128c60bd8c29a92cf529e1014f3bef51a24c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:31 +0200 Subject: [PATCH 282/571] New translations Localizable.stringsdict (Chinese Simplified) --- .../zh-Hans.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict new file mode 100644 index 000000000..4040f30d0 --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 条未读通知 + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + 输入字符限制超出 %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 个字符 + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + 输入字符限制剩余 %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 个字符 + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 个帖子 + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 个帖子 + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 个喜欢 + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 条转发 + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 条回复 + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 票 + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 人 + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 人正在讨论 + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 人正在关注 + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 个关注者 + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 年 + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 个月 + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 天 + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 小时 + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 分钟 + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 剩余 %ld 秒 + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 年前 + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 月前 + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 天前 + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 小时前 + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 分前 + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 秒前 + + + + From 61e8ff59fd8b49387a37299df1419e8928b465a0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:32 +0200 Subject: [PATCH 283/571] New translations Localizable.stringsdict (Chinese Traditional) --- .../zh-Hant.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict new file mode 100644 index 000000000..fe44cdfd0 --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 則未讀通知 + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + 輸入字數限制超過 %#@character_count@ 字 + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個字元 + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + 輸入字數限制剩餘 %#@character_count@ 字 + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個字 + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 嘟文 + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個媒體 + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 則嘟文 + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個最愛 + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個轉嘟 + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個回覆 + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 票 + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 位投票者 + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個人正在討論 + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個跟隨中 + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個跟隨者 + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 年 + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 個月 + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 天 + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 小時 + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 分鐘 + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + 還有 %ld 秒 + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 年前 + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個月前 + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 天前 + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 小時前 + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 分鐘前 + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 秒前 + + + + From 526494ecc70f1a5b0d6e425afab5331b01d4b62e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:32 +0200 Subject: [PATCH 284/571] New translations Localizable.stringsdict (English) --- .../input/en.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict new file mode 100644 index 000000000..80cfd3d62 --- /dev/null +++ b/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From e3c3b5d0fa8ae5b012a43a0e697a5164cdccc603 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:33 +0200 Subject: [PATCH 285/571] New translations Localizable.stringsdict (Vietnamese) --- .../input/vi.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict new file mode 100644 index 000000000..886021c08 --- /dev/null +++ b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld thông báo chưa đọc + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Giới hạn nhập tối đa %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ký tự + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Giới hạn nhập còn lại %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ký tự + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + tút + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld tút + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld lượt thích + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld đăng lại + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld trả lời + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld bình chọn + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld người bình chọn + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld người đang thảo luận + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld đang theo dõi + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld người theo dõi + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld năm còn lại + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld tháng còn lại + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ngày còn lại + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld giờ còn lại + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld phút còn lại + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld giây còn lại + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld năm trước + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld tháng trước + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ngày trước + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldh + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldm + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %lds + + + + From fa39e3877a0bef51573952fc323c550d4fc713a8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:34 +0200 Subject: [PATCH 286/571] New translations ios-infoPlist.json (Indonesian) --- .../StringsConvertor/input/id.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/id.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/id.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/id.lproj/ios-infoPlist.json new file mode 100644 index 000000000..0dde7c29e --- /dev/null +++ b/Localization/StringsConvertor/input/id.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "Postingan Baru", + "SearchShortcutItemTitle": "Cari" +} From 6b645930fd88e36f0a08374fabbab92e8587905d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:35 +0200 Subject: [PATCH 287/571] New translations ios-infoPlist.json (Vietnamese) --- .../StringsConvertor/input/vi.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/vi.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/vi.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/vi.lproj/ios-infoPlist.json new file mode 100644 index 000000000..2170219a4 --- /dev/null +++ b/Localization/StringsConvertor/input/vi.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Được sử dụng để chụp ảnh cho tút", + "NSPhotoLibraryAddUsageDescription": "Được sử dụng để lưu ảnh vào Thư viện ảnh", + "NewPostShortcutItemTitle": "Viết tút", + "SearchShortcutItemTitle": "Tìm kiếm" +} From a8bdd4a5fd938f16d4ef38e23771742c1e04be4a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:36 +0200 Subject: [PATCH 288/571] New translations ios-infoPlist.json (Swedish) --- .../StringsConvertor/input/sv.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/sv.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/sv.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/sv.lproj/ios-infoPlist.json new file mode 100644 index 000000000..6073413d8 --- /dev/null +++ b/Localization/StringsConvertor/input/sv.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Används för att ta foto till inlägg", + "NSPhotoLibraryAddUsageDescription": "Används för att spara foto till bildbiblioteket", + "NewPostShortcutItemTitle": "Nytt inlägg", + "SearchShortcutItemTitle": "Sök" +} From e1d9524278c098bf1e7172526860f3e68959a1e2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:37 +0200 Subject: [PATCH 289/571] New translations ios-infoPlist.json (Arabic) --- .../StringsConvertor/input/ar.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ar.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ar.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ar.lproj/ios-infoPlist.json new file mode 100644 index 000000000..1535679cb --- /dev/null +++ b/Localization/StringsConvertor/input/ar.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "يُستخدم لالتقاط الصورة عِندَ نشر الحالات", + "NSPhotoLibraryAddUsageDescription": "يُستخدم لحِفظ الصورة في مكتبة الصور", + "NewPostShortcutItemTitle": "مَنشُورٌ جَديد", + "SearchShortcutItemTitle": "البحث" +} From 019645dd38f14c19fab82dac53fdbf0fd18da9d5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:38 +0200 Subject: [PATCH 290/571] New translations Intents.stringsdict (Swedish) --- .../input/sv.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/sv.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.stringsdict new file mode 100644 index 000000000..a5e8432fb --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Det finns %#@count_option@ alternativ som matchar ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld alternativ + other + %ld alternativ + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Det finns %#@count_option@ alternativ som matchar ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld alternativ + other + %ld alternativ + + + + From a8a85b58ebb2d59452fec59b1bd353ae3323edf2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:39 +0200 Subject: [PATCH 291/571] New translations Intents.strings (Swedish) --- .../Intents/input/sv.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/sv.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.strings new file mode 100644 index 000000000..526e495d2 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/sv.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Publicera på Mastodon"; + +"751xkl" = "Textinnehåll"; + +"CsR7G2" = "Publicera på Mastodon"; + +"HZSGTr" = "Vilket innehåll ska publiceras?"; + +"HdGikU" = "Publiceringen misslyckades"; + +"KDNTJ4" = "Felorsak"; + +"RHxKOw" = "Skicka inlägg med textinnehåll"; + +"RxSqsb" = "Inlägg"; + +"WCIR3D" = "Publicera ${content} på Mastodon"; + +"ZKJSNu" = "Inlägg"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Synlighet"; + +"Zo4jgJ" = "Inläggssynlighet"; + +"apSxMG-dYQ5NN" = "Det finns ${count} alternativ som matchar ‘Offentligt’."; + +"apSxMG-ehFLjY" = "Det finns ${count} alternativ som matchar ‘Endast följare’."; + +"ayoYEb-dYQ5NN" = "${content}, Offentligt"; + +"ayoYEb-ehFLjY" = "${content}, Endast följare"; + +"dUyuGg" = "Publicera på Mastodon"; + +"dYQ5NN" = "Offentligt"; + +"ehFLjY" = "Endast följare"; + +"gfePDu" = "Publicering misslyckades. ${failureReason}"; + +"k7dbKQ" = "Inlägget har publicerats."; + +"oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Offentligt'?"; + +"oGiqmY-ehFLjY" = "Bara för att bekräfta, ville du ha 'Endast följare'?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Inlägget har publicerats. "; From 289794727a1151545d2f3ea3c804f37203c18aa2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:40 +0200 Subject: [PATCH 292/571] New translations app.json (Sorani (Kurdish)) --- .../StringsConvertor/input/ckb.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/ckb.lproj/app.json diff --git a/Localization/StringsConvertor/input/ckb.lproj/app.json b/Localization/StringsConvertor/input/ckb.lproj/app.json new file mode 100644 index 000000000..bd5d3048b --- /dev/null +++ b/Localization/StringsConvertor/input/ckb.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "تکایە دووبارە هەوڵ بدەوە.", + "please_try_again_later": "تکایە دواتر هەوڵ بدەوە." + }, + "sign_up_failure": { + "title": "تۆمارکردنەکە سەرکەوتوو نەبوو" + }, + "server_error": { + "title": "هەڵەی ڕاژەکار" + }, + "vote_failure": { + "title": "نەتوانرا دەنگ بدرێت", + "poll_ended": "دەنگدانەکە کۆتایی هاتووە" + }, + "discard_post_content": { + "title": "ڕەشنووس هەڵمەگرە", + "message": "دڵنیا ببەوە بۆ وازهێنان لە ناوەڕۆکەت." + }, + "publish_post_failure": { + "title": "نەتوانرا پۆستەکە بکرێت", + "message": "نەتوانرا پۆستەکە بکرێت.\nتکایە لە بەردەستبوونی هێڵی ئینتەرنێت دڵنیا بە.", + "attachments_message": { + "video_attach_with_photo": "ناتوانیت ڤیدیۆ بۆ پۆستێک زیاد بکەیت کە وێنەی تێدایە.", + "more_than_one_video": "ناتوانیت زیاتر لە یەک ڤیدیۆی پێوە بلکێنیت." + } + }, + "edit_profile_failure": { + "title": "نەتوانرا دەستکاریی پرۆفایل بکرێت", + "message": "ناتوانرێت دەستکاریی پرۆفایل بکرێت. تکایە دووبارە هەوڵ بدەوە." + }, + "sign_out": { + "title": "دەربچۆ", + "message": "دڵنیایت دەتەوێت دەربچیت؟", + "confirm": "دەربچۆ" + }, + "block_domain": { + "title": "دڵنیایت دەتەوێت تەواوی %s ئاستەنگ بکەیت؟ لە زۆر بارەکاندا ئاستەنگکردنی بچووک باشترە. ئەگەر وا بکەیت، لەو ڕاژەکارەوە هیچ شتێک نابینیت و هەموو شوێنکەوتووەکانت لەوێوە لادەبرێن.", + "block_entire_domain": "هەموو ڕاژەکارەکە ئاستەنگ بکە" + }, + "save_photo_failure": { + "title": "نەتوانرا وێنەکە هەڵبگیرێت", + "message": "تکایە ڕێ بە ماستۆدۆن بدە تاوەکو بتوانێت وێنەکە هەڵبگرێت." + }, + "delete_post": { + "title": "بیسڕەوە", + "message": "دڵنیایت دەتەوێت ئەم پۆستە بسڕیتەوە؟" + }, + "clean_cache": { + "title": "بیرگە پاک بکەوە", + "message": "سەرکەوتووانە بیرگەی %s پاک کرایەوە." + } + }, + "controls": { + "actions": { + "back": "بگەڕێوە", + "next": "دواتر", + "previous": "پێشتر", + "open": "بیکەوە", + "add": "زیادی بکە", + "remove": "لایبە", + "edit": "دەستکاری", + "save": "هەڵی بگرە", + "ok": "باشە", + "done": "تەواو", + "confirm": "پشتڕاستی بکەوە", + "continue": "بەردەوام بە", + "compose": "پۆست بکە", + "cancel": "هەڵوەشاندنەوه", + "discard": "وازی لێ بێنە", + "try_again": "هەوڵ بدەوە", + "take_photo": "وێنە بگرە", + "save_photo": "هەڵی بگرە", + "copy_photo": "لەبەری بگرەوە", + "sign_in": "بچۆ ژوورەوە", + "sign_up": "خۆت تۆمار بکە", + "see_more": "زیاتر ببینە", + "preview": "پێشبینین", + "share": "هاوبەشی بکە", + "share_user": "%s هاوبەش بکە", + "share_post": "هاوبەشی بکە", + "open_in_safari": "لە Safari بیکەوە", + "open_in_browser": "لە وێبگەڕ بیکەوە", + "find_people": "خەڵک بدۆزەوە", + "manually_search": "خۆت بگەڕێ", + "skip": "بیپەڕێنە", + "reply": "وەڵامی بدەوە", + "report_user": "سکاڵا لە %s بکە", + "block_domain": "%s ئاستەنگ بکە", + "unblock_domain": "%s ئاستەنگ مەکە", + "settings": "رێکخستنەکان", + "delete": "بیسڕەوە" + }, + "tabs": { + "home": "ماڵەوە", + "search": "بگەڕێ", + "notification": "ئاگادارکردنەوەکان", + "profile": "پرۆفایل" + }, + "keyboard": { + "common": { + "switch_to_tab": "بڕۆ بۆ %s", + "compose_new_post": "پۆستێکی نوێ بکە", + "show_favorites": "بەدڵبووەکان ببینە", + "open_settings": "ڕێکخستنەکان بکەوە" + }, + "timeline": { + "previous_status": "پۆستی پێشتر", + "next_status": "پۆستی دواتر", + "open_status": "بیکەوە", + "open_author_profile": "پرۆفایلەکەی بکەوە", + "open_reblogger_profile": "پرۆفایلەکەی بکەوە", + "reply_status": "وەڵامی بدەوە", + "toggle_reblog": "پۆستکردنەوەی پۆست", + "toggle_favorite": "بەدڵبوونی پۆست", + "toggle_content_warning": "ئاگاداریی ناوەڕۆک نیشان بدە", + "preview_image": "بیبینە" + }, + "segmented_control": { + "previous_section": "بەشی پێشتر", + "next_section": "دەستنیشانکراوی دواتر" + } + }, + "status": { + "user_reblogged": "%s پۆست کرایەوە", + "user_replied_to": "لە وەڵامدا بۆ %s", + "show_post": "پۆستەکە نیشان بدە", + "show_user_profile": "پرۆفایلەکەی نیشان بدە", + "content_warning": "ئاگاداریی ناوەڕۆک", + "sensitive_content": "ناوەڕۆکی هەستیار", + "media_content_warning": "دەستی پیا بنێ بۆ نیشاندانی", + "tap_to_reveal": "دەستی پیا بنێ بۆ نیشاندانی", + "poll": { + "vote": "دەنگ بدە", + "closed": "داخراوە" + }, + "actions": { + "reply": "وەڵامی بدەوە", + "reblog": "پۆستی بکەوە", + "unreblog": "پۆستکردنەکە بگەڕێنەوە", + "favorite": "بەدڵمە", + "unfavorite": "بەدڵبوونەکە بگەڕێنەوە", + "menu": "پێڕست", + "hide": "بیشارەوە", + "show_image": "وێنەکە نیشان بدە", + "show_gif": "گیفەکە نیشان بدە", + "show_video_player": "ڤیدیۆکە لێ بدە", + "tap_then_hold_to_show_menu": "دەستی پیا بنێ و بیگرە بۆ نیشاندانی پێڕستەکە" + }, + "tag": { + "url": "بەستەر", + "mention": "ئاماژە", + "link": "بەستەر", + "hashtag": "هاشتاگ", + "email": "ئیمێڵ", + "emoji": "ئیمۆجی" + }, + "visibility": { + "unlisted": "هەرکەسێک دەتوانێت ئەم پۆستە ببینێت بەڵام ناچێتە بەردەمیان.", + "private": "تەنیا شوێنکەوتووەکانی دەتوانن ئەم پۆستە ببینن.", + "private_from_me": "تەنیا شوێنکەوتووەکانم دەتوانن ئەم پۆستە ببینن.", + "direct": "تەنیا بەکارهێنەرە ئاماژە پێکراوەکە دەتوانێت ئەم پۆستە ببینێت." + } + }, + "friendship": { + "follow": "شوێنی بکەوە", + "following": "شوێنی دەکەویت", + "request": "داوای لێ بکە", + "pending": "داوات کردووە", + "block": "ئاستەنگی بکە", + "block_user": "%s ئاستەنگ بکە", + "block_domain": "%s ئاستەنگ بکە", + "unblock": "ئاستەنگی مەکە", + "unblock_user": "%s ئاستەنگ مەکە", + "blocked": "ئاستەنگ کراوە", + "mute": "بێدەنگی بکە", + "mute_user": "%s بێدەنگە", + "unmute": "بێدەنگی مەکە", + "unmute_user": "%s بێدەنگ مەکە", + "muted": "بێدەنگ کراوە", + "edit_info": "دەستکاری" + }, + "timeline": { + "filtered": "پاڵێوراو", + "timestamp": { + "now": "ئێستا" + }, + "loader": { + "load_missing_posts": "پۆستە ماوەکان بار بکە", + "loading_missing_posts": "پۆستە ماوەکان بار دەکرێن...", + "show_more_replies": "وەڵامی زیاتر نیشان بدە" + }, + "header": { + "no_status_found": "هیچ پۆستێک نەدۆزرایەوە", + "blocking_warning": "ناتوانیت پرۆفایلی ئەم بەکارهێنەرە ببینیت\nهەتا ئاستەنگەکەیان لادەبەیت.\nپرۆفایلەکەت ئاوها لایان دەردەکەوێت.", + "user_blocking_warning": "ناتوانیت پرۆفایلی %s ببینیت\nهەتا ئاستەنگەکەیان لادەبەیت.\nپرۆفایلەکەت ئاوها لایان دەردەکەوێت.", + "blocked_warning": "ناتوانیت پرۆفایلی ئەم بەکارهێنەرە ببینیت\nتا ئەو کاتەی ئاستەنگەکەت لادەبات.", + "user_blocked_warning": "ناتوانیت پرۆفایلی %s ببینیت\nتا ئەو کاتەی ئاستەنگەکەت لادەبات.", + "suspended_warning": "ئەم بەکارهێنەرە ڕاگیراوە.", + "user_suspended_warning": "هەژماری %s ڕاگیراوە." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "تۆڕی کۆمەڵایەتی\nلەژێر دەستەکانت.", + "get_started": "دەست پێ بکە", + "log_in": "بچۆ ژوورەوە" + }, + "server_picker": { + "title": "ماستۆدۆن لە چەندان بەکارهێنەر پێک دێت کە لە ڕاژەکاری جیاواز دان.", + "subtitle": "ڕاژەکارێکێکی گشتی یان دانەیەک لەسەر بنەمای حەزەکانت و هەرێمەکەت هەڵبژێرە.", + "subtitle_extend": "ڕاژەکارێکێکی گشتی یان دانەیەک لەسەر بنەمای حەزەکانت و هەرێمەکەت هەڵبژێرە. هەر ڕاژەکارێک لەلایەن ڕێکخراوێک یان تاکەکەسێک بەڕێوە دەبرێت.", + "button": { + "category": { + "all": "هەموو", + "all_accessiblity_description": "بەش: هەموو", + "academia": "ئەکادیمیا", + "activism": "چالاکی", + "food": "خواردن", + "furry": "furry", + "games": "یاری", + "general": "گشتی", + "journalism": "ڕۆژنامەوانی", + "lgbt": "lgbt", + "regional": "هەرێمی", + "art": "هونەر", + "music": "موزیک", + "tech": "تەکنۆلۆژیا" + }, + "see_less": "کەمتر ببینە", + "see_more": "زیاتر ببینە" + }, + "label": { + "language": "زمان", + "users": "بەکارهێنەر", + "category": "بەش" + }, + "input": { + "placeholder": "بگەڕێ", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "ڕاژەکار دەدۆزرێتەوە...", + "bad_network": "هەڵەیەک ڕوویدا لە کاتی بارکردن. لە هەبوونی هێڵی ئینتەرنێت دڵنیا بە.", + "no_results": "ئەنجام نییە" + } + }, + "register": { + "title": "خۆت تۆمار بکە لە %s", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "بیسڕەوە" + }, + "username": { + "placeholder": "ناوی بەکارهێنەر", + "duplicate_prompt": "ئەم ناوە گیراوە." + }, + "display_name": { + "placeholder": "ناوی نیشاندان" + }, + "email": { + "placeholder": "ئیمێڵ" + }, + "password": { + "placeholder": "تێپەڕوشە", + "require": "تێپەڕوشەکەت لایەنی کەم پێویستیی هەیە بە:", + "character_limit": "8 پیت", + "accessibility": { + "checked": "هەڵبژێردراو", + "unchecked": "هەڵنەبژێردراو" + }, + "hint": "دەبێت تێپەڕوشەکەت لایەنی کەم هەشت نووسە بێت" + }, + "invite": { + "registration_user_invite_request": "بۆچی دەتەوێت بەشدار بیت؟" + } + }, + "error": { + "item": { + "username": "ناوی بەکارهێنەر", + "email": "ئیمێڵ", + "password": "تێپەڕوشە", + "agreement": "ڕێککەوتن", + "locale": "زمان", + "reason": "هۆکار" + }, + "reason": { + "blocked": "%s خزمەتگوزارییەکی ئیمێڵی ڕێپێنەدراو بەکار دەهێنێت", + "unreachable": "%s بوونی نییە", + "taken": "%s بەکار هێنراوە لەلایەن یەکێکی تر", + "reserved": "%s وشەیەکی گیراوە", + "accepted": "%s دەبێت قبووڵ بکرێت", + "blank": "%s پێویستە", + "invalid": "%s نادروستە", + "too_long": "%s زۆر درێژە", + "too_short": "%s زۆر کورتە", + "inclusion": "%s پشتگیرینەکراوە" + }, + "special": { + "username_invalid": "ناوی بەکارهێنەر دەبێت تەنیا پیت، ژمارە و هێڵی ژێرەوەی تێدا بێت", + "username_too_long": "ناوی بەکارهێنەرەکە زۆر درێژە (ناکرێت لە 30 نووسە زیاتر بێت)", + "email_invalid": "ئەم ئیمێڵە دروست نییە", + "password_too_short": "تێپەڕوشەکە زۆر کورتە (نابێت لە 8 نووسە کەمتر بێت)" + } + } + }, + "server_rules": { + "title": "یاساکانی ڕاژەکار", + "subtitle": "ئەمانە لەلایەن چاودێرەکانی %s دانراون و ناچار دەکرێن.", + "prompt": "بەردەوامبوونت واتای ڕازیبوونتە بە مەرجەکانی خزمەتگوزاری و سیاسەتی تایبەتێتیی %s.", + "terms_of_service": "مەرجەکانی بەکارهێنان", + "privacy_policy": "سیاسەتی تایبەتێتی", + "button": { + "confirm": "ڕازیم" + } + }, + "confirm_email": { + "title": "کۆتا شت.", + "subtitle": "بۆ پشتڕاستکردنەوەی هەژمارەکەت ئەو بەستەرە بکەوە کە بە ئیمێڵ بۆمان ناردوویت.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "بەرنامەی ئیمێڵەکەت بکەوە", + "resend": "بینێرەوە" + }, + "dont_receive_email": { + "title": "ئیمێڵەکەت ببینە", + "description": "دڵنیا بە لەوەی ئیمێڵەکەت دروستە و هەموو بوخچەکانت بگەڕێ.", + "resend_email": "ئیمێڵەکە بنێرەوە" + }, + "open_email_app": { + "title": "ئیمێڵەکانت ببینە.", + "description": "ئیمێڵێکمان بۆ ناردیت. هەموو بوخچەکانت ببینە.", + "mail": "Mail", + "open_email_client": "بەرنامەی ئیمێڵەکەت بکەوە" + } + }, + "home_timeline": { + "title": "ماڵەوە", + "navigation_bar_state": { + "offline": "دەرهێڵ", + "new_posts": "پۆستە نوێکان ببینە", + "published": "بڵاوکرایەوە!", + "Publishing": "پۆستەکە بڵاو دەکرێتەوە...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "خەڵک بدۆزەوە", + "follow_explain": "کاتێک شوێنی یەکێک دەکەویت، پۆستەکانی دێتە بەردەمت." + }, + "compose": { + "title": { + "new_post": "پۆستی نوێ", + "new_reply": "وەڵامی نوێ" + }, + "media_selection": { + "camera": "وێنە بگرە", + "photo_library": "وێنەکان", + "browse": "بگەڕێ" + }, + "content_input_placeholder": "دەتەوێت چی پۆست بکەیت؟", + "compose_action": "بڵاوی بکەوە", + "replying_to_user": "لە وەڵامدا بۆ %s", + "attachment": { + "photo": "وێنە", + "video": "ڤیدیۆ", + "attachment_broken": "ئەم %sـە تێک چووە و ناتوانیت بەرزی بکەیتەوە.", + "description_photo": "وێنەکەت بۆ نابیناکان باس بکە...", + "description_video": "ڤیدیۆکەت بۆ نابیناکان باس بکە..." + }, + "poll": { + "duration_time": "کات:‌ %s", + "thirty_minutes": "30 خولەک", + "one_hour": "1 کاتژمێر", + "six_hours": "6 کاتژمێر", + "one_day": "1 ڕۆژ", + "three_days": "3 ڕۆژ", + "seven_days": "7 ڕۆژ", + "option_number": "بژاردەی %ld" + }, + "content_warning": { + "placeholder": "ئاگادارییەکەت لێرە بنووسە..." + }, + "visibility": { + "public": "گشتی", + "unlisted": "پێشنیارنەکراو", + "private": "تەنیا شوێنکەوتووان", + "direct": "ئەوانەی ئاماژەیان پێ دەکەم" + }, + "auto_complete": { + "space_to_add": "بۆشایی دابنێ بۆ زیادکردن" + }, + "accessibility": { + "append_attachment": "پێوەکراوی پێوە بکە", + "append_poll": "دەنگدان زیاد بکە", + "remove_poll": "دانگدانەکە لابە", + "custom_emoji_picker": "هەڵبژێری ئیمۆجی", + "enable_content_warning": "ئاگاداریی ناوەڕۆک چالاک بکە", + "disable_content_warning": "ئاگاداریی ناوەڕۆک ناچالاک بکە", + "post_visibility_menu": "پێڕستی شێوازی دەرکەوتنی پۆست" + }, + "keyboard": { + "discard_post": "پۆستەکە هەڵوەشێنەوە", + "publish_post": "پۆستە بڵاو بکەوە", + "toggle_poll": "دەنگدانەکە نیشان بدە", + "toggle_content_warning": "ئاگاداریی ناوەڕۆک نیشان بدە", + "append_attachment_entry": "پێوەکراوی پێوە بکە - %s", + "select_visibility_entry": "شێوازی دەرکەوتن هەڵبژێرە - %s" + } + }, + "profile": { + "dashboard": { + "posts": "پۆستەکان", + "following": "شوێنکەوتن", + "followers": "شوێنکەوتوو" + }, + "fields": { + "add_row": "ڕیز زیاد بکە", + "placeholder": { + "label": "ناونیشان", + "content": "ناوەڕۆک" + } + }, + "segmented_control": { + "posts": "پۆستەکان", + "replies": "وەڵامەکان", + "posts_and_replies": "پۆست و وەڵامەکان", + "media": "میدیا", + "about": "دەربارە" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "بێدەنگی بکە", + "message": "دڵیا ببەوە بۆ بێدەنگکردنی %s" + }, + "confirm_unmute_user": { + "title": "بێدەنگی مەکە", + "message": "دڵنیا ببەوە بۆ بێدەنگنەکردنی %s" + }, + "confirm_block_user": { + "title": "ئاستەنگی بکە", + "message": "دڵنیا ببەوە بۆ ئاستەنگکردنی %s" + }, + "confirm_unblock_user": { + "title": "ئاستەنگی مەکە", + "message": "دڵنیا ببەوە بۆ لابردنی ئاستەنگی %s" + } + }, + "accessibility": { + "show_avatar_image": "وێنەکە نیشان بدە", + "edit_avatar_image": "دەستکاریی وێنەکە بکە", + "show_banner_image": "وێنەکەی پشتەوە نیشان بدە", + "double_tap_to_open_the_list": "دوو جار دەستی پیا بنێ بۆ کردنەوەی لیستەکە" + } + }, + "follower": { + "footer": "شوێنکەوتووەکانی لە ڕاژەکارەکانی ترەوە نیشان نادرێت." + }, + "following": { + "footer": "شوێنکەوتنەکانی بۆ هەژماری ڕاژەکارەکانی تر نیشان نادرێت." + }, + "search": { + "title": "بگەڕێ", + "search_bar": { + "placeholder": "بۆ هاشتاگ و بەکارهێنەر بگەڕێ", + "cancel": "بگەڕێوە" + }, + "recommend": { + "button_text": "هەمووی ببینە", + "hash_tag": { + "title": "ڕۆژەڤ", + "description": "ئەو هاشتاگانەی سەرنجی زۆریان لەسەرە", + "people_talking": "%s کەس باسی دەکەن" + }, + "accounts": { + "title": "لەوانەیە حەزت لەمانە بێت", + "description": "لەوانەیە بتەوێت شوێنی ئەم هەژمارانە بکەویت", + "follow": "شوێنی بکەوە" + } + }, + "searching": { + "segment": { + "all": "هەمووی", + "people": "خەڵک", + "hashtags": "هاشتاگ", + "posts": "پۆست" + }, + "empty_state": { + "no_results": "هیچ ئەنجامێک نەدۆزرایەوە" + }, + "recent_search": "گەڕانەکانی پێشترت", + "clear": "بیانسڕەوە" + } + }, + "discovery": { + "tabs": { + "posts": "پۆستەکان", + "hashtags": "هاشتاگەکان", + "news": "هەواڵەکان", + "community": "Community", + "for_you": "بۆ تۆ" + }, + "intro": "پۆست هەیە سەرنجیان لەسەرە لە گۆشەکەی تۆ." + }, + "favorite": { + "title": "بەدڵبووەکانت" + }, + "notification": { + "title": { + "Everything": "هەمووی", + "Mentions": "ئاماژەکان" + }, + "notification_description": { + "followed_you": "شوێنت کەوت", + "favorited_your_post": "پۆستەکەتی بەدڵ بوو", + "reblogged_your_post": "پۆستەکەتی پۆست کردەوە", + "mentioned_you": "ئاماژەی پێت کرد", + "request_to_follow_you": "داواکاری بۆ شوێنکەوتنت", + "poll_has_ended": "دەنگدانەکە کۆتایی هات" + }, + "keyobard": { + "show_everything": "هەموو شتێک نیشان بدە", + "show_mentions": "ئاماژەکان نیشان بدە" + } + }, + "thread": { + "back_title": "پۆستەکە", + "title": "پۆستی %s" + }, + "settings": { + "title": "رێکخستنەکان", + "section": { + "appearance": { + "title": "ڕووخسار", + "automatic": "خۆکار", + "light": "ڕووناک", + "dark": "تاریک" + }, + "look_and_feel": { + "title": "ڕووخسار و هەست", + "use_system": "سیستەم", + "really_dark": "زۆر تاریک", + "sorta_dark": "کەم تاریک", + "light": "ڕووناک" + }, + "notifications": { + "title": "ئاماژەکان نیشان بدە", + "favorites": "پۆستەکەمی بەدڵ دەبێت", + "follows": "شوێنم دەکەوێت", + "boosts": "پۆستەکەم پۆست دەکاتەوە", + "mentions": "ئاماژەم پێ دەکات", + "trigger": { + "anyone": "هەرکەسێک", + "follower": "شوێنکەوتووێکم", + "follow": "هەرکەسێک شوێنی دەکەوم", + "noone": "هیچکەس", + "title": "ئاگادارم بکەوە کاتێک" + } + }, + "preference": { + "title": "پەسەندەکان", + "true_black_dark_mode": "دۆخی ڕەش", + "disable_avatar_animation": "وێنە جووڵاوەکان ناچالاک بکە", + "disable_emoji_animation": "ئیمۆجییە جووڵاوەکان ناچالاک بکە", + "using_default_browser": "وێبگەڕی بنەڕەت بەکار بهێنە بۆ کردنەوەی بەستەرەکان", + "open_links_in_mastodon": "بەستەرەکان لەناو ماستۆدۆن بکەوە" + }, + "boring_zone": { + "title": "ناوچە بێنازەکە", + "account_settings": "ڕێکخستنەکانی هەژمار", + "terms": "مەرجەکانی بەکارهێنان", + "privacy": "سیاسەتی تایبەتێتی" + }, + "spicy_zone": { + "title": "ناوچەی گەرم", + "clear": "بیرگە پاک بکەوە", + "signout": "دەربچۆ" + } + }, + "footer": { + "mastodon_description": "ماستۆدۆن پڕۆژەیەکی سەرچاوەکراوەیە. دەتوانیت لە گیتهەب لە کێشەکان ئاگادارمان بکەیتەوە: %s (%s)" + }, + "keyboard": { + "close_settings_window": "ڕێخستنەکان دابخە" + } + }, + "report": { + "title_report": "سکاڵای لێ بکە", + "title": "سکاڵا لە %s بکە", + "step1": "هەنگاوی 1 لە 2", + "step2": "هەنگاوی 2 لە 2", + "content1": "پۆستی تر هەیە بتەوێت سکاڵایان لێ بکەیت؟", + "content2": "هیچ شتێکی هەیە بە چاودێرەکان بیزانن دەربارەی ئەم سکاڵایە؟", + "report_sent_title": "سپاس بۆ سکاڵاکات، پێیدا دەچینەوە.", + "send": "سکاڵاکە بنێرە", + "skip_to_send": "بەبێ لێدوان بینێرە", + "text_placeholder": "ڕوونکردنەوەی زۆرتر بدە", + "reported": "سکاڵای لێ کرا", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "پێشبینینەکە دابخە", + "show_next": "هی دواتر نیشان بدە", + "show_previous": "هی پێشتر نیشان بدە" + } + }, + "account_list": { + "tab_bar_hint": "هەژماری ئێستا: %s. دوو جا دەستی پیا بنێ بۆ کردنەوەی پێڕستی هەژمارەکان.", + "dismiss_account_switcher": "پێڕستی هەژمارەکان دابخە", + "add_account": "هەژمارێک زیاد بکە" + }, + "wizard": { + "new_in_mastodon": "نوێ", + "multiple_account_switch_intro_description": "هەژمارەکەت بگۆڕە بە دەستڕاگرتن لەسەر دوگمەی پرۆفایلەکە.", + "accessibility_hint": "دوو جار دەستی پیا بنێ بۆ داخستنی" + } + } +} \ No newline at end of file From c5874f92226ef0dd209da3f40862a1058a95b33f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:40 +0200 Subject: [PATCH 293/571] New translations ios-infoPlist.json (Sorani (Kurdish)) --- .../StringsConvertor/input/ckb.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ckb.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ckb.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ckb.lproj/ios-infoPlist.json new file mode 100644 index 000000000..ea46a790f --- /dev/null +++ b/Localization/StringsConvertor/input/ckb.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "بەکار دێت بۆ گرتنی وێنەیەک بۆ پۆستەکە", + "NSPhotoLibraryAddUsageDescription": "بەکار دێت بۆ هەڵگرتنی وێنە", + "NewPostShortcutItemTitle": "پۆستی نوێ", + "SearchShortcutItemTitle": "بگەڕێ" +} From 455228e2ac50d5656b0a2f652a4ae64529e0b95c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:41 +0200 Subject: [PATCH 294/571] New translations Localizable.stringsdict (Sorani (Kurdish)) --- .../input/ckb.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict new file mode 100644 index 000000000..9d9adb118 --- /dev/null +++ b/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ئاگاداریی نەبینراو + other + %ld ئاگاداریی نەبینراو + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + سنووری نووسین %#@character_count@ دەرباز دەکات + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld نووسە + other + %ld نووسە + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + سنووری نووسین %#@character_count@ دەمێنێتەوە + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld نووسە + other + %ld نووسە + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@%#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + پۆست + other + پۆست + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld پۆست + other + %ld پۆست + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld بەدڵبوو + other + %ld بەدڵبوو + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld پۆستکردنەوە + other + %ld پۆستکردنەوە + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld وەڵام + other + %ld وەڵام + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld دەنگ + other + %ld دەنگ + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld دەنگدەر + other + %ld دەنگدەر + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld کەس باسی دەکات + other + %ld کەس باسی دەکەن + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld شوێنکەوتن + other + %ld شوێنکەوتن + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld شوێنکەوتوو + other + %ld شوێنکەوتوو + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ساڵی ماوە + other + %ld ساڵی ماوە + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld مانگی ماوە + other + %ld مانگی ماوە + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ڕۆژی ماوە + other + %ld ڕۆژی ماوە + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld کاتژمێری ماوە + other + %ld کاتژمێری ماوە + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld خولەکی ماوە + other + %ld خولەکی ماوە + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld چرکەی ماوە + other + %ld چرکەی ماوە + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ساڵ لەمەوبەر + other + %ld ساڵ لەمەوبەر + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld مانگ لەمەوبەر + other + %ld مانگ لەمەوبەر + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld ڕۆژ لەمەوبەر + other + %ld ڕۆژ لەمەوبەر + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld کاتژمێر لەمەوبەر + other + %ld کاتژمێر لەمەوبەر + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld خولەک لەمەوبەر + other + %ld خولەک لەمەوبەر + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld چرکە لەمەوبەر + other + %ld چرکە لەمەوبەر + + + + From a8bd74a0a1b15665548ed42fc4d28238be70b7cd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:42 +0200 Subject: [PATCH 295/571] New translations Intents.strings (Sorani (Kurdish)) --- .../Intents/input/ckb.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.strings new file mode 100644 index 000000000..1d23253a3 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "پۆستێک بکە"; + +"751xkl" = "نووسین"; + +"CsR7G2" = "پۆستێک بکە"; + +"HZSGTr" = "چی پۆست بکرێت؟"; + +"HdGikU" = "پۆستکردنەکە سەرکەوتوو نەبوو"; + +"KDNTJ4" = "هۆکاری سەرنەکەوتن"; + +"RHxKOw" = "پۆست بە نووسینەوە بکە"; + +"RxSqsb" = "پۆست"; + +"WCIR3D" = "${content} لە ماستۆدۆن پۆست بکە"; + +"ZKJSNu" = "پۆست"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "دەرکەوتن"; + +"Zo4jgJ" = "دەرکەوتنی پۆست"; + +"apSxMG-dYQ5NN" = "${count} بژاردە بۆ 'گشتی' هەن."; + +"apSxMG-ehFLjY" = "${count} بژاردە بۆ 'تەنیا شوێنکەوتووەکان' هەن."; + +"ayoYEb-dYQ5NN" = "${content}، گشتی"; + +"ayoYEb-ehFLjY" = "${content}، تەنیا شوێنکەوتووەکان"; + +"dUyuGg" = "پۆستێک بکە"; + +"dYQ5NN" = "گشتی"; + +"ehFLjY" = "تەنیا شوێنکەوتووەکان"; + +"gfePDu" = "پۆستکردنەکە سەرکەوتوو نەبوو. ${failureReason}"; + +"k7dbKQ" = "پۆستەکە کرا."; + +"oGiqmY-dYQ5NN" = "دڵنیایت لە هەڵبژاردنی 'گشتی'؟"; + +"oGiqmY-ehFLjY" = "دڵنیایت لە هەڵبژاردنی 'تەنیا شوێنکەوتووەکان'؟"; + +"rM6dvp" = "بەستەر"; + +"ryJLwG" = "پۆستەکە کرا. "; From c9b01d92a106ef5c0bb09d600d3affbc09bce76f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:43 +0200 Subject: [PATCH 296/571] New translations Intents.stringsdict (Sorani (Kurdish)) --- .../input/ckb.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.stringsdict new file mode 100644 index 000000000..eadf92582 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ckb.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + %#@count_option@ بژاردە بۆ '${content}' هەن. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld بژاردە + other + %ld بژاردە + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + %#@count_option@ بژاردە بۆ '${visibility}' هەن. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + %ld بژاردە + other + %ld بژاردە + + + + From 0771227a388c538957024eeb2e52d1316c661296 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:44 +0200 Subject: [PATCH 297/571] New translations ios-infoPlist.json (Romanian) --- .../StringsConvertor/input/ro.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ro.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ro.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ro.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/ro.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From 347730550006bdc92259f09633c626ae3d182d22 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:45 +0200 Subject: [PATCH 298/571] New translations ios-infoPlist.json (French) --- .../StringsConvertor/input/fr.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/fr.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/fr.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/fr.lproj/ios-infoPlist.json new file mode 100644 index 000000000..d57776dd6 --- /dev/null +++ b/Localization/StringsConvertor/input/fr.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Utilisé pour prendre une photo lors de la publication d’un statut", + "NSPhotoLibraryAddUsageDescription": "Utilisé pour enregistrer les photos dans la Photothèque", + "NewPostShortcutItemTitle": "Nouvelle Publication", + "SearchShortcutItemTitle": "Rechercher" +} From d7b06bc4eb024aa2dd2a2f722070dde19c123922 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:45 +0200 Subject: [PATCH 299/571] New translations ios-infoPlist.json (Spanish) --- .../StringsConvertor/input/es.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/es.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/es.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/es.lproj/ios-infoPlist.json new file mode 100644 index 000000000..e27375310 --- /dev/null +++ b/Localization/StringsConvertor/input/es.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Se usa para sacar fotos para las publicaciones", + "NSPhotoLibraryAddUsageDescription": "Se usa para guardar fotos en la Galería de Fotos", + "NewPostShortcutItemTitle": "Nueva Publicación", + "SearchShortcutItemTitle": "Buscar" +} From b5d221c50319093366ceef99fea42f6ceb6dc7c2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:46 +0200 Subject: [PATCH 300/571] New translations ios-infoPlist.json (Catalan) --- .../StringsConvertor/input/ca.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ca.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ca.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ca.lproj/ios-infoPlist.json new file mode 100644 index 000000000..805a99ce0 --- /dev/null +++ b/Localization/StringsConvertor/input/ca.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "S'utilitza per fer fotos per les publicacions", + "NSPhotoLibraryAddUsageDescription": "S'utilitza per a desar fotos en la Fototeca", + "NewPostShortcutItemTitle": "Nova Publicació", + "SearchShortcutItemTitle": "Cerca" +} From dee485742dc7aeb66e52d91df8ebf3c686d28aa6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:47 +0200 Subject: [PATCH 301/571] New translations ios-infoPlist.json (English) --- .../StringsConvertor/input/en.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/en.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/en.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/en.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/en.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From d3789a48e9f3031b091ad21944b6bada18bf7e40 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:48 +0200 Subject: [PATCH 302/571] New translations ios-infoPlist.json (Danish) --- .../StringsConvertor/input/da.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/da.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/da.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/da.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/da.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From d4ae362775a932a52c1f520299e9c9b3af33006b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:49 +0200 Subject: [PATCH 303/571] New translations ios-infoPlist.json (German) --- .../StringsConvertor/input/de.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/de.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/de.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/de.lproj/ios-infoPlist.json new file mode 100644 index 000000000..fe8fe1c1a --- /dev/null +++ b/Localization/StringsConvertor/input/de.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Verwendet um Fotos für neue Beiträge aufzunehmen", + "NSPhotoLibraryAddUsageDescription": "Verwendet um Fotos zu speichern", + "NewPostShortcutItemTitle": "Neuer Beitrag", + "SearchShortcutItemTitle": "Suche" +} From 45cb4406afa17ce349898b1e5c58907b74aa2be6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:50 +0200 Subject: [PATCH 304/571] New translations ios-infoPlist.json (Basque) --- .../StringsConvertor/input/eu.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/eu.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/eu.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/eu.lproj/ios-infoPlist.json new file mode 100644 index 000000000..bc0457eab --- /dev/null +++ b/Localization/StringsConvertor/input/eu.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Bidalketetarako argazkiak ateratzeko erabiltzen da", + "NSPhotoLibraryAddUsageDescription": "Argazkiak Argazki-liburutegian gordetzeko erabiltzen da", + "NewPostShortcutItemTitle": "Bidalketa berria", + "SearchShortcutItemTitle": "Bilatu" +} From f5576faed28d2265b77a05e256a6a10600b029ba Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:51 +0200 Subject: [PATCH 305/571] New translations ios-infoPlist.json (Italian) --- .../StringsConvertor/input/it.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/it.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/it.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/it.lproj/ios-infoPlist.json new file mode 100644 index 000000000..bca6817f6 --- /dev/null +++ b/Localization/StringsConvertor/input/it.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Usato per scattare foto per lo stato del post", + "NSPhotoLibraryAddUsageDescription": "Utilizzato per salvare la foto nella galleria immagini", + "NewPostShortcutItemTitle": "Nuovo post", + "SearchShortcutItemTitle": "Cerca" +} From af8220fbb730d2439f4cc1649df10ca360959244 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:52 +0200 Subject: [PATCH 306/571] New translations ios-infoPlist.json (Japanese) --- .../StringsConvertor/input/ja.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ja.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ja.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ja.lproj/ios-infoPlist.json new file mode 100644 index 000000000..bf4148e92 --- /dev/null +++ b/Localization/StringsConvertor/input/ja.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "投稿用の写真撮影に使用します", + "NSPhotoLibraryAddUsageDescription": "写真をフォトライブラリに保存するために使用します", + "NewPostShortcutItemTitle": "新規投稿", + "SearchShortcutItemTitle": "検索" +} From 32a246a50fd3734cd492dfeb330d4b425ab66e77 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:53 +0200 Subject: [PATCH 307/571] New translations ios-infoPlist.json (Korean) --- .../StringsConvertor/input/ko.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ko.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ko.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ko.lproj/ios-infoPlist.json new file mode 100644 index 000000000..1b073eb0f --- /dev/null +++ b/Localization/StringsConvertor/input/ko.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "갤러리에 사진을 저장하기 위해 쓰임", + "NewPostShortcutItemTitle": "새 글", + "SearchShortcutItemTitle": "검색" +} From f04e3394589bec2d29e71a851f36e91c69fb4c8c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:53 +0200 Subject: [PATCH 308/571] New translations ios-infoPlist.json (Portuguese) --- .../StringsConvertor/input/pt.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/pt.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/pt.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/pt.lproj/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/pt.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Search" +} From 5c7549dbc171ea2f2dcbcf6fb02250551c0efa13 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:54 +0200 Subject: [PATCH 309/571] New translations ios-infoPlist.json (Russian) --- .../StringsConvertor/input/ru.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/ru.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ru.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/ru.lproj/ios-infoPlist.json new file mode 100644 index 000000000..3dabe4322 --- /dev/null +++ b/Localization/StringsConvertor/input/ru.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Used to take photo for post status", + "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", + "NewPostShortcutItemTitle": "New Post", + "SearchShortcutItemTitle": "Поиск" +} From 93b9275905b832eae822f3c3b57ad91204281677 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:55 +0200 Subject: [PATCH 310/571] New translations ios-infoPlist.json (Chinese Simplified) --- .../StringsConvertor/input/zh-Hans.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hans.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/zh-Hans.lproj/ios-infoPlist.json new file mode 100644 index 000000000..258a9e535 --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "用于在帖子中附加照片", + "NSPhotoLibraryAddUsageDescription": "用于将照片保存到照片库", + "NewPostShortcutItemTitle": "新帖子", + "SearchShortcutItemTitle": "搜索" +} From e1ac4376022e6e6b3baff43d68f0fa2767ae1b15 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:56 +0200 Subject: [PATCH 311/571] New translations ios-infoPlist.json (Chinese Traditional) --- .../StringsConvertor/input/zh-Hant.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/zh-Hant.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/zh-Hant.lproj/ios-infoPlist.json new file mode 100644 index 000000000..645b3a5e7 --- /dev/null +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "用來拍照發嘟文", + "NSPhotoLibraryAddUsageDescription": "用來儲存照片到圖片庫", + "NewPostShortcutItemTitle": "新增嘟文", + "SearchShortcutItemTitle": "搜尋" +} From 5ab2ef91a623a3bb6d39c10e76f19725a8f9dd83 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:57 +0200 Subject: [PATCH 312/571] New translations Localizable.stringsdict (Indonesian) --- .../input/id.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict new file mode 100644 index 000000000..43d192464 --- /dev/null +++ b/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld karakter + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld karakter + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + postingan + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld postingan + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld favorit + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld suara + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld pemilih + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld pengikut + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld tahun lagi + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld bulan lagi + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld hari lagi + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld jam lagi + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld menit lagi + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld detik lagi + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldt yang lalu + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldb yang lalu + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldh yang lalu + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldj yang lalu + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldm yang lalu + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ldd yang lalu + + + + From 635a98c1b2ef82054802639d878d7d5cd3094142 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:58 +0200 Subject: [PATCH 313/571] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es-AR.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict new file mode 100644 index 000000000..a1edd3972 --- /dev/null +++ b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 notificación sin leer + other + %ld notificaciones sin leer + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + El límite de entrada excede %#@character_count@ caracteres + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caracter + other + %ld caracteres + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + El límite de entrada permite %#@character_count@ caracteres + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 caracter + other + %ld caracteres + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + mensaje + other + mensajes + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mensaje + other + %ld mensajes + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorito + other + %ld favoritos + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 adhesión + other + %ld adhesiones + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 respuesta + other + %ld respuestas + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voto + other + %ld votos + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 votante + other + %ld votantes + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 cuenta hablando + other + %ld cuentas hablando + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + siguiendo a 1 + other + siguiendo a %ld + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seguidor + other + %ld seguidores + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 año restante + other + %ld años restantes + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mes restante + other + %ld meses restantes + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 día restante + other + %ld días restantes + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hora restante + other + %ld horas restantes + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuto restante + other + %ld minutos restantes + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 segundo restante + other + %ld segundos restantes + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 año + other + hace %ld años + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 mes + other + hace %ld meses + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 día + other + hace %ld días + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 hora + other + hace %ld horas + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 minuto + other + hace %ld minutos + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + hace 1 segundo + other + hace %ld segundos + + + + From e3eb9976fe27fb99369bfbda5a211a87c9941100 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:51:59 +0200 Subject: [PATCH 314/571] New translations Intents.stringsdict (Catalan) --- .../input/ca.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ca.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.stringsdict new file mode 100644 index 000000000..be8bec34d --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Hi ha %#@count_option@ coincidents amb ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opció + other + %ld opcions + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Hi ha %#@count_option@ coincidents amb ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opció + other + %ld opcions + + + + From d6a75ca49644821c41f397ddc96741e19b9058e1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:00 +0200 Subject: [PATCH 315/571] New translations Intents.strings (Hindi) --- .../Intents/input/hi.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/hi.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From e0181e7f46af9b472825a6671a929bb2ac3be0f4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:01 +0200 Subject: [PATCH 316/571] New translations Intents.strings (English, United States) --- .../Intents/input/en-US.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 4bef6be9b2edb0e97188ef95620d75531813930b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:02 +0200 Subject: [PATCH 317/571] New translations Intents.strings (Welsh) --- .../Intents/input/cy.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/cy.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 8a8f8f67ab5ee3b9ee520989d225f6eff3edbe5c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:03 +0200 Subject: [PATCH 318/571] New translations Intents.strings (Kurmanji (Kurdish)) --- .../Intents/input/kmr.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.strings new file mode 100644 index 000000000..13a86e0c0 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Di Mastodon de biweşîne"; + +"751xkl" = "Naveroka nivîsê"; + +"CsR7G2" = "Di Mastodon de biweşîne"; + +"HZSGTr" = "Kîjan naverok bila bê şandin?"; + +"HdGikU" = "Şandin têkçû"; + +"KDNTJ4" = "Sedema têkçûnê"; + +"RHxKOw" = "Bi naveroka nivîsî şandiyan bişîne"; + +"RxSqsb" = "Şandî"; + +"WCIR3D" = "${content} biweşîne di Mastodon de"; + +"ZKJSNu" = "Şandî"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Xuyanî"; + +"Zo4jgJ" = "Xuyaniya şandiyê"; + +"apSxMG-dYQ5NN" = "Vebijarkên ${count} hene ku li gorî 'Gelemperî' ne."; + +"apSxMG-ehFLjY" = "Vebijarkên ${count} hene ku li gorî 'Tenê Şopaneran' hene."; + +"ayoYEb-dYQ5NN" = "${content}, Gelemperî"; + +"ayoYEb-ehFLjY" = "${content}, Tenê şopînêr"; + +"dUyuGg" = "Di Mastodon de biweşîne"; + +"dYQ5NN" = "Gelemperî"; + +"ehFLjY" = "Tenê şopîneran"; + +"gfePDu" = "Weşandin bi ser neket. ${failureReason}"; + +"k7dbKQ" = "Şandî bi serkeftî hate şandin."; + +"oGiqmY-dYQ5NN" = "Tenê ji bo pejirandinê, te 'Gelemperî' dixwest?"; + +"oGiqmY-ehFLjY" = "Tenê ji bo pejirandinê, te 'Tenê Şopîner' dixwest?"; + +"rM6dvp" = "Girêdan"; + +"ryJLwG" = "Şandî bi serkeftî hate şandin. "; From 101fe3fb8a5d9faa4e26044083cb61ef55465fa2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:04 +0200 Subject: [PATCH 319/571] New translations Intents.strings (Kabyle) --- .../Intents/input/kab.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/kab.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.strings new file mode 100644 index 000000000..532c822f6 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Asuffeɣ deg Matodon"; + +"751xkl" = "Agbur n uḍris"; + +"CsR7G2" = "Asuffeɣ deg Matodon"; + +"HZSGTr" = "Anwa agbur ara d-yettwasuffɣen?"; + +"HdGikU" = "Yecceḍ usuffeɣ"; + +"KDNTJ4" = "Ssebba n tuccḍa"; + +"RHxKOw" = "Azen tasuffeɣt s ugbur n uḍris"; + +"RxSqsb" = "Tasuffeɣt"; + +"WCIR3D" = "Suffeɣ ${content} deg Mastodon"; + +"ZKJSNu" = "Tasuffeɣt"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Abani"; + +"Zo4jgJ" = "Abani n tsuffeɣt"; + +"apSxMG-dYQ5NN" = "Yella ${count} n textiṛiyin yemṣadan d 'Uzayaz'."; + +"apSxMG-ehFLjY" = "Yella ${count} n textiṛiyin yemṣadan d 'Yineḍfaren kan'."; + +"ayoYEb-dYQ5NN" = "${content}, azayaz"; + +"ayoYEb-ehFLjY" = "${content}, ineḍfaren kan"; + +"dUyuGg" = "Asuffeɣ deg Maṣṭudun"; + +"dYQ5NN" = "Azayez"; + +"ehFLjY" = "Imeḍfaṛen kan"; + +"gfePDu" = "Asuffeɣ yecceḍ. ${failureReason}"; + +"k7dbKQ" = "Tasuffeɣt tettwazen akken iwata."; + +"oGiqmY-dYQ5NN" = "I usentem kan, tebɣiḍ 'Azayaz'?"; + +"oGiqmY-ehFLjY" = "I usentem kan, tebɣiḍ 'Ineḍfaren kan'?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Tasuffeɣt tettwazen akken iwata. "; From 9f8a66504cb52422ec525c0d00520799f07c29b7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:05 +0200 Subject: [PATCH 320/571] New translations Intents.stringsdict (Romanian) --- .../input/ro.lproj/Intents.stringsdict | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ro.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.stringsdict new file mode 100644 index 000000000..f9c25ced3 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.stringsdict @@ -0,0 +1,42 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + few + %ld options + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + few + %ld options + other + %ld options + + + + From 6c3cb74bb2539513ba04e53d4537ff3d2c30e209 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:05 +0200 Subject: [PATCH 321/571] New translations Intents.stringsdict (French) --- .../input/fr.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/fr.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.stringsdict new file mode 100644 index 000000000..53d39da2e --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Il y a %#@count_option@ correspondant à « ${content} ». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Il y a %#@count_option@ correspondant à « ${visibility} ». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From 8b6777485a78d6e4605d9d5705878472f48a7a6a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:06 +0200 Subject: [PATCH 322/571] New translations Intents.stringsdict (Spanish) --- .../input/es.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/es.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/es.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/es.lproj/Intents.stringsdict new file mode 100644 index 000000000..a85d7cee7 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/es.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Hay %#@count_option@ coincidencias con «${content}». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opciones + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Hay %#@count_option@ coincidencias con «${visibility}». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opciones + + + + From bcbabd7c623612761503b308b4d754131be634a7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:07 +0200 Subject: [PATCH 323/571] New translations Intents.stringsdict (Arabic) --- .../input/ar.lproj/Intents.stringsdict | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ar.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.stringsdict new file mode 100644 index 000000000..e44e666ae --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.stringsdict @@ -0,0 +1,54 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + هُناك %#@count_option@ تتطابق مَعَ '${content}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + لا خيار + one + خيار واحد + two + خياران + few + %ld خيارات + many + %ld خيارًا + other + %ld خيار + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + هُناك %#@count_option@ تتطابق مَعَ '${visibility}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + لا خيار + one + خيار واحد + two + خياران + few + %ld خيارات + many + %ld خيارًا + other + %ld خيار + + + + From 958f2bbc76c4356d6647bc75520723c80606692f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:08 +0200 Subject: [PATCH 324/571] New translations Intents.stringsdict (Danish) --- .../input/da.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/da.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/da.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/da.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/da.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From baed60d37898a55e7a29efa152216e39fc08788b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:09 +0200 Subject: [PATCH 325/571] New translations Intents.strings (Spanish, Argentina) --- .../Intents/input/es-AR.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.strings new file mode 100644 index 000000000..55a47e209 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Enviar a Mastodon"; + +"751xkl" = "Contenido del texto"; + +"CsR7G2" = "Enviar"; + +"HZSGTr" = "¿Qué contenido enviar?"; + +"HdGikU" = "Error al enviar mensaje"; + +"KDNTJ4" = "Motivo del error"; + +"RHxKOw" = "Enviar mensaje con contenido de texto"; + +"RxSqsb" = "Mensaje"; + +"WCIR3D" = "Enviar ${content} a Mastodon"; + +"ZKJSNu" = "Mensaje"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilidad"; + +"Zo4jgJ" = "Visibilidad del mensaje"; + +"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con \"Público\"."; + +"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con \"Sólo para seguidores\"."; + +"ayoYEb-dYQ5NN" = "${content}, público"; + +"ayoYEb-ehFLjY" = "${content}, sólo para seguidores"; + +"dUyuGg" = "Enviar"; + +"dYQ5NN" = "Público"; + +"ehFLjY" = "Sólo para seguidores"; + +"gfePDu" = "Error al enviar mensaje. ${failureReason}"; + +"k7dbKQ" = "El mensaje se envió exitosamente."; + +"oGiqmY-dYQ5NN" = "Sólo para confirmar, ¿querías que este mensaje sea PÚBLICO?"; + +"oGiqmY-ehFLjY" = "Sólo para confirmar, ¿querías que este mensaje sea SÓLO PARA SEGUIDORES?"; + +"rM6dvp" = "Dirección web"; + +"ryJLwG" = "El mensaje se envió exitosamente. "; From 94aab46190212e7dd6cc7a6a4c8047115c7f7700 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:10 +0200 Subject: [PATCH 326/571] New translations Intents.stringsdict (German) --- .../input/de.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/de.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/de.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/de.lproj/Intents.stringsdict new file mode 100644 index 000000000..7a689362a --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/de.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Es gibt %#@count_option@ Optionen passend zu ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 Option + other + %ld Optionen + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Es gibt %#@count_option@ Optionen passend zu ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 Option + other + %ld Optionen + + + + From f3fe97a2da49607c3668318225d9857fe0b8de5b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:11 +0200 Subject: [PATCH 327/571] New translations Intents.stringsdict (Basque) --- .../input/eu.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/eu.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.stringsdict new file mode 100644 index 000000000..9246c3475 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + ${content}(e)kin bat datozen %#@count_option@ daude. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + Aukera 1 + other + %ld aukera + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + ${visibility}(e)kin bat datozen %#@count_option@ daude. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + Aukera 1 + other + %ld aukera + + + + From 4ec29ec55a6a709384bb4f333b7929f0f4a940ee Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:12 +0200 Subject: [PATCH 328/571] New translations Intents.stringsdict (Italian) --- .../input/it.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/it.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/it.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/it.lproj/Intents.stringsdict new file mode 100644 index 000000000..75d98a9e1 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/it.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Ci sono %#@count_option@ corrispondenti a «${content}». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opzione + other + %ld opzioni + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Ci sono %#@count_option@ corrispondenti a «${visibility}». + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opzione + other + %ld opzioni + + + + From 878b63ba9277b5284649c1e189c06c892720cb2b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:13 +0200 Subject: [PATCH 329/571] New translations Intents.stringsdict (Japanese) --- .../input/ja.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ja.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.stringsdict new file mode 100644 index 000000000..a14f8b9ff --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + + From 3ce5e238d2a8c9f18592f673621e3c6e22d58caa Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:14 +0200 Subject: [PATCH 330/571] New translations Intents.stringsdict (Korean) --- .../input/ko.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ko.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.stringsdict new file mode 100644 index 000000000..a14f8b9ff --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + + From cdbcf7a7628976d4d8619e48a0570382484efc02 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:15 +0200 Subject: [PATCH 331/571] New translations Intents.stringsdict (Dutch) --- .../input/nl.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/nl.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.stringsdict new file mode 100644 index 000000000..9043720db --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Er zijn %#@count_option@ die overeenkomen met ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 optie + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Er zijn %#@count_option@ die overeenkomen met ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 optie + other + %ld options + + + + From 6040f43b0954a38132b4c539639d5348c4f17c9b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:16 +0200 Subject: [PATCH 332/571] New translations Intents.stringsdict (Portuguese) --- .../input/pt.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/pt.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From cb9278cdc45fa02b45141dd7f39874188914db53 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:16 +0200 Subject: [PATCH 333/571] New translations Intents.stringsdict (Russian) --- .../input/ru.lproj/Intents.stringsdict | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ru.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.stringsdict new file mode 100644 index 000000000..a739f778f --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.stringsdict @@ -0,0 +1,46 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + few + %ld options + many + %ld options + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + few + %ld options + many + %ld options + other + %ld options + + + + From 3b567b0ebe4923ba2f4eb5a3b0cd31047b19cb7b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:17 +0200 Subject: [PATCH 334/571] New translations Intents.stringsdict (Chinese Simplified) --- .../input/zh-Hans.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.stringsdict new file mode 100644 index 000000000..1f5cbaf47 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + 有 %#@count_option@ 匹配 ‘${content}’。 + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld 个选项 + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + 有 %#@count_option@ 匹配 ‘${visibility}’。 + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld 个选项 + + + + From 11969a48939b7a0a1d628eed34f45dbd50eba199 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:18 +0200 Subject: [PATCH 335/571] New translations Intents.stringsdict (Chinese Traditional) --- .../input/zh-Hant.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.stringsdict new file mode 100644 index 000000000..00d1d5343 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + 有 %#@count_option@ 符合「 ${content} 」。 + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld 個選項 + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + 有 %#@count_option@ 符合「 ${visibility} 」。 + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld 個選項 + + + + From 3d6c80ca1af0efab009c570fb63c1298eb5a189e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:19 +0200 Subject: [PATCH 336/571] New translations Intents.strings (Thai) --- .../Intents/input/th.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/th.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/th.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/th.lproj/Intents.strings new file mode 100644 index 000000000..d655b7952 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/th.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "โพสต์ใน Mastodon"; + +"751xkl" = "เนื้อหาข้อความ"; + +"CsR7G2" = "โพสต์ใน Mastodon"; + +"HZSGTr" = "เนื้อหาอะไรที่จะโพสต์?"; + +"HdGikU" = "การโพสต์ล้มเหลว"; + +"KDNTJ4" = "เหตุผลของความล้มเหลว"; + +"RHxKOw" = "ส่งโพสต์พร้อมเนื้อหาข้อความ"; + +"RxSqsb" = "โพสต์"; + +"WCIR3D" = "โพสต์ ${content} ใน Mastodon"; + +"ZKJSNu" = "โพสต์"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "การมองเห็น"; + +"Zo4jgJ" = "การมองเห็นโพสต์"; + +"apSxMG-dYQ5NN" = "มี ${count} ตัวเลือกที่ตรงกันกับ ‘สาธารณะ’"; + +"apSxMG-ehFLjY" = "มี ${count} ตัวเลือกที่ตรงกันกับ ‘ผู้ติดตามเท่านั้น’"; + +"ayoYEb-dYQ5NN" = "${content}, สาธารณะ"; + +"ayoYEb-ehFLjY" = "${content}, ผู้ติดตามเท่านั้น"; + +"dUyuGg" = "โพสต์ใน Mastodon"; + +"dYQ5NN" = "สาธารณะ"; + +"ehFLjY" = "ผู้ติดตามเท่านั้น"; + +"gfePDu" = "การโพสต์ล้มเหลว ${failureReason}"; + +"k7dbKQ" = "ส่งโพสต์สำเร็จ"; + +"oGiqmY-dYQ5NN" = "เพียงเพื่อยืนยัน คุณต้องการ ‘สาธารณะ’?"; + +"oGiqmY-ehFLjY" = "เพียงเพื่อยืนยัน คุณต้องการ ‘ผู้ติดตามเท่านั้น’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "ส่งโพสต์สำเร็จ "; From 108f4833621a9726a3cc6231249c413d999f055f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:20 +0200 Subject: [PATCH 337/571] New translations Intents.strings (Indonesian) --- .../Intents/input/id.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/id.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/id.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/id.lproj/Intents.strings new file mode 100644 index 000000000..aa86f7bde --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/id.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Buat Postingan di Mastodon"; + +"751xkl" = "Teks Isi"; + +"CsR7G2" = "Buat Postingan di Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Gagal memposting"; + +"KDNTJ4" = "Alasan Kegagalan"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Postingan"; + +"WCIR3D" = "Posting ${content} di Mastodon"; + +"ZKJSNu" = "Postingan"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilitas"; + +"Zo4jgJ" = "Visibilitas Postingan"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Publik"; + +"ayoYEb-ehFLjY" = "${content}, Hanya Pengikut"; + +"dUyuGg" = "Buat Postingan di Mastodon"; + +"dYQ5NN" = "Publik"; + +"ehFLjY" = "Hanya Pengikut"; + +"gfePDu" = "Gagal memposting. ${failureReason}"; + +"k7dbKQ" = "Postingan berhasil dikirim."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Postingan berhasil dikirim. "; From 11f67f0648ee2505b35e3bfdacebdfbbecb4d109 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:21 +0200 Subject: [PATCH 338/571] New translations Localizable.stringsdict (Thai) --- .../input/th.lproj/Localizable.stringsdict | 370 ++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict new file mode 100644 index 000000000..4b4d47e84 --- /dev/null +++ b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict @@ -0,0 +1,370 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld การแจ้งเตือนที่ยังไม่ได้อ่าน + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + ขีดจำกัดการป้อนข้อมูลเกิน %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ตัวอักษร + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + ขีดจำกัดการป้อนข้อมูลคงเหลือ %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ตัวอักษร + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + โพสต์ + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld โพสต์ + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld รายการโปรด + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld การดัน + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld การตอบกลับ + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld การลงคะแนน + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ผู้ลงคะแนน + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld คนกำลังพูดคุย + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld กำลังติดตาม + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ผู้ติดตาม + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld ปี + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld เดือน + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld วัน + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld ชั่วโมง + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld นาที + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + เหลืออีก %ld วินาที + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ปีที่แล้ว + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld เดือนที่แล้ว + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld วันที่แล้ว + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld ชั่วโมงที่แล้ว + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld นาทีที่แล้ว + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld วินาทีที่แล้ว + + + + From 2d07bc3df1fc0c41ab90ddf7b9d1aef62212ebcc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:22 +0200 Subject: [PATCH 339/571] New translations Intents.strings (German) --- .../Intents/input/de.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/de.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/de.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/de.lproj/Intents.strings new file mode 100644 index 000000000..fd3fbd40f --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/de.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Auf Mastodon posten"; + +"751xkl" = "Textinhalt"; + +"CsR7G2" = "Auf Mastodon posten"; + +"HZSGTr" = "Welcher Inhalt soll gepostet werden?"; + +"HdGikU" = "Posten fehlgeschlagen"; + +"KDNTJ4" = "Fehlerursache"; + +"RHxKOw" = "Beitrag mit Textinhalt posten"; + +"RxSqsb" = "Beitrag"; + +"WCIR3D" = "Poste ${content} auf Mastodon"; + +"ZKJSNu" = "Beitrag"; + +"ZS1XaK" = "Inhalt: ${content}"; + +"ZbSjzC" = "Sichtbarkeit"; + +"Zo4jgJ" = "Sichtbarkeit des Beitrags"; + +"apSxMG-dYQ5NN" = "Es gibt ${count} Optionen, die zu ''öffentlich\" passen."; + +"apSxMG-ehFLjY" = "Es gibt ${count} Optionen, die zu ''nur für Follower\" passen."; + +"ayoYEb-dYQ5NN" = "${content}, öffentlich"; + +"ayoYEb-ehFLjY" = "${content}, nur für Follower"; + +"dUyuGg" = "Auf Mastodon posten"; + +"dYQ5NN" = "Öffentlich"; + +"ehFLjY" = "Nur für Follower"; + +"gfePDu" = "Posten fehlgeschlagen. ${failureReason}"; + +"k7dbKQ" = "Beitrag wurde erfolgreich gesendet."; + +"oGiqmY-dYQ5NN" = "Nur zur Bestätigung, du wolltest \"Öffentlich\"?"; + +"oGiqmY-ehFLjY" = "Nur zur Bestätigung, du wolltest \"Nur für Follower\"?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Beitrag wurde erfolgreich gesendet. "; From 72068c895fa052330a0a8e51a00b5d8e82b3a4c6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:23 +0200 Subject: [PATCH 340/571] New translations Localizable.stringsdict (Hindi) --- .../input/hi.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict new file mode 100644 index 000000000..80cfd3d62 --- /dev/null +++ b/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From 3b97384228a47ca7799b2a307b1d10e3c6fa54f1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:24 +0200 Subject: [PATCH 341/571] New translations Localizable.stringsdict (English, United States) --- .../input/en-US.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict new file mode 100644 index 000000000..80cfd3d62 --- /dev/null +++ b/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 character + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + post + other + posts + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 post + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 favorite + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reblog + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vote + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 voter + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 follower + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 year left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 day left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hour left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minute left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 second left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1M ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1d ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1h ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1m ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s ago + other + %lds ago + + + + From 1565a8e2908b222ac47df28dcfe0a4940a118d7d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:25 +0200 Subject: [PATCH 342/571] New translations Localizable.stringsdict (Welsh) --- .../input/cy.lproj/Localizable.stringsdict | 630 ++++++++++++++++++ 1 file changed, 630 insertions(+) create mode 100644 Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict new file mode 100644 index 000000000..54805560b --- /dev/null +++ b/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict @@ -0,0 +1,630 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld unread notification + one + 1 unread notification + two + %ld unread notification + few + %ld unread notification + many + %ld unread notification + other + %ld unread notification + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Input limit exceeds %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld characters + one + 1 character + two + %ld characters + few + %ld characters + many + %ld characters + other + %ld nodau + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Input limit remains %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld characters + one + 1 character + two + %ld characters + few + %ld characters + many + %ld characters + other + %ld characters + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + post + one + post + two + postiau + few + posts + many + posts + other + postiau + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld media + one + 1 media + two + %ld media + few + %ld media + many + %ld media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld posts + one + 1 post + two + %ld posts + few + %ld posts + many + %ld posts + other + %ld posts + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld favorites + one + 1 favorite + two + %ld favorites + few + %ld favorites + many + %ld favorites + other + %ld favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld reblogs + one + 1 reblog + two + %ld reblogs + few + %ld reblogs + many + %ld reblogs + other + %ld reblogs + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld replies + one + 1 reply + two + %ld replies + few + %ld replies + many + %ld replies + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld votes + one + 1 vote + two + %ld votes + few + %ld votes + many + %ld votes + other + %ld votes + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld voters + one + 1 voter + two + %ld voters + few + %ld voters + many + %ld voters + other + %ld voters + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld people talking + one + 1 people talking + two + %ld people talking + few + %ld people talking + many + %ld people talking + other + %ld people talking + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld following + one + 1 following + two + %ld following + few + %ld following + many + %ld following + other + %ld following + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld followers + one + 1 follower + two + %ld followers + few + %ld followers + many + %ld followers + other + %ld followers + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld years left + one + 1 year left + two + %ld years left + few + %ld years left + many + %ld years left + other + %ld years left + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld months left + one + 1 months left + two + %ld months left + few + %ld months left + many + %ld months left + other + %ld months left + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld days left + one + 1 day left + two + %ld days left + few + %ld days left + many + %ld days left + other + %ld days left + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld hours left + one + 1 hour left + two + %ld hours left + few + %ld hours left + many + %ld hours left + other + %ld hours left + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld minutes left + one + 1 minute left + two + %ld minutes left + few + %ld minutes left + many + %ld minutes left + other + %ld minutes left + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld seconds left + one + 1 second left + two + %ld seconds left + few + %ld seconds left + many + %ld seconds left + other + %ld seconds left + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ldy ago + one + 1y ago + two + %ldy ago + few + %ldy ago + many + %ldy ago + other + %ldy ago + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ldM ago + one + 1M ago + two + %ldM ago + few + %ldM ago + many + %ldM ago + other + %ldM ago + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ldd ago + one + 1d ago + two + %ldd ago + few + %ldd ago + many + %ldd ago + other + %ldd ago + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ldh ago + one + 1h ago + two + %ldh ago + few + %ldh ago + many + %ldh ago + other + %ldh ago + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ldm ago + one + 1m ago + two + %ldm ago + few + %ldm ago + many + %ldm ago + other + %ldm ago + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %lds ago + one + 1s ago + two + %lds ago + few + %lds ago + many + %lds ago + other + %lds ago + + + + From 813504756809c632988798e7ebb2365a6dc6e09c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:25 +0200 Subject: [PATCH 343/571] New translations Localizable.stringsdict (Kurmanji (Kurdish)) --- .../input/kmr.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict new file mode 100644 index 000000000..7b2e40773 --- /dev/null +++ b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 agahdariya nexwendî + other + %ld agahdariyên nexwendî + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Sînorê têketinê derbas kir %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tîp + other + %ld tîp + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Sînorê têketinê %#@character_count@ maye + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tîp + other + %ld tîp + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + şandî + other + şandî + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 medya + other + %ld medya + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 şandî + other + %ld şandî + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hezkirin + other + %ld hezkirin + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ji nû ve nivîsandin + other + %ld ji nû ve nivîsandin + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 bersiv + other + %ld bersiv + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 deng + other + %ld deng + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 hilbijêr + other + %ld hilbijêr + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mirov diaxive + other + %ld mirov diaxive + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 dişopîne + other + %ld dişopîne + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 şopîner + other + %ld şopîner + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 sal berê + other + %ld sal berê + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 meh berê + other + %ld meh berê + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 roj berê + other + %ld roj berê + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 demjimêr berê + other + %ld demjimêr berê + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 xulek berê + other + %ld xulek berê + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 çirke berê + other + %ld çirke berê + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 sal berê + other + %ld sal berê + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 xulek berê + other + %ld xulek berê + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 roj berê + other + %ld roj berê + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 demjimêr berê + other + %ld demjimêr berê + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 xulek berê + other + %ld xulek berê + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 çirke berê + other + %ld çirke berê + + + + From 831f99cbcc9f72a7c2854bdfb410f4e067790a25 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:26 +0200 Subject: [PATCH 344/571] New translations Intents.strings (Romanian) --- .../Intents/input/ro.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ro.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ro.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From b0c9f54deef1a6c2da12875a60a2b957f4f8fbbe Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:27 +0200 Subject: [PATCH 345/571] New translations Intents.strings (French) --- .../Intents/input/fr.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/fr.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.strings new file mode 100644 index 000000000..2703edd42 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/fr.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Publier sur Mastodon"; + +"751xkl" = "Contenu textuel"; + +"CsR7G2" = "Publier sur Mastodon"; + +"HZSGTr" = "Quel contenu à publier ?"; + +"HdGikU" = "Échec lors de la publication"; + +"KDNTJ4" = "Raison de l’échec"; + +"RHxKOw" = "Envoyer une publication avec du contenu texte"; + +"RxSqsb" = "Publication"; + +"WCIR3D" = "Publier du ${content} sur Mastodon"; + +"ZKJSNu" = "Publication"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilité"; + +"Zo4jgJ" = "Visibilité de la publication"; + +"apSxMG-dYQ5NN" = "Il y a ${count} options correspondant à « Public »."; + +"apSxMG-ehFLjY" = "Il y a ${count} options correspondant à « Abonnés uniquement »."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, abonné·e·s seulement"; + +"dUyuGg" = "Publier sur Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Abonné·e·s seulement"; + +"gfePDu" = "Échec lors de la publication. ${failureReason}"; + +"k7dbKQ" = "Message publié avec succès."; + +"oGiqmY-dYQ5NN" = "Juste pour confirmer, vous vouliez « Public » ?"; + +"oGiqmY-ehFLjY" = "Juste pour confirmer, vous vouliez bien diffuser vers « abonné·e·s uniquement » ?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "La publication a été envoyée avec succès. "; From fcb269e2bbfc4712c1da7417152f2d6afeb41cac Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:28 +0200 Subject: [PATCH 346/571] New translations Intents.strings (Spanish) --- .../Intents/input/es.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/es.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/es.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/es.lproj/Intents.strings new file mode 100644 index 000000000..2b8714356 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/es.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Publicar en Mastodon"; + +"751xkl" = "Contenido de Texto"; + +"CsR7G2" = "Publicar en Mastodon"; + +"HZSGTr" = "¿Qué contenido publicar?"; + +"HdGikU" = "Publicación fallida"; + +"KDNTJ4" = "Motivo del Fallo"; + +"RHxKOw" = "Enviar Publicación con contenido de texto"; + +"RxSqsb" = "Publicación"; + +"WCIR3D" = "Publicar ${content} en Mastodon"; + +"ZKJSNu" = "Publicación"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilidad"; + +"Zo4jgJ" = "Visibilidad del Post"; + +"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con «Público»."; + +"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con «Solo seguidores»."; + +"ayoYEb-dYQ5NN" = "${content}, Público"; + +"ayoYEb-ehFLjY" = "${content}, Solo Seguidores"; + +"dUyuGg" = "Publicar en Mastodon"; + +"dYQ5NN" = "Público"; + +"ehFLjY" = "Solo Seguidores"; + +"gfePDu" = "Publicación fallida. ${failureReason}"; + +"k7dbKQ" = "Publicación enviada con éxito."; + +"oGiqmY-dYQ5NN" = "Solo por confirmar, ¿querías «Público»?"; + +"oGiqmY-ehFLjY" = "Solo por confirmar, ¿querías «Solo seguidores»?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Publicación enviada con éxito. "; From 79fdf50569b5b5457970236aeae9dfcca415e149 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:29 +0200 Subject: [PATCH 347/571] New translations Intents.strings (Arabic) --- .../Intents/input/ar.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ar.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.strings new file mode 100644 index 000000000..49183a431 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ar.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "النَّشرُ عَلَى مَاستودُون"; + +"751xkl" = "محتوى نصي"; + +"CsR7G2" = "انشر على ماستدون"; + +"HZSGTr" = "ما المُحتوى المُراد نشره؟"; + +"HdGikU" = "فَشَلَ النشر"; + +"KDNTJ4" = "سبب الإخفاق"; + +"RHxKOw" = "إرسال مَنشور يَحوي نص"; + +"RxSqsb" = "مَنشور"; + +"WCIR3D" = "نَشرُ ${content} عَلَى مَاستودُون"; + +"ZKJSNu" = "مَنشور"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "مدى الظهور"; + +"Zo4jgJ" = "مدى ظهور المنشور"; + +"apSxMG-dYQ5NN" = "هُناك عدد ${count} خِيار مُطابق لِـ\"عام\"."; + +"apSxMG-ehFLjY" = "هُناك عدد ${count} خِيار مُطابق لِـ\"المُتابِعُون فقط\"."; + +"ayoYEb-dYQ5NN" = "${content}، عام"; + +"ayoYEb-ehFLjY" = "${content}، المُتابِعُون فقط"; + +"dUyuGg" = "النَّشرُ عَلَى مَاستودُون"; + +"dYQ5NN" = "لِلعَامَّة"; + +"ehFLjY" = "لمتابعيك فقط"; + +"gfePDu" = "فَشَلَ النشر، ${failureReason}"; + +"k7dbKQ" = "تمَّ إرسال المنشور بِنجاح."; + +"oGiqmY-dYQ5NN" = "للتأكيد، هل تَريد \"عام\"؟"; + +"oGiqmY-ehFLjY" = "للتأكيد، هل تُريد \"للمُتابِعين فقط\"؟"; + +"rM6dvp" = "عنوان URL"; + +"ryJLwG" = "تم إرسال المنشور بنجاح. "; From 9c88c7a38e8cc1e4b1209972c1e6c8c3834368e7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:30 +0200 Subject: [PATCH 348/571] New translations Intents.strings (Catalan) --- .../Intents/input/ca.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ca.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.strings new file mode 100644 index 000000000..6b92eb263 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ca.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Publica a Mastodon"; + +"751xkl" = "Contingut del Text"; + +"CsR7G2" = "Publicació"; + +"HZSGTr" = "Quin contingut publicar?"; + +"HdGikU" = "Publicació fallida"; + +"KDNTJ4" = "Motiu del error"; + +"RHxKOw" = "Envia Publicació amb contingut de text"; + +"RxSqsb" = "Publicació"; + +"WCIR3D" = "Publica ${content} a Mastodon"; + +"ZKJSNu" = "Publicació"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilitat"; + +"Zo4jgJ" = "Visibilitat de la Publicació"; + +"apSxMG-dYQ5NN" = "Hi ha ${count} opcions que coincideixen amb ‘Públic’."; + +"apSxMG-ehFLjY" = "Hi ha ${count} opcions que coincideixen amb ‘Només Seguidors’."; + +"ayoYEb-dYQ5NN" = "${content}, Públic"; + +"ayoYEb-ehFLjY" = "${content}, Només Seguidors"; + +"dUyuGg" = "Publicació"; + +"dYQ5NN" = "Públic"; + +"ehFLjY" = "Només Seguidors"; + +"gfePDu" = "Publicació fallida. ${failureReason}"; + +"k7dbKQ" = "La publicació s'ha enviat correctament."; + +"oGiqmY-dYQ5NN" = "Només per a confirmar, volies 'Públic'?"; + +"oGiqmY-ehFLjY" = "Només per a confirmar, volies 'Només Seguidors'?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "La publicació s'ha enviat correctament. "; From 6e0b4b5367e2404fdfcf44822e5afea7ed8b70cb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:31 +0200 Subject: [PATCH 349/571] New translations Intents.strings (Danish) --- .../Intents/input/da.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/da.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/da.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/da.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/da.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From cde52c79b6eca9882c9ca3a571eefe6d2f1feed2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:31 +0200 Subject: [PATCH 350/571] New translations Intents.strings (Basque) --- .../Intents/input/eu.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/eu.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.strings new file mode 100644 index 000000000..dbc27c1cf --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/eu.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Argitaratu Mastodonen"; + +"751xkl" = "Testu-edukia"; + +"CsR7G2" = "Argitaratu Mastodonen"; + +"HZSGTr" = "Ze eduki argitaratu?"; + +"HdGikU" = "Argitaratzeak huts egin du"; + +"KDNTJ4" = "Hutsegitearen arrazoia"; + +"RHxKOw" = "Argitaratu bidalketa testu-edukiarekin"; + +"RxSqsb" = "Bidali"; + +"WCIR3D" = "Argitaratu ${content} Mastodonen"; + +"ZKJSNu" = "Bidali"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Ikusgaitasuna"; + +"Zo4jgJ" = "Bidalketaren ikusgaitasuna"; + +"apSxMG-dYQ5NN" = "'Publikoa'-rekin bat datozen ${count} aukera daude."; + +"apSxMG-ehFLjY" = "'Jarraitzaileak soilik'-ekin bat datozen ${count} aukera daude."; + +"ayoYEb-dYQ5NN" = "${content}, publikoa"; + +"ayoYEb-ehFLjY" = "${content}, jarraitzaileak besterik ez"; + +"dUyuGg" = "Argitaratu Mastodonen"; + +"dYQ5NN" = "Publikoa"; + +"ehFLjY" = "Jarraitzaileak soilik"; + +"gfePDu" = "Argitaratzeak huts egin du. ${failureReason}"; + +"k7dbKQ" = "Bidalketa behar bezala bidali da."; + +"oGiqmY-dYQ5NN" = "Berresteagatik, 'Publikoa' izatea nahi duzu?"; + +"oGiqmY-ehFLjY" = "Berresteagatik, 'Jarraitzaileak soilik' izatea nahi duzu?"; + +"rM6dvp" = "URLa"; + +"ryJLwG" = "Bidalketa behar bezala bidali da. "; From 0cae814584f5744fe50d8ec28cd4240d9ee093f2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:32 +0200 Subject: [PATCH 351/571] New translations Intents.strings (Portuguese, Brazilian) --- .../Intents/input/pt-BR.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 5346bf62adafed9aeee365e74b5176fc3193bbda Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:33 +0200 Subject: [PATCH 352/571] New translations Intents.strings (Italian) --- .../Intents/input/it.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/it.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/it.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/it.lproj/Intents.strings new file mode 100644 index 000000000..d26aef14b --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/it.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Pubblica su Mastodon"; + +"751xkl" = "Contenuto testuale"; + +"CsR7G2" = "Pubblica su Mastodon"; + +"HZSGTr" = "Quale contenuto postare?"; + +"HdGikU" = "Pubblicazione non riuscita"; + +"KDNTJ4" = "Motivo del fallimento"; + +"RHxKOw" = "Invia post con contenuto testuale"; + +"RxSqsb" = "Pubblica"; + +"WCIR3D" = "Pubblica ${content} su Mastodon"; + +"ZKJSNu" = "Pubblica"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibilità"; + +"Zo4jgJ" = "Visibilità del post"; + +"apSxMG-dYQ5NN" = "Ci sono ${count} opzioni corrispondenti a 'Pubblico'."; + +"apSxMG-ehFLjY" = "Ci sono ${count} opzioni corrispondenti a ‘Solo Seguaci’."; + +"ayoYEb-dYQ5NN" = "${content}, Pubblico"; + +"ayoYEb-ehFLjY" = "${content}, Solo seguaci"; + +"dUyuGg" = "Pubblica su Mastodon"; + +"dYQ5NN" = "Pubblico"; + +"ehFLjY" = "Solo i seguaci"; + +"gfePDu" = "Pubblicazione fallita. ${failureReason}"; + +"k7dbKQ" = "Post inviato con successo."; + +"oGiqmY-dYQ5NN" = "Solo per confermare, volevi ‘Pubblico’?"; + +"oGiqmY-ehFLjY" = "Solo per confermare, volevi 'Solo seguaci'?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post inviato con successo. "; From c7be08ebb899dfa0943180656dae11dd1a893026 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:34 +0200 Subject: [PATCH 353/571] New translations Intents.strings (Japanese) --- .../Intents/input/ja.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ja.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.strings new file mode 100644 index 000000000..411b35c2e --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ja.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Mastodonに投稿"; + +"751xkl" = "テキストコンテンツ"; + +"CsR7G2" = "Mastodonに投稿"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "投稿に失敗しました"; + +"KDNTJ4" = "失敗の理由"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "投稿"; + +"WCIR3D" = "Mastodonに ${content} を投稿"; + +"ZKJSNu" = "投稿"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "公開範囲"; + +"Zo4jgJ" = "投稿の公開範囲"; + +"apSxMG-dYQ5NN" = "「パブリック」にマッチするオプションが${count}個あります。"; + +"apSxMG-ehFLjY" = "「フォロワーのみ」にマッチするオプションが${count}個あります。"; + +"ayoYEb-dYQ5NN" = "${content}, パブリック"; + +"ayoYEb-ehFLjY" = "${content}, フォロワーのみ"; + +"dUyuGg" = "Mastodonに投稿"; + +"dYQ5NN" = "パブリック"; + +"ehFLjY" = "フォロワーのみ"; + +"gfePDu" = "投稿に失敗しました。 ${failureReason}"; + +"k7dbKQ" = "投稿に成功しました。"; + +"oGiqmY-dYQ5NN" = "「パブリック」で間違いないですか?"; + +"oGiqmY-ehFLjY" = "「フォロワーのみ」で間違いないですか?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "投稿に成功しました。 "; From d833866b16f7a3ed1c25c645e48e0e503450fd2a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:35 +0200 Subject: [PATCH 354/571] New translations Intents.strings (Korean) --- .../Intents/input/ko.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ko.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ko.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 88294333245e103f41c34e1672a5cbc89b62f8ba Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:36 +0200 Subject: [PATCH 355/571] New translations Intents.strings (Dutch) --- .../Intents/input/nl.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/nl.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.strings new file mode 100644 index 000000000..77d237112 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/nl.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Berichten op Mastodon"; + +"751xkl" = "Berichtsinhoud"; + +"CsR7G2" = "Plaatsen"; + +"HZSGTr" = "Welke inhoud om bericht te plaatsen?"; + +"HdGikU" = "Bericht plaatsen mislukt"; + +"KDNTJ4" = "Reden van de Fout"; + +"RHxKOw" = "Bericht verzenden met tekstinhoud"; + +"RxSqsb" = "Bericht"; + +"WCIR3D" = "Plaats ${content} op Mastodon"; + +"ZKJSNu" = "Plaatsen"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Zichbaarheid"; + +"Zo4jgJ" = "Berichtszichtbaarheid"; + +"apSxMG-dYQ5NN" = "Er zijn ${count} opties die overeenkomen met ‘Openbaar’."; + +"apSxMG-ehFLjY" = "Er zijn ${count} opties die overeenkomen met ‘Alleen Volgers’."; + +"ayoYEb-dYQ5NN" = "${content}, Openbaar"; + +"ayoYEb-ehFLjY" = "${content}, Alleen Volgers"; + +"dUyuGg" = "Plaatsen"; + +"dYQ5NN" = "Openbaar"; + +"ehFLjY" = "Alleen Volgers"; + +"gfePDu" = "Plaatsen mislukt. ${failureReason}"; + +"k7dbKQ" = "Het bericht is succesvol verzonden."; + +"oGiqmY-dYQ5NN" = "Wilde u ‘Openbaar’?"; + +"oGiqmY-ehFLjY" = "Wilde u ‘Alleen Volgers’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Het bericht is succesvol verzonden. "; From dc10c200fd162bb85da48feae160ca197c0064ca Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:36 +0200 Subject: [PATCH 356/571] New translations Intents.strings (Portuguese) --- .../Intents/input/pt.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/pt.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/pt.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 6ce30f91b3fae231e6166fb5412321a861a52d33 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:37 +0200 Subject: [PATCH 357/571] New translations Intents.strings (Russian) --- .../Intents/input/ru.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/ru.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/ru.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From cde6d6e36672dfb8d05b32e7beb15d95c2fa40d2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:38 +0200 Subject: [PATCH 358/571] New translations Intents.strings (Chinese Simplified) --- .../input/zh-Hans.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.strings new file mode 100644 index 000000000..ea70942a5 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/zh-Hans.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "在 Mastodon 上发布"; + +"751xkl" = "文本内容"; + +"CsR7G2" = "在 Mastodon 上发布"; + +"HZSGTr" = "要发送的内容是什么?"; + +"HdGikU" = "发送失败"; + +"KDNTJ4" = "失败原因"; + +"RHxKOw" = "发送带有文本内容的帖子"; + +"RxSqsb" = "帖子"; + +"WCIR3D" = "在 Mastodon 上发送 ${content}"; + +"ZKJSNu" = "帖子"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "可见性"; + +"Zo4jgJ" = "帖子可见性"; + +"apSxMG-dYQ5NN" = "有 ${count} 个选项匹配 “公开”"; + +"apSxMG-ehFLjY" = "有 ${count} 个选项匹配 “仅关注者”"; + +"ayoYEb-dYQ5NN" = "${content},公开"; + +"ayoYEb-ehFLjY" = "${content},仅关注者"; + +"dUyuGg" = "在 Mastodon 上发布"; + +"dYQ5NN" = "公开"; + +"ehFLjY" = "仅关注者"; + +"gfePDu" = "发送失败。 ${failureReason}"; + +"k7dbKQ" = "帖子发送成功。"; + +"oGiqmY-dYQ5NN" = "确认要选择 “公开”?"; + +"oGiqmY-ehFLjY" = "确认要选择 “仅关注者”?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "帖子发送成功。"; From a4a5e98d5d43def44b27f31783b8fbb20f481def Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:39 +0200 Subject: [PATCH 359/571] New translations Intents.strings (Chinese Traditional) --- .../input/zh-Hant.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.strings new file mode 100644 index 000000000..a45a5f511 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/zh-Hant.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "於 Mastodon 上發嘟文"; + +"751xkl" = "文字內容"; + +"CsR7G2" = "於 Mastodon 上發嘟文"; + +"HZSGTr" = "要發什麼嘟呢?"; + +"HdGikU" = "嘟文失敗"; + +"KDNTJ4" = "失敗原因"; + +"RHxKOw" = "發送文字內容嘟文"; + +"RxSqsb" = "嘟文"; + +"WCIR3D" = "將 ${content} 於 Mastodon 上發嘟"; + +"ZKJSNu" = "嘟文"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "可見性"; + +"Zo4jgJ" = "嘟文可見性"; + +"apSxMG-dYQ5NN" = "有 ${count} 個選項符合「公開」。"; + +"apSxMG-ehFLjY" = "有 ${count} 個選項符合「僅限跟隨者」。"; + +"ayoYEb-dYQ5NN" = "${content},公開"; + +"ayoYEb-ehFLjY" = "${content},僅限跟隨者"; + +"dUyuGg" = "於 Mastodon 上發嘟文"; + +"dYQ5NN" = "公開"; + +"ehFLjY" = "僅限跟隨者"; + +"gfePDu" = "發嘟失敗。${failureReason}"; + +"k7dbKQ" = "成功發出嘟文。"; + +"oGiqmY-dYQ5NN" = "再確認一次,您想要「公開」?"; + +"oGiqmY-ehFLjY" = "再確認一次,您想要「僅限跟隨者」?"; + +"rM6dvp" = "網址"; + +"ryJLwG" = "成功發出嘟文。 "; From 4f82becdb6b53a8ddf6cec4b33d1cd9401c471b5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:39 +0200 Subject: [PATCH 360/571] New translations Intents.strings (English) --- .../Intents/input/en.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/en.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/en.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/en.lproj/Intents.strings new file mode 100644 index 000000000..6877490ba --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/en.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post on Mastodon"; + +"HZSGTr" = "What content to post?"; + +"HdGikU" = "Posting failed"; + +"KDNTJ4" = "Failure Reason"; + +"RHxKOw" = "Send Post with text content"; + +"RxSqsb" = "Post"; + +"WCIR3D" = "Post ${content} on Mastodon"; + +"ZKJSNu" = "Post"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Visibility"; + +"Zo4jgJ" = "Post Visibility"; + +"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; + +"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; + +"ayoYEb-dYQ5NN" = "${content}, Public"; + +"ayoYEb-ehFLjY" = "${content}, Followers Only"; + +"dUyuGg" = "Post on Mastodon"; + +"dYQ5NN" = "Public"; + +"ehFLjY" = "Followers Only"; + +"gfePDu" = "Posting failed. ${failureReason}"; + +"k7dbKQ" = "Post was sent successfully."; + +"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; + +"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Post was sent successfully. "; From 358f7b83cd0961da43469e2175c97597aa71d0ff Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:40 +0200 Subject: [PATCH 361/571] New translations Intents.strings (Vietnamese) --- .../Intents/input/vi.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/vi.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.strings new file mode 100644 index 000000000..a95337317 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Đăng lên Mastodon"; + +"751xkl" = "Nội dung văn bản"; + +"CsR7G2" = "Đăng lên Mastodon"; + +"HZSGTr" = "Đăng loại nội dung nào?"; + +"HdGikU" = "Không thể đăng"; + +"KDNTJ4" = "Lý do không thể đăng"; + +"RHxKOw" = "Gửi tút với nội dung là chữ"; + +"RxSqsb" = "Tút"; + +"WCIR3D" = "Đăng ${content} lên Mastodon"; + +"ZKJSNu" = "Tút"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Hiển thị"; + +"Zo4jgJ" = "Thay đổi quyền riêng tư"; + +"apSxMG-dYQ5NN" = "Có ${count} lựa chọn khớp với ‘Công khai’."; + +"apSxMG-ehFLjY" = "Có ${count} lựa chọn khớp với ‘Riêng tư’."; + +"ayoYEb-dYQ5NN" = "${content}, Công khai"; + +"ayoYEb-ehFLjY" = "${content}, Riêng tư"; + +"dUyuGg" = "Đăng lên Mastodon"; + +"dYQ5NN" = "Công khai"; + +"ehFLjY" = "Riêng tư"; + +"gfePDu" = "Không thể đăng. ${failureReason}"; + +"k7dbKQ" = "Đã đăng tút thành công."; + +"oGiqmY-dYQ5NN" = "Xin xác nhận, bạn muốn ‘Công khai’?"; + +"oGiqmY-ehFLjY" = "Xin xác nhận, bạn muốn ‘Riêng tư’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Đã đăng tút thành công. "; From 7b725ee841c0c763c43d60e09a157bfb3c2b3c32 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:41 +0200 Subject: [PATCH 362/571] New translations Intents.stringsdict (English) --- .../input/en.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/en.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/en.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/en.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/en.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From 809334a6ef78c0d05abcf91685af7a6770104121 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:42 +0200 Subject: [PATCH 363/571] New translations Intents.stringsdict (Vietnamese) --- .../input/vi.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/vi.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.stringsdict new file mode 100644 index 000000000..a4bb783da --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/vi.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Có %#@count_option@ khớp với ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld lựa chọn + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Có %#@count_option@ khớp với ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld lựa chọn + + + + From 129fda3af5a2222ff15032152dfcd637ff49681c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:43 +0200 Subject: [PATCH 364/571] New translations Intents.stringsdict (Portuguese, Brazilian) --- .../input/pt-BR.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/pt-BR.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From 76bb0e5f3b66246e038336579ec815a6265b0437 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:44 +0200 Subject: [PATCH 365/571] New translations Intents.stringsdict (Indonesian) --- .../input/id.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/id.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/id.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/id.lproj/Intents.stringsdict new file mode 100644 index 000000000..a14f8b9ff --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/id.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld options + + + + From b87e29ab3ebd535e8ccba88ae53ce4965d00f0fa Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:45 +0200 Subject: [PATCH 366/571] New translations Intents.stringsdict (Spanish, Argentina) --- .../input/es-AR.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.stringsdict new file mode 100644 index 000000000..bb3933d8e --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/es-AR.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Hay %#@count_option@ coincidentes con ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opciones + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Hay %#@count_option@ coincidentes con ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 opción + other + %ld opciones + + + + From 69e40d7f72ced4456facd7ad0df82af0b66f8156 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:45 +0200 Subject: [PATCH 367/571] New translations Intents.stringsdict (Thai) --- .../input/th.lproj/Intents.stringsdict | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/th.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/th.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/th.lproj/Intents.stringsdict new file mode 100644 index 000000000..ff99d1912 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/th.lproj/Intents.stringsdict @@ -0,0 +1,34 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + มี %#@count_option@ ที่ตรงกันกับ ‘${content}’ + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld ตัวเลือก + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + มี %#@count_option@ ที่ตรงกันกับ ‘${visibility}’ + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + other + %ld ตัวเลือก + + + + From cc9ba197441886c8c2d0b7879024865bfa574224 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:46 +0200 Subject: [PATCH 368/571] New translations Intents.stringsdict (Hindi) --- .../input/hi.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/hi.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/hi.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From c378ecf3d7ac3ed0d23902f22e1de2a1013e4969 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:47 +0200 Subject: [PATCH 369/571] New translations Intents.stringsdict (English, United States) --- .../input/en-US.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.stringsdict new file mode 100644 index 000000000..18422c772 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/en-US.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 option + other + %ld options + + + + From c53aa8cc71c00af1ceddf9544053c76be49c029f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:48 +0200 Subject: [PATCH 370/571] New translations Intents.stringsdict (Welsh) --- .../input/cy.lproj/Intents.stringsdict | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/cy.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.stringsdict new file mode 100644 index 000000000..f273a551d --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/cy.lproj/Intents.stringsdict @@ -0,0 +1,54 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + %ld options + one + 1 option + two + %ld options + few + %ld options + many + %ld options + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + %ld options + one + 1 option + two + %ld options + few + %ld options + many + %ld options + other + %ld options + + + + From f86e41f8e85a658c33599f277ac769087f5f3ffb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:49 +0200 Subject: [PATCH 371/571] New translations Intents.stringsdict (Kurmanji (Kurdish)) --- .../input/kmr.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.stringsdict new file mode 100644 index 000000000..2f001aaa9 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/kmr.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + %#@count_option@ heye ku bi ‘${content}’ re têkildar e. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 vebijêrk + other + %ld vebijêrk + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + %#@count_option@ heye ku bi ‘${visibility}’ re têkildar e. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 vebijêrk + other + %ld vebijêrk + + + + From f2f9f5b510da7c7e230e01242359cfb778d6421b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:50 +0200 Subject: [PATCH 372/571] New translations Intents.stringsdict (Kabyle) --- .../input/kab.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/kab.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.stringsdict new file mode 100644 index 000000000..a8aeeaaf1 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/kab.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + Llan %#@count_option@ i yemṣaḍan d '${content}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 textiṛt + other + %ld textiṛiyin + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + Llan %#@count_option@ i yemṣaḍa, d '${visibility}'. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 uɣewwaṛ + other + %ld iɣewwaṛen + + + + From 4a603dcf12aaded0459e294850420a31a345e70d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:51 +0200 Subject: [PATCH 373/571] New translations app.json (Finnish) --- .../StringsConvertor/input/fi.lproj/app.json | 668 ++++++++++++++++++ 1 file changed, 668 insertions(+) create mode 100644 Localization/StringsConvertor/input/fi.lproj/app.json diff --git a/Localization/StringsConvertor/input/fi.lproj/app.json b/Localization/StringsConvertor/input/fi.lproj/app.json new file mode 100644 index 000000000..5759392ae --- /dev/null +++ b/Localization/StringsConvertor/input/fi.lproj/app.json @@ -0,0 +1,668 @@ +{ + "common": { + "alerts": { + "common": { + "please_try_again": "Yritä uudelleen.", + "please_try_again_later": "Yritä uudelleen myöhemmin." + }, + "sign_up_failure": { + "title": "Rekisteröinti epäonnistui" + }, + "server_error": { + "title": "Palvelinvirhe" + }, + "vote_failure": { + "title": "Vote Failure", + "poll_ended": "Kysely on päättynyt" + }, + "discard_post_content": { + "title": "Hylkää luonnos", + "message": "Confirm to discard composed post content." + }, + "publish_post_failure": { + "title": "Julkaiseminen epäonnistui", + "message": "Julkaisun julkaiseminen epäonnistui.\nTarkista internet-yhteytesi.", + "attachments_message": { + "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", + "more_than_one_video": "Ei voi liittä yhtä videota enempää." + } + }, + "edit_profile_failure": { + "title": "Virhe profiilin muokkauksessa", + "message": "Profiilia ei voida muoka. Yritä uudelleen." + }, + "sign_out": { + "title": "Kirjaudu ulos", + "message": "Haluatko varmasti kirjautua ulos?", + "confirm": "Kirjaudu ulos" + }, + "block_domain": { + "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", + "block_entire_domain": "Estä verkkotunnus" + }, + "save_photo_failure": { + "title": "Kuvan tallentaminen epäonnistui", + "message": "Please enable the photo library access permission to save the photo." + }, + "delete_post": { + "title": "Haluatko varmasti poistaa tämän julkaisun?", + "message": "Are you sure you want to delete this post?" + }, + "clean_cache": { + "title": "Puhdista välimuisti", + "message": "%s välimuisti tyhjennetty onnistuneesti." + } + }, + "controls": { + "actions": { + "back": "Takaisin", + "next": "Seuraava", + "previous": "Edellinen", + "open": "Avaa", + "add": "Lisää", + "remove": "Poista", + "edit": "Muokkaa", + "save": "Tallenna", + "ok": "OK", + "done": "Valmis", + "confirm": "Vahvista", + "continue": "Jatka", + "compose": "Koosta", + "cancel": "Kumoa", + "discard": "Hylkää", + "try_again": "Yritä uudelleen", + "take_photo": "Ota kuva", + "save_photo": "Tallenna kuva", + "copy_photo": "Kopioi kuva", + "sign_in": "Kirjaudu sisään", + "sign_up": "Rekisteröidy", + "see_more": "Näytä lisää", + "preview": "Esikatselu", + "share": "Jaa", + "share_user": "Jaa %s", + "share_post": "Jaa julkaisu", + "open_in_safari": "Avaa Safarissa", + "open_in_browser": "Open in Browser", + "find_people": "Löydä tilejä seurattavaksi", + "manually_search": "Manually search instead", + "skip": "Ohita", + "reply": "Vastaa", + "report_user": "Ilmianna %s", + "block_domain": "Estä %s", + "unblock_domain": "Poista esto %s", + "settings": "Asetukset", + "delete": "Poista" + }, + "tabs": { + "home": "Koti", + "search": "Haku", + "notification": "Ilmoitus", + "profile": "Profiili" + }, + "keyboard": { + "common": { + "switch_to_tab": "Vaihda %s", + "compose_new_post": "Koosta uusi julkaisu", + "show_favorites": "Näytä suosikit", + "open_settings": "Avaa asetukset" + }, + "timeline": { + "previous_status": "Edellinen julkaisu", + "next_status": "Seuraava julkaisu", + "open_status": "Avaa julkaisu", + "open_author_profile": "Avaa tekijän profiili", + "open_reblogger_profile": "Avaa edelleen jakajan profiili", + "reply_status": "Vastaa julkaisuun", + "toggle_reblog": "Toggle Reblog on Post", + "toggle_favorite": "Toggle Favorite on Post", + "toggle_content_warning": "Vaihda sisältövaroitus", + "preview_image": "Preview Image" + }, + "segmented_control": { + "previous_section": "Previous Section", + "next_section": "Seuraava lohko" + } + }, + "status": { + "user_reblogged": "%s jakoi edelleen", + "user_replied_to": "Vastasi %s:lle", + "show_post": "Näytä julkaisu", + "show_user_profile": "Näytä tili", + "content_warning": "Sisältövaroitus", + "sensitive_content": "Sensitive Content", + "media_content_warning": "Napauta mistä tahansa paljastaaksesi", + "tap_to_reveal": "Tap to reveal", + "poll": { + "vote": "Vote", + "closed": "Suljettu" + }, + "actions": { + "reply": "Vastaa", + "reblog": "Jaa edelleen", + "unreblog": "Peru edelleen jako", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Valikko", + "hide": "Hide", + "show_image": "Show image", + "show_gif": "Show GIF", + "show_video_player": "Show video player", + "tap_then_hold_to_show_menu": "Tap then hold to show menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Linkki", + "hashtag": "Hashtagi", + "email": "Sähköposti", + "emoji": "Emoji" + }, + "visibility": { + "unlisted": "Everyone can see this post but not display in the public timeline.", + "private": "Only their followers can see this post.", + "private_from_me": "Only my followers can see this post.", + "direct": "Only mentioned user can see this post." + } + }, + "friendship": { + "follow": "Seuraa", + "following": "Seurataan", + "request": "Pyydä", + "pending": "Pyydetty", + "block": "Estä", + "block_user": "Estä %s", + "block_domain": "Estä %s", + "unblock": "Poista esto", + "unblock_user": "Unblock %s", + "blocked": "Estetty", + "mute": "Mykistä", + "mute_user": "Mykistä %s", + "unmute": "Poista mykistys", + "unmute_user": "Poista mykistys tililtä %s", + "muted": "Mykistetty", + "edit_info": "Muokkaa profiilia" + }, + "timeline": { + "filtered": "Suodatettu", + "timestamp": { + "now": "Nyt" + }, + "loader": { + "load_missing_posts": "Lataa puuttuvat julkaisut", + "loading_missing_posts": "Ladataan puuttuvia julkaisuja...", + "show_more_replies": "Näytä lisää vastauksia" + }, + "header": { + "no_status_found": "Julkaisua ei löytynyt", + "blocking_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", + "user_blocking_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", + "blocked_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin hän poistaa eston.", + "user_blocked_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin hän poistaa eston.", + "suspended_warning": "Tämä tili on lakkautettu.", + "user_suspended_warning": "Tili %s on lakkautettu." + } + } + } + }, + "scene": { + "welcome": { + "slogan": "Sosiaalinen verkostoituminen\ntakaisin käsissäsi.", + "get_started": "Get Started", + "log_in": "Log In" + }, + "server_picker": { + "title": "Valitse palvelin,\nmikä tahansa palvelin.", + "subtitle": "Pick a server based on your interests, region, or a general purpose one.", + "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", + "button": { + "category": { + "all": "Kaikki", + "all_accessiblity_description": "Kategoria: Kaikki", + "academia": "akateeminen", + "activism": "aktivismi", + "food": "ruoka", + "furry": "turri", + "games": "pelit", + "general": "yleinen", + "journalism": "journalismi", + "lgbt": "hlbt", + "regional": "alueellinen", + "art": "taide", + "music": "musiikki", + "tech": "tekniikka" + }, + "see_less": "Näytä vähemmän", + "see_more": "Näytä lisää" + }, + "label": { + "language": "KIELI", + "users": "TILIÄ", + "category": "KATEGORIA" + }, + "input": { + "placeholder": "Etsi palvelin tai liity omaan...", + "search_servers_or_enter_url": "Search communities or enter URL" + }, + "empty_state": { + "finding_servers": "Etsistään saatavilla olevia palvelimia...", + "bad_network": "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi.", + "no_results": "Ei hakutuloksia" + } + }, + "register": { + "title": "Kerro meille sinusta.", + "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "input": { + "avatar": { + "delete": "Poista" + }, + "username": { + "placeholder": "käyttäjänimi", + "duplicate_prompt": "Tämä käyttäjänimi on varattu." + }, + "display_name": { + "placeholder": "näyttönimi" + }, + "email": { + "placeholder": "sähköposti" + }, + "password": { + "placeholder": "salasana", + "require": "Your password needs at least:", + "character_limit": "8 characters", + "accessibility": { + "checked": "checked", + "unchecked": "unchecked" + }, + "hint": "Salasanassasi on oltava vähintään kahdeksan merkkiä" + }, + "invite": { + "registration_user_invite_request": "Miksi haluat liittyä?" + } + }, + "error": { + "item": { + "username": "Käyttäjänimi", + "email": "Sähköposti", + "password": "Salasana", + "agreement": "Hyväksy", + "locale": "Locale", + "reason": "Syy" + }, + "reason": { + "blocked": "%s sisältää estetyn sähköpostipalveluntarjoajan", + "unreachable": "%s ei näytä olevan olemassa", + "taken": "%s on jo käytössä", + "reserved": "%s is a reserved keyword", + "accepted": "%s täytyy hyväksyä", + "blank": "%s vaaditaan", + "invalid": "%s on virheellinen", + "too_long": "%s on liian pitkä", + "too_short": "%s on liian lyhyt", + "inclusion": "%s ei ole tuettu arvo" + }, + "special": { + "username_invalid": "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja", + "username_too_long": "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)", + "email_invalid": "Tämä ei ole kelvollinen sähköpostiosoite", + "password_too_short": "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)" + } + } + }, + "server_rules": { + "title": "Joitakin perussääntöjä.", + "subtitle": "Nämä säännöt ovat %s -palvelun asettamia.", + "prompt": "Jatkamalla, hyväksyt palvelun %s palveluehdot ja tietosuojakäytönnön.", + "terms_of_service": "käyttöehdot", + "privacy_policy": "tietosuojakäytäntö", + "button": { + "confirm": "Hyväksyn" + } + }, + "confirm_email": { + "title": "Viimeinen asia.", + "subtitle": "Lähetimme juuri sähköpostin osoitteeseen %s, napauta siinä olevaa linkkiä vahvistaaksesi tilisi.", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "button": { + "open_email_app": "Avaa sähköpostisovellus", + "resend": "Resend" + }, + "dont_receive_email": { + "title": "Tarkista sähköpostisi", + "description": "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole.", + "resend_email": "Lähetä sähköposti uudelleen" + }, + "open_email_app": { + "title": "Tarkasta postilaatikkosi.", + "description": "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole.", + "mail": "Sähköposti", + "open_email_client": "Avaa sähköpostisovellus" + } + }, + "home_timeline": { + "title": "Koti", + "navigation_bar_state": { + "offline": "Yhteydetön", + "new_posts": "Uusia julkaisuja", + "published": "Julkaistu!", + "Publishing": "Julkaistaan julkaisua...", + "accessibility": { + "logo_label": "Logo Button", + "logo_hint": "Tap to scroll to top and tap again to previous location" + } + } + }, + "suggestion_account": { + "title": "Löydä tilejä seurattavaksi", + "follow_explain": "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi." + }, + "compose": { + "title": { + "new_post": "Uusi julkaisu", + "new_reply": "Uusi vastaus" + }, + "media_selection": { + "camera": "Ota kuva", + "photo_library": "Kuvakirjasto", + "browse": "Selaa" + }, + "content_input_placeholder": "Kirjoita tai liitä, siitä mitä ajattelet", + "compose_action": "Julkaise", + "replying_to_user": "vastaamassa tilille %s", + "attachment": { + "photo": "kuva", + "video": "video", + "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", + "description_photo": "Kuvaile kuva näkövammaisille...", + "description_video": "Kuvaile video näkövammaisille..." + }, + "poll": { + "duration_time": "Kesto: %s", + "thirty_minutes": "30 minuuttia", + "one_hour": "1 tunti", + "six_hours": "6 tuntia", + "one_day": "1 päivä", + "three_days": "3 päivää", + "seven_days": "7 päivää", + "option_number": "Vaihtoehto %ld" + }, + "content_warning": { + "placeholder": "Kirjoita tarkka varoitus tähän..." + }, + "visibility": { + "public": "Julkinen", + "unlisted": "Listaamaton", + "private": "Vain seuraajat", + "direct": "Vain mainitsemani tilit" + }, + "auto_complete": { + "space_to_add": "Space to add" + }, + "accessibility": { + "append_attachment": "Lisää liite", + "append_poll": "Lisää kysely", + "remove_poll": "Poista kysely", + "custom_emoji_picker": "Mukautettu emojivalitsin", + "enable_content_warning": "Ota sisältövaroitus käyttöön", + "disable_content_warning": "Poista sisältövaroitus käytöstä", + "post_visibility_menu": "Julkaisun näkyvyysvalikko" + }, + "keyboard": { + "discard_post": "Hylkää julkaisu", + "publish_post": "Julkaise julkaisu", + "toggle_poll": "Vaihda kysely", + "toggle_content_warning": "Vaihda sisältövaroitus", + "append_attachment_entry": "Lisää liite - %s", + "select_visibility_entry": "Valitse näkyvyys - %s" + } + }, + "profile": { + "dashboard": { + "posts": "julkaisut", + "following": "seurataan", + "followers": "seuraajat" + }, + "fields": { + "add_row": "Lisää rivi", + "placeholder": { + "label": "Nimi", + "content": "Sisältö" + } + }, + "segmented_control": { + "posts": "Julkaisut", + "replies": "Vastaukset", + "posts_and_replies": "Posts and Replies", + "media": "Media", + "about": "About" + }, + "relationship_action_alert": { + "confirm_mute_user": { + "title": "Mute Account", + "message": "Confirm to mute %s" + }, + "confirm_unmute_user": { + "title": "Poista tilin mykistys", + "message": "Vahvista, että haluat poistaa mykistyksen tililtä %s" + }, + "confirm_block_user": { + "title": "Block Account", + "message": "Confirm to block %s" + }, + "confirm_unblock_user": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + }, + "accessibility": { + "show_avatar_image": "Show avatar image", + "edit_avatar_image": "Edit avatar image", + "show_banner_image": "Show banner image", + "double_tap_to_open_the_list": "Double tap to open the list" + } + }, + "follower": { + "footer": "Seuraajia muilta palvelimilta ei näytetä." + }, + "following": { + "footer": "Seurauksia muilta palvelimilta ei näytetä." + }, + "search": { + "title": "Haku", + "search_bar": { + "placeholder": "Haku", + "cancel": "Kumoa" + }, + "recommend": { + "button_text": "Katso kaikki", + "hash_tag": { + "title": "Trendaavat Mastodonissa", + "description": "Hashtagit, jotka saavat melkoisesti huomiota", + "people_talking": "%s ihmistä puhuu" + }, + "accounts": { + "title": "Saatat pitää näistä tileistä", + "description": "Haluta ehkä seurata näitä tilejä", + "follow": "Seuraa" + } + }, + "searching": { + "segment": { + "all": "Kaikki", + "people": "Tilit", + "hashtags": "Hashtagit", + "posts": "Julkaisut" + }, + "empty_state": { + "no_results": "Ei hakutuloksia" + }, + "recent_search": "Viimeaikaiset", + "clear": "Tyhjennä" + } + }, + "discovery": { + "tabs": { + "posts": "Posts", + "hashtags": "Hashtags", + "news": "News", + "community": "Community", + "for_you": "For You" + }, + "intro": "These are the posts gaining traction in your corner of Mastodon." + }, + "favorite": { + "title": "Omat suosikit" + }, + "notification": { + "title": { + "Everything": "Kaikki", + "Mentions": "Maininnat" + }, + "notification_description": { + "followed_you": "followed you", + "favorited_your_post": "favorited your post", + "reblogged_your_post": "reblogged your post", + "mentioned_you": "mentioned you", + "request_to_follow_you": "request to follow you", + "poll_has_ended": "poll has ended" + }, + "keyobard": { + "show_everything": "Näytä kaikki", + "show_mentions": "Näytä maininnat" + } + }, + "thread": { + "back_title": "Julkaisu", + "title": "Julkaisu tililtä %s" + }, + "settings": { + "title": "Asetukset", + "section": { + "appearance": { + "title": "Ulkoasu", + "automatic": "Seuraa järjestelmää", + "light": "Vaalea", + "dark": "Tumma" + }, + "look_and_feel": { + "title": "Look and Feel", + "use_system": "Use System", + "really_dark": "Really Dark", + "sorta_dark": "Sorta Dark", + "light": "Light" + }, + "notifications": { + "title": "Ilmoitukset", + "favorites": "Favorites my post", + "follows": "Seuraa minua", + "boosts": "Omien julkaisujen edelleen jaot", + "mentions": "Mainitsee minut", + "trigger": { + "anyone": "kuka tahansa", + "follower": "seuraaja", + "follow": "kuka tahansa, jota seuraan", + "noone": "ei kukaan", + "title": "Ilmoita minulle, kun" + } + }, + "preference": { + "title": "Lisäasetukset", + "true_black_dark_mode": "Todellinen mustan tumma tila", + "disable_avatar_animation": "Poista käytöstä animoidut avatarit", + "disable_emoji_animation": "Poista käytöstä animoidut emojit", + "using_default_browser": "Käytä oletusselainta linkkien avaamiseen", + "open_links_in_mastodon": "Open links in Mastodon" + }, + "boring_zone": { + "title": "Tylsä alue", + "account_settings": "Tiliasetukset", + "terms": "Palveluehdot", + "privacy": "Tietosuojakäytäntö" + }, + "spicy_zone": { + "title": "Varovainen alue", + "clear": "Tyhjennä median välimuisti", + "signout": "Kirjaudu ulos" + } + }, + "footer": { + "mastodon_description": "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %s (%s)" + }, + "keyboard": { + "close_settings_window": "Sulje asetukset" + } + }, + "report": { + "title_report": "Report", + "title": "Ilmianna %s", + "step1": "Vaihe 1/2", + "step2": "Vaihe 2/2", + "content1": "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?", + "content2": "Onko valvojien syytä tietää tästä ilmiannosta?", + "report_sent_title": "Thanks for reporting, we’ll look into this.", + "send": "Lähetä ilmianto", + "skip_to_send": "Lähetä ilman kommentteja", + "text_placeholder": "Kirjoita tai liitä lisäkommentteja", + "reported": "REPORTED", + "step_one": { + "step_1_of_4": "Step 1 of 4", + "whats_wrong_with_this_post": "What's wrong with this post?", + "whats_wrong_with_this_account": "What's wrong with this account?", + "whats_wrong_with_this_username": "What's wrong with %s?", + "select_the_best_match": "Select the best match", + "i_dont_like_it": "I don’t like it", + "it_is_not_something_you_want_to_see": "It is not something you want to see", + "its_spam": "It’s spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", + "it_violates_server_rules": "It violates server rules", + "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", + "its_something_else": "It’s something else", + "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + }, + "step_two": { + "step_2_of_4": "Step 2 of 4", + "which_rules_are_being_violated": "Which rules are being violated?", + "select_all_that_apply": "Select all that apply", + "i_just_don’t_like_it": "I just don’t like it" + }, + "step_three": { + "step_3_of_4": "Step 3 of 4", + "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", + "select_all_that_apply": "Select all that apply" + }, + "step_four": { + "step_4_of_4": "Step 4 of 4", + "is_there_anything_else_we_should_know": "Is there anything else we should know?" + }, + "step_final": { + "dont_want_to_see_this": "Don’t want to see this?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "unfollow": "Unfollow", + "unfollowed": "Unfollowed", + "unfollow_user": "Unfollow %s", + "mute_user": "Mute %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "block_user": "Block %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", + "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + } + }, + "preview": { + "keyboard": { + "close_preview": "Sulje esikatselu", + "show_next": "Näytä seuraava", + "show_previous": "Näytä edellinen" + } + }, + "account_list": { + "tab_bar_hint": "Nykyinen valittu profiili: %s. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan", + "dismiss_account_switcher": "Sulje tilin vaihtaja", + "add_account": "Lisää tili" + }, + "wizard": { + "new_in_mastodon": "Uutta Mastodonissa", + "multiple_account_switch_intro_description": "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna.", + "accessibility_hint": "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla" + } + } +} \ No newline at end of file From bd3d643999987d2e191c150757f8917aa05fba2f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:52 +0200 Subject: [PATCH 374/571] New translations ios-infoPlist.json (Finnish) --- .../StringsConvertor/input/fi.lproj/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/fi.lproj/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/fi.lproj/ios-infoPlist.json b/Localization/StringsConvertor/input/fi.lproj/ios-infoPlist.json new file mode 100644 index 000000000..eb389f3b3 --- /dev/null +++ b/Localization/StringsConvertor/input/fi.lproj/ios-infoPlist.json @@ -0,0 +1,6 @@ +{ + "NSCameraUsageDescription": "Käytetään kuvan ottamiseen julkaisua varten", + "NSPhotoLibraryAddUsageDescription": "Käytetään kuvan tallentamiseen kuvakirjastoon", + "NewPostShortcutItemTitle": "Uusi julkaisu", + "SearchShortcutItemTitle": "Haku" +} From a0db32b0b7aa4b638c111b7ffb4c83f980d3fc84 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:53 +0200 Subject: [PATCH 375/571] New translations Localizable.stringsdict (Finnish) --- .../input/fi.lproj/Localizable.stringsdict | 422 ++++++++++++++++++ 1 file changed, 422 insertions(+) create mode 100644 Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict new file mode 100644 index 000000000..7fa6b5a64 --- /dev/null +++ b/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict @@ -0,0 +1,422 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 lukematon ilmoitus + other + %ld lukematonta ilmoitusta + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Syöterajoitus ylittyy %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 merkki + other + %ld merkkiä + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Syöterajoitus ylittyy %#@character_count@ päästä + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 merkki + other + %ld merkkiä + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + julkaisu + other + julkaisut + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 julkaisu + other + %ld julkaisua + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 suosikki + other + %ld suosikkia + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 edelleen jako + other + %ld edelleen jakoa + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ääni + other + %ld ääntä + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vastaaja + other + %ld vastaajaa + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ihminen puhuu + other + %ld ihmistä puhuu + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seurataan + other + %ld seurataan + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seuraaja + other + %ld seuraajaa + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vuosi jäljellä + other + %ld vuotta jäljellä + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 kuukausi jäljellä + other + %ld kuukautta jäljellä + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 päivä jäljellä + other + %ld päivää jäljellä + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tunti jäljellä + other + %ld tuntia jäljellä + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuutti jäljellä + other + %ld minuuttia jäljellä + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 sekuntti + other + %ld sekunttia jäljellä + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1v sitten + other + %ldv sitten + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1kk sitten + other + %ldkk sitten + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1pv sitten + other + %ldpv sitten + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1t sitten + other + %ldt sitten + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1min sitten + other + %ldmin sitten + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s sitten + other + %lds sitten + + + + From b3ed1e7be32cd3edd90b4ee1ca292884bea3c2ad Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:54 +0200 Subject: [PATCH 376/571] New translations Intents.strings (Finnish) --- .../Intents/input/fi.lproj/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/fi.lproj/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.strings b/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.strings new file mode 100644 index 000000000..1be213d45 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Julkaise Mastodonissa"; + +"751xkl" = "Tekstisisältö"; + +"CsR7G2" = "Julkaise Mastodonissa"; + +"HZSGTr" = "Mitä sisältöä julkaista?"; + +"HdGikU" = "Julkaiseminen epäonnistui"; + +"KDNTJ4" = "Epäonnistumisen syy"; + +"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; + +"RxSqsb" = "Julkaisu"; + +"WCIR3D" = "Julkaise ${content} Mastodonissa"; + +"ZKJSNu" = "Julkaisu"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Näkyvyys"; + +"Zo4jgJ" = "Julkaisun näkyvyys"; + +"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; + +"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; + +"ayoYEb-dYQ5NN" = "${content}, julkinen"; + +"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; + +"dUyuGg" = "Julkaise Mastodonissa"; + +"dYQ5NN" = "Julkinen"; + +"ehFLjY" = "Vain seuraajat"; + +"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; + +"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; + +"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; + +"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; From 9b3bb4ae55d98e9c46a284774a9f42a4007f84e5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 05:52:55 +0200 Subject: [PATCH 377/571] New translations Intents.stringsdict (Finnish) --- .../input/fi.lproj/Intents.stringsdict | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/fi.lproj/Intents.stringsdict diff --git a/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.stringsdict new file mode 100644 index 000000000..7825b778e --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/fi.lproj/Intents.stringsdict @@ -0,0 +1,38 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + On %#@count_option@, joka/jotka vastaavat sisältöön ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 vaihtoehto + other + %ld vaihtoehtoa + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + On vaihtoehtoa %#@count_option@, joka/jotka vastaavat näkyvyyteen ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + one + 1 vaihtoehto + other + %ld vaihtoehtoa + + + + From 89d68f45fefc419a9dc72924ce267316926e363c Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 12:09:35 +0800 Subject: [PATCH 378/571] chore: remove old input strings --- .../input/ar_SA/Localizable.stringsdict | 630 ----------------- .../StringsConvertor/input/ar_SA/app.json | 666 ------------------ .../input/ar_SA/ios-infoPlist.json | 6 - .../input/ca_ES/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/ca_ES/app.json | 666 ------------------ .../input/ca_ES/ios-infoPlist.json | 6 - .../input/ckb_IR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/ckb_IR/app.json | 666 ------------------ .../input/ckb_IR/ios-infoPlist.json | 6 - .../input/cy_GB/Localizable.stringsdict | 630 ----------------- .../StringsConvertor/input/cy_GB/app.json | 666 ------------------ .../input/cy_GB/ios-infoPlist.json | 6 - .../input/da_DK/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/da_DK/app.json | 666 ------------------ .../input/da_DK/ios-infoPlist.json | 6 - .../input/de_DE/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/de_DE/app.json | 666 ------------------ .../input/de_DE/ios-infoPlist.json | 6 - .../input/en_US/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/en_US/app.json | 666 ------------------ .../input/en_US/ios-infoPlist.json | 6 - .../input/es_AR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/es_AR/app.json | 666 ------------------ .../input/es_AR/ios-infoPlist.json | 6 - .../input/es_ES/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/es_ES/app.json | 666 ------------------ .../input/es_ES/ios-infoPlist.json | 6 - .../input/eu_ES/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/eu_ES/app.json | 666 ------------------ .../input/eu_ES/ios-infoPlist.json | 6 - .../input/fi_FI/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/fi_FI/app.json | 666 ------------------ .../input/fi_FI/ios-infoPlist.json | 6 - .../input/fr_FR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/fr_FR/app.json | 666 ------------------ .../input/fr_FR/ios-infoPlist.json | 6 - .../input/gd_GB/Localizable.stringsdict | 526 -------------- .../StringsConvertor/input/gd_GB/app.json | 666 ------------------ .../input/gd_GB/ios-infoPlist.json | 6 - .../input/gl_ES/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/gl_ES/app.json | 666 ------------------ .../input/gl_ES/ios-infoPlist.json | 6 - .../input/hi_IN/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/hi_IN/app.json | 666 ------------------ .../input/hi_IN/ios-infoPlist.json | 6 - .../input/id_ID/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/id_ID/app.json | 666 ------------------ .../input/id_ID/ios-infoPlist.json | 6 - .../input/it_IT/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/it_IT/app.json | 666 ------------------ .../input/it_IT/ios-infoPlist.json | 6 - .../input/ja_JP/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/ja_JP/app.json | 666 ------------------ .../input/ja_JP/ios-infoPlist.json | 6 - .../input/kab_KAB/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/kab_KAB/app.json | 666 ------------------ .../input/kab_KAB/ios-infoPlist.json | 6 - .../input/kmr_TR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/kmr_TR/app.json | 666 ------------------ .../input/kmr_TR/ios-infoPlist.json | 6 - .../input/ko_KR/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/ko_KR/app.json | 666 ------------------ .../input/ko_KR/ios-infoPlist.json | 6 - .../input/nl_NL/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/nl_NL/app.json | 666 ------------------ .../input/nl_NL/ios-infoPlist.json | 6 - .../input/pt_BR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/pt_BR/app.json | 666 ------------------ .../input/pt_BR/ios-infoPlist.json | 6 - .../input/pt_PT/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/pt_PT/app.json | 666 ------------------ .../input/pt_PT/ios-infoPlist.json | 6 - .../input/ro_RO/Localizable.stringsdict | 474 ------------- .../StringsConvertor/input/ro_RO/app.json | 666 ------------------ .../input/ro_RO/ios-infoPlist.json | 6 - .../input/ru_RU/Localizable.stringsdict | 526 -------------- .../StringsConvertor/input/ru_RU/app.json | 666 ------------------ .../input/ru_RU/ios-infoPlist.json | 6 - .../input/sv_FI/Localizable.stringsdict | 406 ----------- .../StringsConvertor/input/sv_FI/app.json | 619 ---------------- .../input/sv_FI/ios-infoPlist.json | 6 - .../input/sv_SE/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/sv_SE/app.json | 666 ------------------ .../input/sv_SE/ios-infoPlist.json | 6 - .../input/th_TH/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/th_TH/app.json | 666 ------------------ .../input/th_TH/ios-infoPlist.json | 6 - .../input/tr_TR/Localizable.stringsdict | 422 ----------- .../StringsConvertor/input/tr_TR/app.json | 666 ------------------ .../input/tr_TR/ios-infoPlist.json | 6 - .../input/vi_VN/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/vi_VN/app.json | 666 ------------------ .../input/vi_VN/ios-infoPlist.json | 6 - .../input/zh_CN/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/zh_CN/app.json | 666 ------------------ .../input/zh_CN/ios-infoPlist.json | 6 - .../input/zh_TW/Localizable.stringsdict | 370 ---------- .../StringsConvertor/input/zh_TW/app.json | 666 ------------------ .../input/zh_TW/ios-infoPlist.json | 6 - 99 files changed, 36351 deletions(-) delete mode 100644 Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ar_SA/app.json delete mode 100644 Localization/StringsConvertor/input/ar_SA/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ca_ES/app.json delete mode 100644 Localization/StringsConvertor/input/ca_ES/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ckb_IR/app.json delete mode 100644 Localization/StringsConvertor/input/ckb_IR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/cy_GB/app.json delete mode 100644 Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/da_DK/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/da_DK/app.json delete mode 100644 Localization/StringsConvertor/input/da_DK/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/de_DE/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/de_DE/app.json delete mode 100644 Localization/StringsConvertor/input/de_DE/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/en_US/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/en_US/app.json delete mode 100644 Localization/StringsConvertor/input/en_US/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/es_AR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/es_AR/app.json delete mode 100644 Localization/StringsConvertor/input/es_AR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/es_ES/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/es_ES/app.json delete mode 100644 Localization/StringsConvertor/input/es_ES/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/eu_ES/app.json delete mode 100644 Localization/StringsConvertor/input/eu_ES/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/fi_FI/app.json delete mode 100644 Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/fr_FR/app.json delete mode 100644 Localization/StringsConvertor/input/fr_FR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/gd_GB/app.json delete mode 100644 Localization/StringsConvertor/input/gd_GB/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/gl_ES/app.json delete mode 100644 Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/hi_IN/app.json delete mode 100644 Localization/StringsConvertor/input/hi_IN/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/id_ID/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/id_ID/app.json delete mode 100644 Localization/StringsConvertor/input/id_ID/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/it_IT/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/it_IT/app.json delete mode 100644 Localization/StringsConvertor/input/it_IT/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ja_JP/app.json delete mode 100644 Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/kab_KAB/app.json delete mode 100644 Localization/StringsConvertor/input/kab_KAB/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/kmr_TR/app.json delete mode 100644 Localization/StringsConvertor/input/kmr_TR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ko_KR/app.json delete mode 100644 Localization/StringsConvertor/input/ko_KR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/nl_NL/app.json delete mode 100644 Localization/StringsConvertor/input/nl_NL/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/pt_BR/app.json delete mode 100644 Localization/StringsConvertor/input/pt_BR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/pt_PT/app.json delete mode 100644 Localization/StringsConvertor/input/pt_PT/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ro_RO/app.json delete mode 100644 Localization/StringsConvertor/input/ro_RO/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/ru_RU/app.json delete mode 100644 Localization/StringsConvertor/input/ru_RU/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/sv_FI/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/sv_FI/app.json delete mode 100644 Localization/StringsConvertor/input/sv_FI/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/sv_SE/app.json delete mode 100644 Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/th_TH/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/th_TH/app.json delete mode 100644 Localization/StringsConvertor/input/th_TH/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/tr_TR/app.json delete mode 100644 Localization/StringsConvertor/input/tr_TR/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/vi_VN/app.json delete mode 100644 Localization/StringsConvertor/input/vi_VN/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/zh_CN/app.json delete mode 100644 Localization/StringsConvertor/input/zh_CN/ios-infoPlist.json delete mode 100644 Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict delete mode 100644 Localization/StringsConvertor/input/zh_TW/app.json delete mode 100644 Localization/StringsConvertor/input/zh_TW/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict deleted file mode 100644 index 61ba17c28..000000000 --- a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict +++ /dev/null @@ -1,630 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا إشعار غير مقروء - one - إشعار واحِد غير مقروء - two - إشعاران غير مقروءان - few - %ld إشعارات غير مقروءة - many - %ld إشعارًا غيرَ مقروء - other - %ld إشعار غير مقروء - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - تمَّ تجاوز حدّ الإدخال %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا حرف - one - حرفٌ واحِد - two - حرفان اثنان - few - %ld حُرُوف - many - %ld حرفًا - other - %ld حَرف - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - يتبقَّى على حدّ الإدخال %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا حرف - one - حرفٌ واحِد - two - حرفان اثنان - few - %ld حُرُوف - many - %ld حرفًا - other - %ld حَرف - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا منشور - one - منشور - two - منشوران - few - منشورات - many - منشورًا - other - منشور - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld media - one - 1 media - two - %ld media - few - %ld media - many - %ld media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا مَنشورات - one - منشورٌ واحِد - two - منشورانِ اثنان - few - %ld منشورات - many - %ld منشورًا - other - %ld منشور - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا إعجاب - one - إعجابٌ واحِد - two - إعجابانِ اثنان - few - %ld إعجابات - many - %ld إعجابًا - other - %ld إعجاب - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا إعاد تدوين - one - إعادةُ تدوينٍ واحِدة - two - إعادتا تدوين - few - %ld إعاداتِ تدوين - many - %ld إعادةٍ للتدوين - other - %ld إعادة تدوين - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا رَدّ - one - رَدٌّ واحِد - two - رَدَّانِ اِثنان - few - %ld رُدُود - many - %ld رَدًّا - other - %ld رَدّ - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا صوت - one - صوتٌ واحِد - two - صوتانِ اثنان - few - %ld أصوات - many - %ld صوتًا - other - %ld صوت - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا مُصوِّتون - one - مُصوِّتٌ واحِد - two - مُصوِّتانِ اثنان - few - %ld مُصوِّتين - many - %ld مُصوِّتًا - other - %ld مُصوِّت - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا أحَدَ يتحدَّث - one - شخصٌ واحدٌ يتحدَّث - two - شخصانِ اثنان يتحدَّثا - few - %ld أشخاصٍ يتحدَّثون - many - %ld شخصًا يتحدَّثون - other - %ld شخصٍ يتحدَّثون - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا مُتابَع - one - مُتابَعٌ واحد - two - مُتابَعانِ - few - %ld مُتابَعين - many - %ld مُتابَعًا - other - %ld مُتابَع - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - لا مُتابِع - one - مُتابِعٌ واحد - two - مُتابِعانِ اثنان - few - %ld مُتابِعين - many - %ld مُتابِعًا - other - %ld مُتابِع - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لَحظة - one - تتبقى سنة - two - تتبقى سنتين - few - تتبقى %ld سنوات - many - تتبقى %ld سنةً - other - تتبقى %ld سنة - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لَحظة - one - يتبقى شهر - two - يتبقى شهرين - few - يتبقى %ld أشهر - many - يتبقى %ld شهرًا - other - يتبقى %ld شهر - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لحظة - one - يتبقى يوم - two - يتبقى يومين - few - يتبقى %ld أيام - many - يتبقى %ld يومًا - other - يتبقى %ld يوم - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لَحظة - one - تتبقى ساعة - two - تتبقى ساعتين - few - تتبقى %ld ساعات - many - تتبقى %ld ساعةً - other - تتبقى %ld ساعة - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لَحظة - one - تتبقى دقيقة - two - تتبقى دقيقتين - few - تتبقى %ld دقائق - many - تتبقى %ld دقيقةً - other - تتبقى %ld دقيقة - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - تتبقى لَحظة - one - تتبقى ثانية واحِدة - two - تتبقى ثانيتان - few - تتبقى %ld ثوان - many - تتبقى %ld ثانية - other - تتبقى %ld ثانية - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldع - two - مُنذُ %ldع - few - مُنذُ %ldع - many - مُنذُ %ldع - other - مُنذُ %ldع - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldش - two - مُنذُ %ldش - few - مُنذُ %ldش - many - مُنذُ %ldش - other - مُنذُ %ldش - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldي - two - مُنذُ %ldي - few - مُنذُ %ldي - many - مُنذُ %ldي - other - مُنذُ %ldي - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldس - two - مُنذُ %ldس - few - مُنذُ %ldس - many - مُنذُ %ldس - other - مُنذُ %ldس - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldد - two - مُنذُ %ldد - few - مُنذُ %ldد - many - مُنذُ %ldد - other - مُنذُ %ldد - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - مُنذُ لَحظة - one - مُنذُ %ldث - two - مُنذُ %ldث - few - مُنذُ %ldث - many - مُنذُ %ldث - other - مُنذُ %ldث - - - - diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json deleted file mode 100644 index 2fc7fbef2..000000000 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "يُرجى المُحاولة مرة أُخرى.", - "please_try_again_later": "يُرجى المُحاولة مرة أُخرى لاحقًا." - }, - "sign_up_failure": { - "title": "إخفاق في التسجيل" - }, - "server_error": { - "title": "خطأ في الخادم" - }, - "vote_failure": { - "title": "إخفاق في التصويت", - "poll_ended": "انتهى استطلاع الرأي" - }, - "discard_post_content": { - "title": "التخلص من المسودة", - "message": "أكِّد للتخلص مِن مُحتوى مَنشور مؤلَّف." - }, - "publish_post_failure": { - "title": "إخفاق في عمليَّة النشر", - "message": "فَشَلَ نَشر المَنشور.\nيُرجى التحقق من اتصالك بالإنترنت.", - "attachments_message": { - "video_attach_with_photo": "لا يُمكن إرفاق مقطع مرئي إلى مَنشور يحتوي بالفعل على صُوَر.", - "more_than_one_video": "لا يُمكِنُ إرفاق أكثر مِن مَقطع مرئي واحِد." - } - }, - "edit_profile_failure": { - "title": "خطأ في تَحرير الملف التعريفي", - "message": "يتعذَّر تعديل الملف التعريفي. يُرجى المُحاولة مرة أُخرى." - }, - "sign_out": { - "title": "تَسجيلُ الخُروج", - "message": "هل أنت متأكد من رغبتك في تسجيل الخُروج؟", - "confirm": "تَسجيلُ الخُروج" - }, - "block_domain": { - "title": "هل أنتَ مُتأكِّدٌ حقًا مِن رغبتك في حظر %s بالكامل؟ في معظم الحالات، يكون مِنَ الكافي والمُفَضَّل استهداف عدد محدود للحظر أو الكتم. لن ترى محتوى من هذا النطاق وسوف يُزال جميع متابعيك المتواجدين فيه.", - "block_entire_domain": "حظر النِّطاق" - }, - "save_photo_failure": { - "title": "إخفاق في حفظ الصورة", - "message": "يُرجى إتاحة إذن الوصول إلى مكتبة الصور لحفظ الصورة." - }, - "delete_post": { - "title": "هل أنت متأكد من رغبتك في حذف هذا المنشور؟", - "message": "هَل أنتَ مُتأكِدٌ مِن رَغبتِكَ فِي حَذفِ هَذَا المَنشُور؟" - }, - "clean_cache": { - "title": "مَحوُ ذاكِرَةِ التَّخزينِ المُؤقَّت", - "message": "مُحِيَ ما مَساحَتُهُ %s مِن ذاكِرَةِ التَّخزينِ المُؤقَّت بِنجاح." - } - }, - "controls": { - "actions": { - "back": "العودة", - "next": "التالي", - "previous": "السابق", - "open": "فتح", - "add": "إضافة", - "remove": "حذف", - "edit": "تَحرير", - "save": "حفظ", - "ok": "حسنًا", - "done": "تمّ", - "confirm": "تأكيد", - "continue": "واصل", - "compose": "تأليف", - "cancel": "إلغاء", - "discard": "تجاهُل", - "try_again": "المُحاولة مرة أُخرى", - "take_photo": "اِلتِقاطُ صُورَة", - "save_photo": "حفظ الصورة", - "copy_photo": "نسخ الصورة", - "sign_in": "تسجيل الدخول", - "sign_up": "إنشاء حِساب", - "see_more": "عرض المزيد", - "preview": "مُعاينة", - "share": "المُشارك", - "share_user": "مُشارَكَةُ %s", - "share_post": "مشارك المنشور", - "open_in_safari": "الفَتحُ في Safari", - "open_in_browser": "الفَتحُ في المُتَصَفِّح", - "find_people": "ابحث عن أشخاص لِمُتابعتهم", - "manually_search": "البحث يدويًا بدلًا من ذلك", - "skip": "تخطي", - "reply": "الرَّد", - "report_user": "الإبلاغُ عَن %s", - "block_domain": "حظر %s", - "unblock_domain": "رفع الحظر عن %s", - "settings": "الإعدادات", - "delete": "حذف" - }, - "tabs": { - "home": "الرَّئِيسَة", - "search": "البَحث", - "notification": "الإشعارات", - "profile": "المِلَفُّ التَّعريفِيّ" - }, - "keyboard": { - "common": { - "switch_to_tab": "التبديل إلى %s", - "compose_new_post": "تأليف منشور جديد", - "show_favorites": "أظْهِر المُفضَّلة", - "open_settings": "فَتحُ الإعدادات" - }, - "timeline": { - "previous_status": "المنشور السابق", - "next_status": "المنشور التالي", - "open_status": "فتح المنشور", - "open_author_profile": "فتح الملف التعريفي للمؤلف", - "open_reblogger_profile": "فتح الملف التعريفي لمُعيد تدوين المنشور", - "reply_status": "الرَّد على مَنشور", - "toggle_reblog": "تبديل إعادة تدوين مَنشور", - "toggle_favorite": "تبديل المفضلة لِمنشور", - "toggle_content_warning": "تبديل تحذير المُحتَوى", - "preview_image": "معاينة الصورة" - }, - "segmented_control": { - "previous_section": "القسم السابق", - "next_section": "القسم التالي" - } - }, - "status": { - "user_reblogged": "أعادَ %s تَدوينَها", - "user_replied_to": "رَدًا على %s", - "show_post": "أظْهِر مَنشور", - "show_user_profile": "أظْهِر المِلَفَّ التَّعريفِيَّ لِلمُستَخدِم", - "content_warning": "تحذير المُحتوى", - "sensitive_content": "مُحتَوى حَسَّاس", - "media_content_warning": "اُنقُر لِلكَشف", - "tap_to_reveal": "اُنقُر لِلكَشف", - "poll": { - "vote": "صَوِّت", - "closed": "انتهى" - }, - "actions": { - "reply": "الرَّد", - "reblog": "إعادة النشر", - "unreblog": "التراجُع عن إعادة النشر", - "favorite": "التفضيل", - "unfavorite": "إزالة التفضيل", - "menu": "القائمة", - "hide": "إخفاء", - "show_image": "أظْهِرِ الصُّورَة", - "show_gif": "أظْهِر GIF", - "show_video_player": "أظْهِر مُشَغِّلَ المَقاطِعِ المَرئِيَّة", - "tap_then_hold_to_show_menu": "اُنقُر مُطَوَّلًا لِإظْهَارِ القائِمَة" - }, - "tag": { - "url": "عنوان URL", - "mention": "إشارة", - "link": "رابط", - "hashtag": "وسم", - "email": "بَريدٌ إلِكتُرُونِيّ", - "emoji": "رمز تعبيري" - }, - "visibility": { - "unlisted": "يُمكِنُ لِلجَميعِ رُؤيَةُ هَذَا المَنشورِ وَلكِنَّهُ لَا يُعرَضُ فِي الخَطِّ الزَمنيّ العام.", - "private": "فَقَطْ مُتابِعينَهُم مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور.", - "private_from_me": "فَقَطْ مُتابِعيني أنَا مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور.", - "direct": "المُستخدمِونَ المُشارِ إليهم فَقَطْ مَن يُمكِنُهُم رُؤيَةُ هَذَا المَنشُور." - } - }, - "friendship": { - "follow": "مُتابَعَة", - "following": "مُتابَع", - "request": "إرسال طَلَب", - "pending": "قيد المُراجعة", - "block": "حظر", - "block_user": "حَظرُ %s", - "block_domain": "حظر %s", - "unblock": "رفع الحَظر", - "unblock_user": "رفع الحَظر عن %s", - "blocked": "محظور", - "mute": "كَتم", - "mute_user": "كَتمُ %s", - "unmute": "رفع الكتم", - "unmute_user": "رفع الكتم عن %s", - "muted": "مكتوم", - "edit_info": "تَحريرُ المَعلُومات" - }, - "timeline": { - "filtered": "مُصفَّى", - "timestamp": { - "now": "الآن" - }, - "loader": { - "load_missing_posts": "تحميل المَنشورات المَفقودَة", - "loading_missing_posts": "يَجري تحميل المَنشورات المَفقودَة...", - "show_more_replies": "أظْهِر مَزيدًا مِنَ الرُّدود" - }, - "header": { - "no_status_found": "لَم يُعْثَر على مَنشورات", - "blocking_warning": "لا يُمكِنُكَ الاِطلاع على الملف التَعريفي لهذا المُستخدِم\nحتَّى تَرفعَ الحَظر عنه.\nملفُّكَ التَعريفي يَظهَرُ بِمثل هذِهِ الحالة بالنسبةِ لَهُ أيضًا.", - "user_blocking_warning": "لا يُمكنك الاطلاع على ملف %s التَعريفي\nحتَّى تَرفعَ الحَظر عنه.\nملفُّكَ التَعريفي يَظهَرُ بِمثل هذِهِ الحالة بالنسبةِ لَهُ أيضًا.", - "blocked_warning": "لا يُمكِنُكَ عَرض الملف التَعريفي لهذا المُستخدِم\nحتَّى يَرفَعَ الحَظرَ عَنك.", - "user_blocked_warning": "لا يُمكِنُكَ عَرض ملف %s التَعريفي\nحتَّى يَرفَعَ الحَظر عَنك.", - "suspended_warning": "تمَّ إيقاف هذا المُستخدِم.", - "user_suspended_warning": "لقد أُوقِفَ حِساب %s." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "شبكات التواصل الاجتماعي\nمرة أُخرى بين يديك.", - "get_started": "ابدأ الآن", - "log_in": "تسجيلُ الدخول" - }, - "server_picker": { - "title": "اِختر خادِم،\nأيًّا مِنهُم.", - "subtitle": "اختر مجتمعًا بناءً على اهتماماتك، منطقتك أو يمكنك حتى اختيارُ مجتمعٍ ذي غرضٍ عام.", - "subtitle_extend": "اختر مجتمعًا بناءً على اهتماماتك، منطقتك أو يمكنك حتى اختيارُ مجتمعٍ ذي غرضٍ عام. تُشغَّل جميعُ المجتمعِ مِن قِبَلِ مُنظمَةٍ أو فردٍ مُستقلٍ تمامًا.", - "button": { - "category": { - "all": "الكل", - "all_accessiblity_description": "الفئة: الكل", - "academia": "أكاديمي", - "activism": "النشطاء", - "food": "الطعام", - "furry": "مكسو بالفرو", - "games": "ألعاب", - "general": "عام", - "journalism": "صحافة", - "lgbt": "مجتمع الشواذ", - "regional": "إقليمي", - "art": "فنون", - "music": "موسيقى", - "tech": "تقنية" - }, - "see_less": "عرض عناصر أقل", - "see_more": "عرض عناصر أكثر" - }, - "label": { - "language": "اللُّغة", - "users": "مُستَخدِم", - "category": "الفئة" - }, - "input": { - "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", - "search_servers_or_enter_url": "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL" - }, - "empty_state": { - "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", - "bad_network": "حدث خطأٌ ما أثناء تحميل البيانات. تحقَّق من اتصالك بالإنترنت.", - "no_results": "لا توجد نتائج" - } - }, - "register": { - "title": "أخبرنا عن نفسك.", - "input": { - "avatar": { - "delete": "حذف" - }, - "username": { - "placeholder": "اِسمُ مُستَخدِم", - "duplicate_prompt": "اِسم المُستَخدِم هذا مأخوذٌ بالفعل." - }, - "display_name": { - "placeholder": "اِسمُ عَرض" - }, - "email": { - "placeholder": "بَريدٌ إلِكتُرُونِيّ" - }, - "password": { - "placeholder": "رمز سري", - "require": "رمز المرور الخاص بك يجب أن يحتوي على الأقل:", - "character_limit": "ثمانيةُ خانات", - "accessibility": { - "checked": "مُتَحَققٌ مِنه", - "unchecked": "غيرُ مُتَحَققٍ مِنه" - }, - "hint": "يَجِبُ أن يَحتَوي رَمزُكَ السِرِّيَ علَى ثَمانِ خاناتٍ أقلًا" - }, - "invite": { - "registration_user_invite_request": "لماذا ترغب في الانضمام؟" - } - }, - "error": { - "item": { - "username": "اِسمُ المُستَخدِم", - "email": "البريد الإلكتروني", - "password": "الرمز السري", - "agreement": "الاِتِّفاقيَّة", - "locale": "اللغة المحلية", - "reason": "السبب" - }, - "reason": { - "blocked": "يحتوي %s على موفِّر خدمة بريد إلكتروني غير مسموح به", - "unreachable": "يبدوا أنَّ %s غير موجود", - "taken": "إنَّ %s مُستخدَمٌ بالفعل", - "reserved": "إنَّ %s عبارة عن كلمة مفتاحيَّة محجوزة", - "accepted": "يجب أن يُقبل %s", - "blank": "%s مَطلوب", - "invalid": "%s غير صالح", - "too_long": "%s طويل جداً", - "too_short": "%s قصير جدًا", - "inclusion": "إنَّ %s قيمة غير مدعومة" - }, - "special": { - "username_invalid": "يُمكِن أن يحتوي اسم المستخدم على أحرف أبجدية، أرقام وشرطات سفلية فقط", - "username_too_long": "اِسم المُستَخدِم طويل جداً (يَجِبُ ألّا يكون أطول من ثلاثين خانة)", - "email_invalid": "هذا عنوان بريد إلكتروني غير صالح", - "password_too_short": "رمز السر قصير جدًا (يجب أن يتكون من ثمان خانات على الأقل)" - } - } - }, - "server_rules": { - "title": "بعض القواعد الأساسية.", - "subtitle": "سُنَّت هذه القواعد من قِبل مشرفي %s.", - "prompt": "في حال إختيارك للمواصلة، أنت تخضع لشروط الخدمة وسياسة الخصوصية لِـ%s.", - "terms_of_service": "شُرُوط الخِدمَة", - "privacy_policy": "سِياسَة الخُصُوصيَّة", - "button": { - "confirm": "أنا مُوافِق" - } - }, - "confirm_email": { - "title": "شيءٌ أخير.", - "subtitle": "لقد أرسلنا للتو بريد إلكتروني إلى %s،\nانقر على الرابط لتأكيد حسابك.", - "button": { - "open_email_app": "فتح تطبيق البريد الإلكتروني", - "resend": "إعادَةُ الإرسال" - }, - "dont_receive_email": { - "title": "تحقق من بريدك الإلكتروني", - "description": "تحقق ممَّ إذا كان عنوان بريدك الإلكتروني صحيحًا، وكذلك تأكد مِن مجلد البريد غير الهام إذا لم تكن قد فعلت ذلك.", - "resend_email": "إعادة إرسال البريد الإلكتروني" - }, - "open_email_app": { - "title": "تحقَّق من بريدك الوارِد.", - "description": "لقد أرسلنا لك بريدًا إلكترونيًا للتو. تحقق من مجلد البريد غير الهام الخاص بك إذا لم تكن قد فعلت ذلك.", - "mail": "البريد", - "open_email_client": "فتح عميل البريد الإلكتروني" - } - }, - "home_timeline": { - "title": "الرَّئِيسَة", - "navigation_bar_state": { - "offline": "غَير مُتَّصِل", - "new_posts": "إظهار منشورات جديدة", - "published": "تمَّ النَّشر!", - "Publishing": "يَجري نَشر المُشارَكَة...", - "accessibility": { - "logo_label": "ُّزِرُّ الشِّعار", - "logo_hint": "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق" - } - } - }, - "suggestion_account": { - "title": "ابحث عن أشخاص لمتابعتهم", - "follow_explain": "عِندَ مُتابَعَتِكَ لأحدِهِم، سَوف تَرى مَنشوراته في تغذيَتِكَ الرئيسة." - }, - "compose": { - "title": { - "new_post": "مَنشُورٌ جَديد", - "new_reply": "رَدٌّ جديد" - }, - "media_selection": { - "camera": "اِلتِقاطُ صُورَة", - "photo_library": "مَكتَبَةُ الصُّوَر", - "browse": "تَصَفَّح" - }, - "content_input_placeholder": "عَبِّر عَمَّ يَجُولُ فِي ذِهنِك", - "compose_action": "نَشر", - "replying_to_user": "رَدًا على %s", - "attachment": { - "photo": "صورة", - "video": "مقطع مرئي", - "attachment_broken": "هذا ال%s مُعطَّل\nويتعذَّرُ رفعُه إلى ماستودون.", - "description_photo": "صِف الصورة للمَكفوفين...", - "description_video": "صِف المقطع المرئي للمَكفوفين..." - }, - "poll": { - "duration_time": "المُدَّة: %s", - "thirty_minutes": "ثلاثون دقيقة", - "one_hour": "ساعةٌ واحدة", - "six_hours": "سِتُّ ساعات", - "one_day": "يومٌ واحِد", - "three_days": "ثلاثةُ أيام", - "seven_days": "سبعةُ أيام", - "option_number": "الخيار %ld" - }, - "content_warning": { - "placeholder": "اكتب تَحذيرًا دَقيقًا هُنا..." - }, - "visibility": { - "public": "لِلعَامَّة", - "unlisted": "غير مُدرَج", - "private": "للمُتابِعينَ فقط", - "direct": "لِمَن أشرتُ إليهِم فَقَط" - }, - "auto_complete": { - "space_to_add": "انقر على مساحة لإضافتِها" - }, - "accessibility": { - "append_attachment": "إضافة مُرفَق", - "append_poll": "اضافة استطلاع رأي", - "remove_poll": "إزالة الاستطلاع", - "custom_emoji_picker": "منتقي الرموز التعبيرية المُخصَّص", - "enable_content_warning": "تفعيل تحذير المُحتَوى", - "disable_content_warning": "تعطيل تحذير المُحتَوى", - "post_visibility_menu": "قائمة ظهور المنشور" - }, - "keyboard": { - "discard_post": "تجاهُل المنشور", - "publish_post": "نَشر المَنشُور", - "toggle_poll": "تبديل الاستطلاع", - "toggle_content_warning": "تبديل تحذير المُحتَوى", - "append_attachment_entry": "إضافة مُرفَق - %s", - "select_visibility_entry": "اختر مدى الظهور - %s" - } - }, - "profile": { - "dashboard": { - "posts": "مَنشورات", - "following": "مُتابَع", - "followers": "مُتابِع" - }, - "fields": { - "add_row": "إضافة صف", - "placeholder": { - "label": "التسمية", - "content": "المُحتَوى" - } - }, - "segmented_control": { - "posts": "مَنشورات", - "replies": "رُدُود", - "posts_and_replies": "مَنشُوراتٌ وَرُدُود", - "media": "وَسائِط", - "about": "حَول" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "كَتمُ الحِساب", - "message": "تأكيدُ كَتم %s" - }, - "confirm_unmute_user": { - "title": "رفع الكتم عن الحساب", - "message": "أكِّد لرفع الكتمْ عن %s" - }, - "confirm_block_user": { - "title": "حَظرُ الحِساب", - "message": "تأكيدُ حَظر %s" - }, - "confirm_unblock_user": { - "title": "رَفعُ الحَظرِ عَنِ الحِساب", - "message": "تأكيدُ رَفع الحَظرِ عَن %s" - } - }, - "accessibility": { - "show_avatar_image": "أظْهِر الصُّورَةَ الرَّمزِيَّة", - "edit_avatar_image": "تَحريرُ الصُّورَةِ الرَّمزِيَّة", - "show_banner_image": "أظْهِر صُورَةَ الرَّايَة", - "double_tap_to_open_the_list": "اُنقُر نَقرًا مُزدَوَجًا لِفَتحِ القائِمَة" - } - }, - "follower": { - "footer": "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى." - }, - "following": { - "footer": "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى." - }, - "search": { - "title": "البَحث", - "search_bar": { - "placeholder": "اِبحَث عَن وُسُومٍ أو مُستَخدِمين", - "cancel": "إلغاء" - }, - "recommend": { - "button_text": "إظهار الكُل", - "hash_tag": { - "title": "ذُو شَعبِيَّةٍ عَلَى مَاستودُون", - "description": "الوُسُومُ الَّتي تَحظى بقدرٍ كبيرٍ مِنَ الاِهتمام", - "people_talking": "%s أشخاص يتحدَّثوا" - }, - "accounts": { - "title": "حِساباتٍ قَد تُعجِبُك", - "description": "قَد تَرغَب في مُتابَعَةِ هَذِهِ الحِسابات", - "follow": "مُتابَعَة" - } - }, - "searching": { - "segment": { - "all": "الكُل", - "people": "أشخاص", - "hashtags": "وُسُوم", - "posts": "مَنشُورات" - }, - "empty_state": { - "no_results": "لا تُوجَدُ نتائِج" - }, - "recent_search": "عَمَليَّاُت البَحثِ الأخيرَة", - "clear": "مَحو" - } - }, - "discovery": { - "tabs": { - "posts": "مَنشُورات", - "hashtags": "وُسُوم", - "news": "أخبار", - "community": "المُجتَمَع", - "for_you": "لَك" - }, - "intro": "هَذِهِ هِيَ المَنشُوراتُ الَّتي تَكْتَسِبُ شَعبِيَّةً فِي الرُّكنِ الخاصِّ بِكَ مِن مَاستُودون." - }, - "favorite": { - "title": "مُفضَّلَتُك" - }, - "notification": { - "title": { - "Everything": "كُلُّ شيء", - "Mentions": "الإشارات" - }, - "notification_description": { - "followed_you": "بَدَأ بِمُتابَعَتِك", - "favorited_your_post": "فَضَّلَ مَنشُورَك", - "reblogged_your_post": "أعادَ تَدوينَ مَنشُورَك", - "mentioned_you": "أشارَ إليك", - "request_to_follow_you": "طَلَبَ مُتابَعتَك", - "poll_has_ended": "انتهى استطلاعُ الرأي" - }, - "keyobard": { - "show_everything": "أظْهِر كُلَّ شَيء", - "show_mentions": "أظْهِر الإشارَات" - } - }, - "thread": { - "back_title": "منشور", - "title": "مَنشور مِن %s" - }, - "settings": { - "title": "الإعدادات", - "section": { - "appearance": { - "title": "المَظهر", - "automatic": "تلقائي", - "light": "مضيءٌ دائمًا", - "dark": "مظلمٌ دائِمًا" - }, - "look_and_feel": { - "title": "المَظهَرُ وَالشُّعُور", - "use_system": "استخدم النِظام", - "really_dark": "مُظلمٌ حَقًّا", - "sorta_dark": "مُظلمٌ نوعًا ما", - "light": "مُضيء" - }, - "notifications": { - "title": "الإشعارات", - "favorites": "بِالإعْجاب بِمَنشوري", - "follows": "بِمُتابَعَتي", - "boosts": "بِإعادَةِ تدوينِ مَنشوري", - "mentions": "بِالإشارَةِ إليّ", - "trigger": { - "anyone": "أيُّ شخصٍ", - "follower": "مُتابِعٌ", - "follow": "أي شخص أُتابِعُه", - "noone": "لَا أحد", - "title": "أشعِرني عِندما يَقومُ" - } - }, - "preference": { - "title": "التَّفضيلات", - "true_black_dark_mode": "النَّمَطُ الأسوَدُ الداكِنُ الحَقيقي", - "disable_avatar_animation": "تَعطيلُ الصوَرِ الرمزيَّةِ المُتحرِّكَة", - "disable_emoji_animation": "تَعطيلُ الرُموزِ التَّعبيريَّةِ المُتحرِّكَة", - "using_default_browser": "اِستِخدامُ المُتصفِّحِ الاِفتراضي لِفتحِ الرَّوابِط", - "open_links_in_mastodon": "فَتحُ الرَّوابِطِ فِي مَاستودُون" - }, - "boring_zone": { - "title": "المنطِقَةُ المُملَّة", - "account_settings": "إعداداتُ الحِساب", - "terms": "شُرُوطُ الخِدمَة", - "privacy": "سِياسَةُ الخُصوصيَّة" - }, - "spicy_zone": { - "title": "المنطِقَةُ اللَّاذِعَة", - "clear": "مَحوُ ذاكِرَةِ التَّخزينِ المُؤقَّتِ لِلوسائِط", - "signout": "تَسجيلُ الخُروج" - } - }, - "footer": { - "mastodon_description": "ماستودون بَرنامجٌ مَفتُوحُ المَصدَر. يُمكِنُكَ المُساهَمَةُ، أوِ الإبلاغُ عَنِ المُشكِلات عَن طريق مِنصَّة جيت هاب (GitHub) في %s (%s)" - }, - "keyboard": { - "close_settings_window": "إغلاق نافذة الإعدادات" - } - }, - "report": { - "title_report": "إبلاغ", - "title": "الإبلاغ عن %s", - "step1": "الخطوة 1 مِن أصل 2", - "step2": "الخطوة 2 مِن أصل 2", - "content1": "هل ترغب في إضافة أي منشورات أُخرى إلى البلاغ؟", - "content2": "هل هناك أي شيء يجب أن يعرفه المُراقبين حول هذا البلاغ؟", - "report_sent_title": "شُكرًا لَكَ على الإبلاغ، سَوفَ نَنظُرُ فِي هَذَا الأمر.", - "send": "إرسال البلاغ", - "skip_to_send": "إرسال بدون تعليق", - "text_placeholder": "اكتب أو الصق تعليقات إضافيَّة", - "reported": "مُبْلَغٌ عَنه", - "step_one": { - "step_1_of_4": "الخطوة 1 مِن أصل 4", - "whats_wrong_with_this_post": "ما المُشكِلَةُ فِي هَذَا المَنشُور؟", - "whats_wrong_with_this_account": "ما المُشكِلَةُ فِي هَذَا الحِساب؟", - "whats_wrong_with_this_username": "ما المُشكِلَة مَعَ %s؟", - "select_the_best_match": "اِختَر أفضلَ تَطابُق", - "i_dont_like_it": "لا يُعجِبُني", - "it_is_not_something_you_want_to_see": "إنَّهُ ليسَ شيئًا تُريدُ رُؤيَتَه", - "its_spam": "إنَّهُ غَيرٌ مَرغوبٍ فيه", - "malicious_links_fake_engagement_or_repetetive_replies": "رَوابِطٌ ضَارَّة، اِرتِباطاتٌ مُزيَّفَة أو رُدودٌ مُتَكَرِّرَة", - "it_violates_server_rules": "يَنتَهِكُ قَواعِدَ الخادِم", - "you_are_aware_that_it_breaks_specific_rules": "أنتَ مُدِركٌ لِانتِهاكِهِ قَواعِدًا مُحَدَّدَة", - "its_something_else": "إنَّهُ شَيءٌ آخَر", - "the_issue_does_not_fit_into_other_categories": "المُشكِلَةُ لَا تَتَناسَبُ مَعَ الفِئاتِ الأُخرَى" - }, - "step_two": { - "step_2_of_4": "الخطوة 2 مِن أصل 4", - "which_rules_are_being_violated": "مَا هِيَ القَواعِدُ الَّتي تُنتَهَك؟", - "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق", - "i_just_don’t_like_it": "أنا فَقَط لا يُعجِبُني" - }, - "step_three": { - "step_3_of_4": "الخطوة 3 مِن أصل 4", - "are_there_any_posts_that_back_up_this_report": "هَل هُناكَ أيُّ مَنشُوراتٍ أُخرَى تَتَوافَقُ مَعَ هَذَا التَّقرير؟", - "select_all_that_apply": "اِختَر كُلَّ ما يَنطَبِق" - }, - "step_four": { - "step_4_of_4": "الخطوة 4 مِن أصل 4", - "is_there_anything_else_we_should_know": "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟" - }, - "step_final": { - "dont_want_to_see_this": "ألَا تُريدُ رُؤيَةَ هَذَا؟", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك.", - "unfollow": "إلغاءُ المُتابَعَة", - "unfollowed": "أُلغِيَت المُتابَعَة", - "unfollow_user": "إلغاءُ مُتابَعَةِ %s", - "mute_user": "كَتمُ %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", - "block_user": "حَظرُ %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "إغلاق المُعايَنَة", - "show_next": "أظْهِر التَّالي", - "show_previous": "أظْهِر السَّابِق" - } - }, - "account_list": { - "tab_bar_hint": "المِلَفُّ المُحدَّدُ حالِيًّا: %s. اُنقُر نَقرًا مُزدَوَجًا مَعَ الاِستِمرارِ لِإظهارِ مُبدِّلِ الحِساب", - "dismiss_account_switcher": "تجاهُل مبدِّل الحِساب", - "add_account": "إضافَةُ حِساب" - }, - "wizard": { - "new_in_mastodon": "جديد في ماستودون", - "multiple_account_switch_intro_description": "بدِّل بين حسابات متعددة عبر الاستمرار بالضغط على زر الملف الشخصي.", - "accessibility_hint": "انقر نقرًا مزدوجًا لتجاهُل النافذة المنبثقة" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ar_SA/ios-infoPlist.json b/Localization/StringsConvertor/input/ar_SA/ios-infoPlist.json deleted file mode 100644 index 1535679cb..000000000 --- a/Localization/StringsConvertor/input/ar_SA/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "يُستخدم لالتقاط الصورة عِندَ نشر الحالات", - "NSPhotoLibraryAddUsageDescription": "يُستخدم لحِفظ الصورة في مكتبة الصور", - "NewPostShortcutItemTitle": "مَنشُورٌ جَديد", - "SearchShortcutItemTitle": "البحث" -} diff --git a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict deleted file mode 100644 index c83c65883..000000000 --- a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificació per llegir - other - %ld notificacions per llegir - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - El límit de la entrada supera a %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caràcter - other - %ld caràcters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - El límit de la entrada continua sent %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caràcter - other - %ld caràcters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - publicació - other - publicacions - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mèdia - other - %ld mèdia - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 publicació - other - %ld publicacions - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorit - other - %ld favorits - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 impuls - other - %ld impulsos - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Resposta - other - %ld respostes - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vot - other - %ld vots - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votant - other - %ld votants - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 persona en parla - other - %ld persones en parlen - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguit - other - %ld seguits - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidor - other - %ld seguidors - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 any restant - other - %ld anys restants - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mes restant - other - %ld mesos restants - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dia restant - other - %ld dies restants - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hora restant - other - %ld hores restants - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minut restant - other - %ld minuts restants - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 segon restant - other - %ld segons restants - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1 any - other - fa %ld anys - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1 mes - other - fa %ld mesos - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1 día - other - fa %ld dies - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1h - other - fa %ld hores - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1 minut - other - fa %ld minuts - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fa 1 segon - other - fa %ld segons - - - - diff --git a/Localization/StringsConvertor/input/ca_ES/app.json b/Localization/StringsConvertor/input/ca_ES/app.json deleted file mode 100644 index 854b0a8b6..000000000 --- a/Localization/StringsConvertor/input/ca_ES/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Si us plau intenta-ho de nou.", - "please_try_again_later": "Si us plau, prova-ho més tard." - }, - "sign_up_failure": { - "title": "Error en el registre" - }, - "server_error": { - "title": "Error del Servidor" - }, - "vote_failure": { - "title": "Error del Vot", - "poll_ended": "L'enquesta ha finalitzat" - }, - "discard_post_content": { - "title": "Descarta l'esborrany", - "message": "Confirma per a descartar el contingut de la publicació composta." - }, - "publish_post_failure": { - "title": "Error de Publicació", - "message": "No s'ha pogut enviar la publicació.\nComprova la teva connexió a Internet.", - "attachments_message": { - "video_attach_with_photo": "No es pot adjuntar un vídeo a una publicació que ja contingui imatges.", - "more_than_one_video": "No pots adjuntar més d'un vídeo." - } - }, - "edit_profile_failure": { - "title": "Error al Editar el Perfil", - "message": "No es pot editar el perfil. Si us plau torna-ho a provar." - }, - "sign_out": { - "title": "Tancar Sessió", - "message": "Estàs segur que vols tancar la sessió?", - "confirm": "Tancar Sessió" - }, - "block_domain": { - "title": "Estàs segur, realment segur que vols bloquejar totalment %s? En la majoria dels casos bloquejar o silenciar uns pocs objectius és suficient i preferible. No veureu contingut d’aquest domini i se suprimirà qualsevol dels vostres seguidors d’aquest domini.", - "block_entire_domain": "Bloquejar Domini" - }, - "save_photo_failure": { - "title": "Error al Desar la Foto", - "message": "Activa el permís d'accés a la biblioteca de fotos per desar-la." - }, - "delete_post": { - "title": "Esborrar Publicació", - "message": "Estàs segur que vols suprimir aquesta publicació?" - }, - "clean_cache": { - "title": "Neteja la memòria cau", - "message": "S'ha netejat correctament la memòria cau de %s." - } - }, - "controls": { - "actions": { - "back": "Enrere", - "next": "Següent", - "previous": "Anterior", - "open": "Obre", - "add": "Afegeix", - "remove": "Elimina", - "edit": "Edita", - "save": "Desa", - "ok": "D'acord", - "done": "Fet", - "confirm": "Confirma", - "continue": "Continua", - "compose": "Composa", - "cancel": "Cancel·la", - "discard": "Descarta", - "try_again": "Torna a provar", - "take_photo": "Fes una foto", - "save_photo": "Desa la foto", - "copy_photo": "Copia la foto", - "sign_in": "Iniciar sessió", - "sign_up": "Registre", - "see_more": "Veure més", - "preview": "Vista prèvia", - "share": "Comparteix", - "share_user": "Compartir %s", - "share_post": "Compartir Publicació", - "open_in_safari": "Obrir a Safari", - "open_in_browser": "Obre al navegador", - "find_people": "Busca persones a seguir", - "manually_search": "Cerca manualment a canvi", - "skip": "Omet", - "reply": "Respon", - "report_user": "Informa sobre %s", - "block_domain": "Bloqueja %s", - "unblock_domain": "Desbloqueja %s", - "settings": "Configuració", - "delete": "Suprimeix" - }, - "tabs": { - "home": "Inici", - "search": "Cerca", - "notification": "Notificació", - "profile": "Perfil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Canviar a %s", - "compose_new_post": "Redacta un nova publicació", - "show_favorites": "Mostra els Favorits", - "open_settings": "Obre la configuració" - }, - "timeline": { - "previous_status": "Publicació anterior", - "next_status": "Publicació següent", - "open_status": "Obre la publicació", - "open_author_profile": "Obre el Perfil de l'Autor", - "open_reblogger_profile": "Obre el Perfil del Impulsor", - "reply_status": "Respon a la Publicació", - "toggle_reblog": "Commuta l'Impuls de la Publicació", - "toggle_favorite": "Commuta el Favorit de la Publicació", - "toggle_content_warning": "Commuta l'Avís de Contingut", - "preview_image": "Vista prèvia de l'Imatge" - }, - "segmented_control": { - "previous_section": "Secció Anterior", - "next_section": "Secció Següent" - } - }, - "status": { - "user_reblogged": "%s ha impulsat", - "user_replied_to": "Ha respòs a %s", - "show_post": "Mostra la Publicació", - "show_user_profile": "Mostra el perfil de l'usuari", - "content_warning": "Advertència de Contingut", - "sensitive_content": "Contingut sensible", - "media_content_warning": "Toca qualsevol lloc per a mostrar", - "tap_to_reveal": "Toca per a mostrar", - "poll": { - "vote": "Vota", - "closed": "Finalitzada" - }, - "actions": { - "reply": "Respon", - "reblog": "Impuls", - "unreblog": "Desfer l'impuls", - "favorite": "Favorit", - "unfavorite": "Desfer Favorit", - "menu": "Menú", - "hide": "Amaga", - "show_image": "Mostra la imatge", - "show_gif": "Mostra el GIF", - "show_video_player": "Mostra el reproductor de vídeo", - "tap_then_hold_to_show_menu": "Toca i manté per a veure el menú" - }, - "tag": { - "url": "URL", - "mention": "Menciona", - "link": "Enllaç", - "hashtag": "Etiqueta", - "email": "Correu electrònic", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Tothom pot veure aquesta publicació però no es mostra en la línia de temps pública.", - "private": "Només els seus seguidors poden veure aquesta publicació.", - "private_from_me": "Només els meus seguidors poden veure aquesta publicació.", - "direct": "Només l'usuari mencionat pot veure aquesta publicació." - } - }, - "friendship": { - "follow": "Segueix", - "following": "Seguint", - "request": "Petició", - "pending": "Pendent", - "block": "Bloqueja", - "block_user": "Bloqueja %s", - "block_domain": "Bloqueja %s", - "unblock": "Desbloqueja", - "unblock_user": "Desbloqueja %s", - "blocked": "Bloquejat", - "mute": "Silencia", - "mute_user": "Silencia %s", - "unmute": "Deixa de silenciar", - "unmute_user": "Treure silenci de %s", - "muted": "Silenciat", - "edit_info": "Edita" - }, - "timeline": { - "filtered": "Filtrat", - "timestamp": { - "now": "Ara" - }, - "loader": { - "load_missing_posts": "Carrega les publicacions faltants", - "loading_missing_posts": "Carregant les publicacions faltants...", - "show_more_replies": "Mostra més respostes" - }, - "header": { - "no_status_found": "No s'ha trobat cap publicació", - "blocking_warning": "No pots veure el perfil d'aquest usuari\n fins que el desbloquegis.\nEl teu perfil els sembla així.", - "user_blocking_warning": "No pots veure el perfil de %s\n fins que el desbloquegis.\nEl teu perfil els sembla així.", - "blocked_warning": "No pots veure el perfil d'aquest usuari\nfins que et desbloquegi.", - "user_blocked_warning": "No pots veure el perfil de %s\n fins que et desbloquegi.", - "suspended_warning": "Aquest usuari ha estat suspès.", - "user_suspended_warning": "El compte de %s ha estat suspès." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Xarxa social\nde nou a les teves mans.", - "get_started": "Comença", - "log_in": "Inicia sessió" - }, - "server_picker": { - "title": "Mastodon està fet d'usuaris en diferents comunitats.", - "subtitle": "Tria una comunitat segons els teus interessos, regió o una de propòsit general.", - "subtitle_extend": "Tria una comunitat segons els teus interessos, regió o una de propòsit general. Cada comunitat és operada per una organització totalment independent o individualment.", - "button": { - "category": { - "all": "Totes", - "all_accessiblity_description": "Categoria: Totes", - "academia": "acadèmia", - "activism": "activisme", - "food": "menjar", - "furry": "peluts", - "games": "jocs", - "general": "general", - "journalism": "periodisme", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "música", - "tech": "tecnologia" - }, - "see_less": "Veure Menys", - "see_more": "Veure Més" - }, - "label": { - "language": "LLENGUATGE", - "users": "USUARIS", - "category": "CATEGORIA" - }, - "input": { - "placeholder": "Cerca servidors", - "search_servers_or_enter_url": "Cerca comunitats o introdueix l'URL" - }, - "empty_state": { - "finding_servers": "Cercant els servidors disponibles...", - "bad_network": "Alguna cosa no ha anat bé en carregar les dades. Comprova la teva connexió a Internet.", - "no_results": "No hi ha resultats" - } - }, - "register": { - "title": "Anem a configurar-te a %s", - "input": { - "avatar": { - "delete": "Suprimeix" - }, - "username": { - "placeholder": "nom d'usuari", - "duplicate_prompt": "Aquest nom d'usuari ja està en ús." - }, - "display_name": { - "placeholder": "nom visible" - }, - "email": { - "placeholder": "correu electrònic" - }, - "password": { - "placeholder": "contrasenya", - "require": "La teva contrasenya com a mínim necessita:", - "character_limit": "8 caràcters", - "accessibility": { - "checked": "verificat", - "unchecked": "no verificat" - }, - "hint": "La teva contrasenya ha de tenir com a mínim vuit caràcters" - }, - "invite": { - "registration_user_invite_request": "Perquè vols unir-te?" - } - }, - "error": { - "item": { - "username": "Nom d'usuari", - "email": "Correu electrònic", - "password": "Contrasenya", - "agreement": "Acord", - "locale": "Idioma", - "reason": "Motiu" - }, - "reason": { - "blocked": "%s conté un proveïdor de correu electrònic no autoritzat", - "unreachable": "%s sembla que no existeix", - "taken": "%s ja s’està fent servir", - "reserved": "%s és una paraula clau reservada", - "accepted": "%s ha de ser acceptat", - "blank": "%s és requerit", - "invalid": "%s no és vàlid", - "too_long": "%s és massa llarg", - "too_short": "%s és massa curt", - "inclusion": "%s no és un valor suportat" - }, - "special": { - "username_invalid": "El nom d'usuari ha de contenir només caràcters alfanumèrics i guions baixos", - "username_too_long": "El nom d'usuari és massa llarg (no pot ser més llarg de 30 caràcters)", - "email_invalid": "Aquesta no és una adreça de correu electrònic vàlida", - "password_too_short": "La contrasenya és massa curta (ha de tenir 8 caràcters com a mínim)" - } - } - }, - "server_rules": { - "title": "Algunes regles bàsiques.", - "subtitle": "Aquestes regles estan establertes i aplicades per els moderadors de %s.", - "prompt": "Al continuar, estàs subjecte als termes de servei i a la política de privacitat de %s.", - "terms_of_service": "termes del servei", - "privacy_policy": "política de privadesa", - "button": { - "confirm": "Hi estic d'acord" - } - }, - "confirm_email": { - "title": "Una última cosa.", - "subtitle": "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte.", - "button": { - "open_email_app": "Obre l'aplicació de correu", - "resend": "Reenvia" - }, - "dont_receive_email": { - "title": "Comprova el teu correu", - "description": "Comprova que la teva adreça de correu electrònic és correcte i revisa la carpeta de correu brossa si encara no ho has fet.", - "resend_email": "Torna a enviar el correu" - }, - "open_email_app": { - "title": "Comprova la teva safata d'entrada.", - "description": "Acabem d'enviar-te un correu electrònic. Revisa la carpeta de correu brossa si encara no ho has fet.", - "mail": "Correu electrònic", - "open_email_client": "Obre el Client de Correu electrònic" - } - }, - "home_timeline": { - "title": "Inici", - "navigation_bar_state": { - "offline": "Fora de línia", - "new_posts": "Veure noves publicacions", - "published": "Publicat!", - "Publishing": "S'està publicant...", - "accessibility": { - "logo_label": "Botó de logotip", - "logo_hint": "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior" - } - } - }, - "suggestion_account": { - "title": "Cerca Persones a Seguir", - "follow_explain": "Quan segueixes algú, veuràs les seves publicacions a Inici." - }, - "compose": { - "title": { - "new_post": "Nova publicació", - "new_reply": "Nova Resposta" - }, - "media_selection": { - "camera": "Fes una Foto", - "photo_library": "Fototeca", - "browse": "Navega" - }, - "content_input_placeholder": "Escriu o enganxa el que tinguis en ment", - "compose_action": "Publica", - "replying_to_user": "responent a %s", - "attachment": { - "photo": "foto", - "video": "vídeo", - "attachment_broken": "Aquest %s està trencat i no pot ser\ncarregat a Mastodon.", - "description_photo": "Descriu la foto per als disminuïts visuals...", - "description_video": "Descriu el vídeo per als disminuïts visuals..." - }, - "poll": { - "duration_time": "Durada: %s", - "thirty_minutes": "30 minuts", - "one_hour": "1 Hora", - "six_hours": "6 Hores", - "one_day": "1 Dia", - "three_days": "3 Dies", - "seven_days": "7 Dies", - "option_number": "Opció %ld" - }, - "content_warning": { - "placeholder": "Escriu un advertiment precís aquí..." - }, - "visibility": { - "public": "Públic", - "unlisted": "No llistat", - "private": "Només seguidors", - "direct": "Només les persones que menciono" - }, - "auto_complete": { - "space_to_add": "Espai per afegir" - }, - "accessibility": { - "append_attachment": "Afegeix Adjunt", - "append_poll": "Afegir enquesta", - "remove_poll": "Eliminar Enquesta", - "custom_emoji_picker": "Selector d'Emoji Personalitzat", - "enable_content_warning": "Activa l'Avís de Contingut", - "disable_content_warning": "Desactiva l'Avís de Contingut", - "post_visibility_menu": "Menú de Visibilitat de Publicació" - }, - "keyboard": { - "discard_post": "Descarta la Publicació", - "publish_post": "Envia la Publicació", - "toggle_poll": "Commuta l'enquesta", - "toggle_content_warning": "Commuta l'Avís de Contingut", - "append_attachment_entry": "Afegeix Adjunt - %s", - "select_visibility_entry": "Selecciona la Visibilitat - %s" - } - }, - "profile": { - "dashboard": { - "posts": "publicacions", - "following": "seguint", - "followers": "seguidors" - }, - "fields": { - "add_row": "Afegeix fila", - "placeholder": { - "label": "Etiqueta", - "content": "Contingut" - } - }, - "segmented_control": { - "posts": "Publicacions", - "replies": "Respostes", - "posts_and_replies": "Publicacions i Respostes", - "media": "Mèdia", - "about": "Quant a" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Silencia el Compte", - "message": "Confirma per a silenciar %s" - }, - "confirm_unmute_user": { - "title": "Desfer silenciar compte", - "message": "Confirma deixar de silenciar a %s" - }, - "confirm_block_user": { - "title": "Bloqueja el Compte", - "message": "Confirma per a bloquejar %s" - }, - "confirm_unblock_user": { - "title": "Desbloqueja el Compte", - "message": "Confirma per a desbloquejar %s" - } - }, - "accessibility": { - "show_avatar_image": "Mostra l'imatge del avatar", - "edit_avatar_image": "Edita l'imatge del avatar", - "show_banner_image": "Mostra l'imatge del bàner", - "double_tap_to_open_the_list": "Doble toc per a veure la llista" - } - }, - "follower": { - "footer": "Els seguidors d'altres servidors no son mostrats." - }, - "following": { - "footer": "Els seguits d'altres servidors no son mostrats." - }, - "search": { - "title": "Cerca", - "search_bar": { - "placeholder": "Cerca etiquetes i usuaris", - "cancel": "Cancel·la" - }, - "recommend": { - "button_text": "Mostra-ho tot", - "hash_tag": { - "title": "Tendència a Mastodon", - "description": "Etiquetes que estan reben força atenció", - "people_talking": "%s persones hi estan parlant" - }, - "accounts": { - "title": "Comptes que et podrien agradar", - "description": "Potser t'agradaria seguir aquests comptes", - "follow": "Segueix" - } - }, - "searching": { - "segment": { - "all": "Tots", - "people": "Gent", - "hashtags": "Etiquetes", - "posts": "Publicacions" - }, - "empty_state": { - "no_results": "No hi ha resultats" - }, - "recent_search": "Cerques recents", - "clear": "Neteja" - } - }, - "discovery": { - "tabs": { - "posts": "Publicacions", - "hashtags": "Etiquetes", - "news": "Notícies", - "community": "Comunitat", - "for_you": "Per a tu" - }, - "intro": "Aquestes son les publicacions que criden l'atenció en el teu racó de Mastodon." - }, - "favorite": { - "title": "Els teus Favorits" - }, - "notification": { - "title": { - "Everything": "Tot", - "Mentions": "Mencions" - }, - "notification_description": { - "followed_you": "et segueix", - "favorited_your_post": "ha afavorit la teva publicació", - "reblogged_your_post": "ha impulsat la teva publicació", - "mentioned_you": "t'ha mencionat", - "request_to_follow_you": "ha sol·licitat seguir-te", - "poll_has_ended": "la enquesta ha finalitzat" - }, - "keyobard": { - "show_everything": "Mostrar-ho tot", - "show_mentions": "Mostrar Mencions" - } - }, - "thread": { - "back_title": "Publicació", - "title": "Publicació de %s" - }, - "settings": { - "title": "Configuració", - "section": { - "appearance": { - "title": "Aparença", - "automatic": "Automàtic", - "light": "Sempre Clara", - "dark": "Sempre Fosca" - }, - "look_and_feel": { - "title": "Aspecte i Comportament", - "use_system": "Usa el del Sistema", - "really_dark": "Realment Negre", - "sorta_dark": "Una Mena de Fosc", - "light": "Clar" - }, - "notifications": { - "title": "Notificacions", - "favorites": "Ha afavorit el meu estat", - "follows": "Em segueix", - "boosts": "Ha impulsat el meu estat", - "mentions": "M'ha mencionat", - "trigger": { - "anyone": "algú", - "follower": "un seguidor", - "follow": "a qualsevol que segueixi", - "noone": "ningú", - "title": "Notifica'm quan" - } - }, - "preference": { - "title": "Preferències", - "true_black_dark_mode": "Mode negre fosc autèntic", - "disable_avatar_animation": "Desactiva avatars animats", - "disable_emoji_animation": "Desactiva emojis animats", - "using_default_browser": "Utilitza el navegador predeterminat per a obrir enllaços", - "open_links_in_mastodon": "Obre enllaços a Mastodon" - }, - "boring_zone": { - "title": "La Zona Avorrida", - "account_settings": "Paràmetres del Compte", - "terms": "Termes de Servei", - "privacy": "Política de Privacitat" - }, - "spicy_zone": { - "title": "La Zona Picant", - "clear": "Esborra la memòria cau de Mèdia", - "signout": "Tancar Sessió" - } - }, - "footer": { - "mastodon_description": "Mastodon és un programari de codi obert. Pots informar de problemes a GitHub a %s (%s)" - }, - "keyboard": { - "close_settings_window": "Tancar la Finestra de Configuració" - } - }, - "report": { - "title_report": "Informe", - "title": "Informa sobre %s", - "step1": "Pas 1 de 2", - "step2": "Pas 2 de 2", - "content1": "Hi ha alguna altre publicació que vulguis afegir a l'informe?", - "content2": "Hi ha alguna cosa que els moderadors hagin de saber sobre aquest informe?", - "report_sent_title": "Gràcies per informar, ho investigarem.", - "send": "Envia Informe", - "skip_to_send": "Envia sense comentaris", - "text_placeholder": "Escriu o enganxa comentaris addicionals", - "reported": "REPORTAT", - "step_one": { - "step_1_of_4": "Pas 1 de 4", - "whats_wrong_with_this_post": "Quin és el problema amb aquesta publicació?", - "whats_wrong_with_this_account": "Quin és el problema amb aquest compte?", - "whats_wrong_with_this_username": "Quin és el problema amb %s?", - "select_the_best_match": "Selecciona la millor coincidència", - "i_dont_like_it": "No m'agrada", - "it_is_not_something_you_want_to_see": "No és una cosa que vulguis veure", - "its_spam": "És contingut brossa", - "malicious_links_fake_engagement_or_repetetive_replies": "Enllaços maliciosos, compromís falç o respostes repetitives", - "it_violates_server_rules": "Infringeix les normes del servidor", - "you_are_aware_that_it_breaks_specific_rules": "Ets conscient que incompleix normes específiques", - "its_something_else": "És una altra cosa", - "the_issue_does_not_fit_into_other_categories": "El problema no encaixa en altres categories" - }, - "step_two": { - "step_2_of_4": "Pas 2 de 4", - "which_rules_are_being_violated": "Quines normes s'estan infringint?", - "select_all_that_apply": "Selecciona tot el que correspongui", - "i_just_don’t_like_it": "Simplement no m'agrada" - }, - "step_three": { - "step_3_of_4": "Pas 3 de 4", - "are_there_any_posts_that_back_up_this_report": "Hi ha alguna publicació que recolzi aquest informe?", - "select_all_that_apply": "Selecciona tot el que correspongui" - }, - "step_four": { - "step_4_of_4": "Pas 4 de 4", - "is_there_anything_else_we_should_know": "Hi ha res més que hauríem de saber?" - }, - "step_final": { - "dont_want_to_see_this": "No vols veure això?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quan veus alguna cosa que no t'agrada a Mastodon, pots eliminar la persona de la vostra experiència.", - "unfollow": "Deixa de seguir", - "unfollowed": "S'ha deixat de seguir", - "unfollow_user": "Deixa de seguir %s", - "mute_user": "Silencia %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats.", - "block_user": "Bloca %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Ja no podran seguir ni veure les teves publicacions, però poden veure si han estat bloquejats.", - "while_we_review_this_you_can_take_action_against_user": "Mentre ho revisem, pots prendre mesures contra %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Tanca la Vista Prèvia", - "show_next": "Mostrar Següent", - "show_previous": "Mostrar Anterior" - } - }, - "account_list": { - "tab_bar_hint": "Perfil actual seleccionat: %s. Toca dues vegades i manté el dit per a mostrar el commutador de comptes", - "dismiss_account_switcher": "Descartar el commutador de comptes", - "add_account": "Afegir compte" - }, - "wizard": { - "new_in_mastodon": "Nou a Mastodon", - "multiple_account_switch_intro_description": "Commuta entre diversos comptes mantenint premut el botó del perfil.", - "accessibility_hint": "Toca dues vegades per descartar l'assistent" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ca_ES/ios-infoPlist.json b/Localization/StringsConvertor/input/ca_ES/ios-infoPlist.json deleted file mode 100644 index 805a99ce0..000000000 --- a/Localization/StringsConvertor/input/ca_ES/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "S'utilitza per fer fotos per les publicacions", - "NSPhotoLibraryAddUsageDescription": "S'utilitza per a desar fotos en la Fototeca", - "NewPostShortcutItemTitle": "Nova Publicació", - "SearchShortcutItemTitle": "Cerca" -} diff --git a/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict b/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict deleted file mode 100644 index 9d9adb118..000000000 --- a/Localization/StringsConvertor/input/ckb_IR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ئاگاداریی نەبینراو - other - %ld ئاگاداریی نەبینراو - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - سنووری نووسین %#@character_count@ دەرباز دەکات - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld نووسە - other - %ld نووسە - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - سنووری نووسین %#@character_count@ دەمێنێتەوە - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld نووسە - other - %ld نووسە - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@%#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - پۆست - other - پۆست - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld پۆست - other - %ld پۆست - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld بەدڵبوو - other - %ld بەدڵبوو - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld پۆستکردنەوە - other - %ld پۆستکردنەوە - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld وەڵام - other - %ld وەڵام - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld دەنگ - other - %ld دەنگ - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld دەنگدەر - other - %ld دەنگدەر - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld کەس باسی دەکات - other - %ld کەس باسی دەکەن - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld شوێنکەوتن - other - %ld شوێنکەوتن - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld شوێنکەوتوو - other - %ld شوێنکەوتوو - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ساڵی ماوە - other - %ld ساڵی ماوە - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld مانگی ماوە - other - %ld مانگی ماوە - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ڕۆژی ماوە - other - %ld ڕۆژی ماوە - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld کاتژمێری ماوە - other - %ld کاتژمێری ماوە - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld خولەکی ماوە - other - %ld خولەکی ماوە - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld چرکەی ماوە - other - %ld چرکەی ماوە - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ساڵ لەمەوبەر - other - %ld ساڵ لەمەوبەر - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld مانگ لەمەوبەر - other - %ld مانگ لەمەوبەر - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ڕۆژ لەمەوبەر - other - %ld ڕۆژ لەمەوبەر - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld کاتژمێر لەمەوبەر - other - %ld کاتژمێر لەمەوبەر - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld خولەک لەمەوبەر - other - %ld خولەک لەمەوبەر - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld چرکە لەمەوبەر - other - %ld چرکە لەمەوبەر - - - - diff --git a/Localization/StringsConvertor/input/ckb_IR/app.json b/Localization/StringsConvertor/input/ckb_IR/app.json deleted file mode 100644 index 88c4b300b..000000000 --- a/Localization/StringsConvertor/input/ckb_IR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "تکایە دووبارە هەوڵ بدەوە.", - "please_try_again_later": "تکایە دواتر هەوڵ بدەوە." - }, - "sign_up_failure": { - "title": "تۆمارکردنەکە سەرکەوتوو نەبوو" - }, - "server_error": { - "title": "هەڵەی ڕاژەکار" - }, - "vote_failure": { - "title": "نەتوانرا دەنگ بدرێت", - "poll_ended": "دەنگدانەکە کۆتایی هاتووە" - }, - "discard_post_content": { - "title": "ڕەشنووس هەڵمەگرە", - "message": "دڵنیا ببەوە بۆ وازهێنان لە ناوەڕۆکەت." - }, - "publish_post_failure": { - "title": "نەتوانرا پۆستەکە بکرێت", - "message": "نەتوانرا پۆستەکە بکرێت.\nتکایە لە بەردەستبوونی هێڵی ئینتەرنێت دڵنیا بە.", - "attachments_message": { - "video_attach_with_photo": "ناتوانیت ڤیدیۆ بۆ پۆستێک زیاد بکەیت کە وێنەی تێدایە.", - "more_than_one_video": "ناتوانیت زیاتر لە یەک ڤیدیۆی پێوە بلکێنیت." - } - }, - "edit_profile_failure": { - "title": "نەتوانرا دەستکاریی پرۆفایل بکرێت", - "message": "ناتوانرێت دەستکاریی پرۆفایل بکرێت. تکایە دووبارە هەوڵ بدەوە." - }, - "sign_out": { - "title": "دەربچۆ", - "message": "دڵنیایت دەتەوێت دەربچیت؟", - "confirm": "دەربچۆ" - }, - "block_domain": { - "title": "دڵنیایت دەتەوێت تەواوی %s ئاستەنگ بکەیت؟ لە زۆر بارەکاندا ئاستەنگکردنی بچووک باشترە. ئەگەر وا بکەیت، لەو ڕاژەکارەوە هیچ شتێک نابینیت و هەموو شوێنکەوتووەکانت لەوێوە لادەبرێن.", - "block_entire_domain": "هەموو ڕاژەکارەکە ئاستەنگ بکە" - }, - "save_photo_failure": { - "title": "نەتوانرا وێنەکە هەڵبگیرێت", - "message": "تکایە ڕێ بە ماستۆدۆن بدە تاوەکو بتوانێت وێنەکە هەڵبگرێت." - }, - "delete_post": { - "title": "بیسڕەوە", - "message": "دڵنیایت دەتەوێت ئەم پۆستە بسڕیتەوە؟" - }, - "clean_cache": { - "title": "بیرگە پاک بکەوە", - "message": "سەرکەوتووانە بیرگەی %s پاک کرایەوە." - } - }, - "controls": { - "actions": { - "back": "بگەڕێوە", - "next": "دواتر", - "previous": "پێشتر", - "open": "بیکەوە", - "add": "زیادی بکە", - "remove": "لایبە", - "edit": "دەستکاری", - "save": "هەڵی بگرە", - "ok": "باشە", - "done": "تەواو", - "confirm": "پشتڕاستی بکەوە", - "continue": "بەردەوام بە", - "compose": "پۆست بکە", - "cancel": "هەڵوەشاندنەوه", - "discard": "وازی لێ بێنە", - "try_again": "هەوڵ بدەوە", - "take_photo": "وێنە بگرە", - "save_photo": "هەڵی بگرە", - "copy_photo": "لەبەری بگرەوە", - "sign_in": "بچۆ ژوورەوە", - "sign_up": "خۆت تۆمار بکە", - "see_more": "زیاتر ببینە", - "preview": "پێشبینین", - "share": "هاوبەشی بکە", - "share_user": "%s هاوبەش بکە", - "share_post": "هاوبەشی بکە", - "open_in_safari": "لە Safari بیکەوە", - "open_in_browser": "لە وێبگەڕ بیکەوە", - "find_people": "خەڵک بدۆزەوە", - "manually_search": "خۆت بگەڕێ", - "skip": "بیپەڕێنە", - "reply": "وەڵامی بدەوە", - "report_user": "سکاڵا لە %s بکە", - "block_domain": "%s ئاستەنگ بکە", - "unblock_domain": "%s ئاستەنگ مەکە", - "settings": "رێکخستنەکان", - "delete": "بیسڕەوە" - }, - "tabs": { - "home": "ماڵەوە", - "search": "بگەڕێ", - "notification": "ئاگادارکردنەوەکان", - "profile": "پرۆفایل" - }, - "keyboard": { - "common": { - "switch_to_tab": "بڕۆ بۆ %s", - "compose_new_post": "پۆستێکی نوێ بکە", - "show_favorites": "بەدڵبووەکان ببینە", - "open_settings": "ڕێکخستنەکان بکەوە" - }, - "timeline": { - "previous_status": "پۆستی پێشتر", - "next_status": "پۆستی دواتر", - "open_status": "بیکەوە", - "open_author_profile": "پرۆفایلەکەی بکەوە", - "open_reblogger_profile": "پرۆفایلەکەی بکەوە", - "reply_status": "وەڵامی بدەوە", - "toggle_reblog": "پۆستکردنەوەی پۆست", - "toggle_favorite": "بەدڵبوونی پۆست", - "toggle_content_warning": "ئاگاداریی ناوەڕۆک نیشان بدە", - "preview_image": "بیبینە" - }, - "segmented_control": { - "previous_section": "بەشی پێشتر", - "next_section": "دەستنیشانکراوی دواتر" - } - }, - "status": { - "user_reblogged": "%s پۆست کرایەوە", - "user_replied_to": "لە وەڵامدا بۆ %s", - "show_post": "پۆستەکە نیشان بدە", - "show_user_profile": "پرۆفایلەکەی نیشان بدە", - "content_warning": "ئاگاداریی ناوەڕۆک", - "sensitive_content": "ناوەڕۆکی هەستیار", - "media_content_warning": "دەستی پیا بنێ بۆ نیشاندانی", - "tap_to_reveal": "دەستی پیا بنێ بۆ نیشاندانی", - "poll": { - "vote": "دەنگ بدە", - "closed": "داخراوە" - }, - "actions": { - "reply": "وەڵامی بدەوە", - "reblog": "پۆستی بکەوە", - "unreblog": "پۆستکردنەکە بگەڕێنەوە", - "favorite": "بەدڵمە", - "unfavorite": "بەدڵبوونەکە بگەڕێنەوە", - "menu": "پێڕست", - "hide": "بیشارەوە", - "show_image": "وێنەکە نیشان بدە", - "show_gif": "گیفەکە نیشان بدە", - "show_video_player": "ڤیدیۆکە لێ بدە", - "tap_then_hold_to_show_menu": "دەستی پیا بنێ و بیگرە بۆ نیشاندانی پێڕستەکە" - }, - "tag": { - "url": "بەستەر", - "mention": "ئاماژە", - "link": "بەستەر", - "hashtag": "هاشتاگ", - "email": "ئیمێڵ", - "emoji": "ئیمۆجی" - }, - "visibility": { - "unlisted": "هەرکەسێک دەتوانێت ئەم پۆستە ببینێت بەڵام ناچێتە بەردەمیان.", - "private": "تەنیا شوێنکەوتووەکانی دەتوانن ئەم پۆستە ببینن.", - "private_from_me": "تەنیا شوێنکەوتووەکانم دەتوانن ئەم پۆستە ببینن.", - "direct": "تەنیا بەکارهێنەرە ئاماژە پێکراوەکە دەتوانێت ئەم پۆستە ببینێت." - } - }, - "friendship": { - "follow": "شوێنی بکەوە", - "following": "شوێنی دەکەویت", - "request": "داوای لێ بکە", - "pending": "داوات کردووە", - "block": "ئاستەنگی بکە", - "block_user": "%s ئاستەنگ بکە", - "block_domain": "%s ئاستەنگ بکە", - "unblock": "ئاستەنگی مەکە", - "unblock_user": "%s ئاستەنگ مەکە", - "blocked": "ئاستەنگ کراوە", - "mute": "بێدەنگی بکە", - "mute_user": "%s بێدەنگە", - "unmute": "بێدەنگی مەکە", - "unmute_user": "%s بێدەنگ مەکە", - "muted": "بێدەنگ کراوە", - "edit_info": "دەستکاری" - }, - "timeline": { - "filtered": "پاڵێوراو", - "timestamp": { - "now": "ئێستا" - }, - "loader": { - "load_missing_posts": "پۆستە ماوەکان بار بکە", - "loading_missing_posts": "پۆستە ماوەکان بار دەکرێن...", - "show_more_replies": "وەڵامی زیاتر نیشان بدە" - }, - "header": { - "no_status_found": "هیچ پۆستێک نەدۆزرایەوە", - "blocking_warning": "ناتوانیت پرۆفایلی ئەم بەکارهێنەرە ببینیت\nهەتا ئاستەنگەکەیان لادەبەیت.\nپرۆفایلەکەت ئاوها لایان دەردەکەوێت.", - "user_blocking_warning": "ناتوانیت پرۆفایلی %s ببینیت\nهەتا ئاستەنگەکەیان لادەبەیت.\nپرۆفایلەکەت ئاوها لایان دەردەکەوێت.", - "blocked_warning": "ناتوانیت پرۆفایلی ئەم بەکارهێنەرە ببینیت\nتا ئەو کاتەی ئاستەنگەکەت لادەبات.", - "user_blocked_warning": "ناتوانیت پرۆفایلی %s ببینیت\nتا ئەو کاتەی ئاستەنگەکەت لادەبات.", - "suspended_warning": "ئەم بەکارهێنەرە ڕاگیراوە.", - "user_suspended_warning": "هەژماری %s ڕاگیراوە." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "تۆڕی کۆمەڵایەتی\nلەژێر دەستەکانت.", - "get_started": "دەست پێ بکە", - "log_in": "بچۆ ژوورەوە" - }, - "server_picker": { - "title": "ماستۆدۆن لە چەندان بەکارهێنەر پێک دێت کە لە ڕاژەکاری جیاواز دان.", - "subtitle": "ڕاژەکارێکێکی گشتی یان دانەیەک لەسەر بنەمای حەزەکانت و هەرێمەکەت هەڵبژێرە.", - "subtitle_extend": "ڕاژەکارێکێکی گشتی یان دانەیەک لەسەر بنەمای حەزەکانت و هەرێمەکەت هەڵبژێرە. هەر ڕاژەکارێک لەلایەن ڕێکخراوێک یان تاکەکەسێک بەڕێوە دەبرێت.", - "button": { - "category": { - "all": "هەموو", - "all_accessiblity_description": "بەش: هەموو", - "academia": "ئەکادیمیا", - "activism": "چالاکی", - "food": "خواردن", - "furry": "furry", - "games": "یاری", - "general": "گشتی", - "journalism": "ڕۆژنامەوانی", - "lgbt": "lgbt", - "regional": "هەرێمی", - "art": "هونەر", - "music": "موزیک", - "tech": "تەکنۆلۆژیا" - }, - "see_less": "کەمتر ببینە", - "see_more": "زیاتر ببینە" - }, - "label": { - "language": "زمان", - "users": "بەکارهێنەر", - "category": "بەش" - }, - "input": { - "placeholder": "بگەڕێ", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "ڕاژەکار دەدۆزرێتەوە...", - "bad_network": "هەڵەیەک ڕوویدا لە کاتی بارکردن. لە هەبوونی هێڵی ئینتەرنێت دڵنیا بە.", - "no_results": "ئەنجام نییە" - } - }, - "register": { - "title": "خۆت تۆمار بکە لە %s", - "input": { - "avatar": { - "delete": "بیسڕەوە" - }, - "username": { - "placeholder": "ناوی بەکارهێنەر", - "duplicate_prompt": "ئەم ناوە گیراوە." - }, - "display_name": { - "placeholder": "ناوی نیشاندان" - }, - "email": { - "placeholder": "ئیمێڵ" - }, - "password": { - "placeholder": "تێپەڕوشە", - "require": "تێپەڕوشەکەت لایەنی کەم پێویستیی هەیە بە:", - "character_limit": "8 پیت", - "accessibility": { - "checked": "هەڵبژێردراو", - "unchecked": "هەڵنەبژێردراو" - }, - "hint": "دەبێت تێپەڕوشەکەت لایەنی کەم هەشت نووسە بێت" - }, - "invite": { - "registration_user_invite_request": "بۆچی دەتەوێت بەشدار بیت؟" - } - }, - "error": { - "item": { - "username": "ناوی بەکارهێنەر", - "email": "ئیمێڵ", - "password": "تێپەڕوشە", - "agreement": "ڕێککەوتن", - "locale": "زمان", - "reason": "هۆکار" - }, - "reason": { - "blocked": "%s خزمەتگوزارییەکی ئیمێڵی ڕێپێنەدراو بەکار دەهێنێت", - "unreachable": "%s بوونی نییە", - "taken": "%s بەکار هێنراوە لەلایەن یەکێکی تر", - "reserved": "%s وشەیەکی گیراوە", - "accepted": "%s دەبێت قبووڵ بکرێت", - "blank": "%s پێویستە", - "invalid": "%s نادروستە", - "too_long": "%s زۆر درێژە", - "too_short": "%s زۆر کورتە", - "inclusion": "%s پشتگیرینەکراوە" - }, - "special": { - "username_invalid": "ناوی بەکارهێنەر دەبێت تەنیا پیت، ژمارە و هێڵی ژێرەوەی تێدا بێت", - "username_too_long": "ناوی بەکارهێنەرەکە زۆر درێژە (ناکرێت لە 30 نووسە زیاتر بێت)", - "email_invalid": "ئەم ئیمێڵە دروست نییە", - "password_too_short": "تێپەڕوشەکە زۆر کورتە (نابێت لە 8 نووسە کەمتر بێت)" - } - } - }, - "server_rules": { - "title": "یاساکانی ڕاژەکار", - "subtitle": "ئەمانە لەلایەن چاودێرەکانی %s دانراون و ناچار دەکرێن.", - "prompt": "بەردەوامبوونت واتای ڕازیبوونتە بە مەرجەکانی خزمەتگوزاری و سیاسەتی تایبەتێتیی %s.", - "terms_of_service": "مەرجەکانی بەکارهێنان", - "privacy_policy": "سیاسەتی تایبەتێتی", - "button": { - "confirm": "ڕازیم" - } - }, - "confirm_email": { - "title": "کۆتا شت.", - "subtitle": "بۆ پشتڕاستکردنەوەی هەژمارەکەت ئەو بەستەرە بکەوە کە بە ئیمێڵ بۆمان ناردوویت.", - "button": { - "open_email_app": "بەرنامەی ئیمێڵەکەت بکەوە", - "resend": "بینێرەوە" - }, - "dont_receive_email": { - "title": "ئیمێڵەکەت ببینە", - "description": "دڵنیا بە لەوەی ئیمێڵەکەت دروستە و هەموو بوخچەکانت بگەڕێ.", - "resend_email": "ئیمێڵەکە بنێرەوە" - }, - "open_email_app": { - "title": "ئیمێڵەکانت ببینە.", - "description": "ئیمێڵێکمان بۆ ناردیت. هەموو بوخچەکانت ببینە.", - "mail": "Mail", - "open_email_client": "بەرنامەی ئیمێڵەکەت بکەوە" - } - }, - "home_timeline": { - "title": "ماڵەوە", - "navigation_bar_state": { - "offline": "دەرهێڵ", - "new_posts": "پۆستە نوێکان ببینە", - "published": "بڵاوکرایەوە!", - "Publishing": "پۆستەکە بڵاو دەکرێتەوە...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "خەڵک بدۆزەوە", - "follow_explain": "کاتێک شوێنی یەکێک دەکەویت، پۆستەکانی دێتە بەردەمت." - }, - "compose": { - "title": { - "new_post": "پۆستی نوێ", - "new_reply": "وەڵامی نوێ" - }, - "media_selection": { - "camera": "وێنە بگرە", - "photo_library": "وێنەکان", - "browse": "بگەڕێ" - }, - "content_input_placeholder": "دەتەوێت چی پۆست بکەیت؟", - "compose_action": "بڵاوی بکەوە", - "replying_to_user": "لە وەڵامدا بۆ %s", - "attachment": { - "photo": "وێنە", - "video": "ڤیدیۆ", - "attachment_broken": "ئەم %sـە تێک چووە و ناتوانیت بەرزی بکەیتەوە.", - "description_photo": "وێنەکەت بۆ نابیناکان باس بکە...", - "description_video": "ڤیدیۆکەت بۆ نابیناکان باس بکە..." - }, - "poll": { - "duration_time": "کات:‌ %s", - "thirty_minutes": "30 خولەک", - "one_hour": "1 کاتژمێر", - "six_hours": "6 کاتژمێر", - "one_day": "1 ڕۆژ", - "three_days": "3 ڕۆژ", - "seven_days": "7 ڕۆژ", - "option_number": "بژاردەی %ld" - }, - "content_warning": { - "placeholder": "ئاگادارییەکەت لێرە بنووسە..." - }, - "visibility": { - "public": "گشتی", - "unlisted": "پێشنیارنەکراو", - "private": "تەنیا شوێنکەوتووان", - "direct": "ئەوانەی ئاماژەیان پێ دەکەم" - }, - "auto_complete": { - "space_to_add": "بۆشایی دابنێ بۆ زیادکردن" - }, - "accessibility": { - "append_attachment": "پێوەکراوی پێوە بکە", - "append_poll": "دەنگدان زیاد بکە", - "remove_poll": "دانگدانەکە لابە", - "custom_emoji_picker": "هەڵبژێری ئیمۆجی", - "enable_content_warning": "ئاگاداریی ناوەڕۆک چالاک بکە", - "disable_content_warning": "ئاگاداریی ناوەڕۆک ناچالاک بکە", - "post_visibility_menu": "پێڕستی شێوازی دەرکەوتنی پۆست" - }, - "keyboard": { - "discard_post": "پۆستەکە هەڵوەشێنەوە", - "publish_post": "پۆستە بڵاو بکەوە", - "toggle_poll": "دەنگدانەکە نیشان بدە", - "toggle_content_warning": "ئاگاداریی ناوەڕۆک نیشان بدە", - "append_attachment_entry": "پێوەکراوی پێوە بکە - %s", - "select_visibility_entry": "شێوازی دەرکەوتن هەڵبژێرە - %s" - } - }, - "profile": { - "dashboard": { - "posts": "پۆستەکان", - "following": "شوێنکەوتن", - "followers": "شوێنکەوتوو" - }, - "fields": { - "add_row": "ڕیز زیاد بکە", - "placeholder": { - "label": "ناونیشان", - "content": "ناوەڕۆک" - } - }, - "segmented_control": { - "posts": "پۆستەکان", - "replies": "وەڵامەکان", - "posts_and_replies": "پۆست و وەڵامەکان", - "media": "میدیا", - "about": "دەربارە" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "بێدەنگی بکە", - "message": "دڵیا ببەوە بۆ بێدەنگکردنی %s" - }, - "confirm_unmute_user": { - "title": "بێدەنگی مەکە", - "message": "دڵنیا ببەوە بۆ بێدەنگنەکردنی %s" - }, - "confirm_block_user": { - "title": "ئاستەنگی بکە", - "message": "دڵنیا ببەوە بۆ ئاستەنگکردنی %s" - }, - "confirm_unblock_user": { - "title": "ئاستەنگی مەکە", - "message": "دڵنیا ببەوە بۆ لابردنی ئاستەنگی %s" - } - }, - "accessibility": { - "show_avatar_image": "وێنەکە نیشان بدە", - "edit_avatar_image": "دەستکاریی وێنەکە بکە", - "show_banner_image": "وێنەکەی پشتەوە نیشان بدە", - "double_tap_to_open_the_list": "دوو جار دەستی پیا بنێ بۆ کردنەوەی لیستەکە" - } - }, - "follower": { - "footer": "شوێنکەوتووەکانی لە ڕاژەکارەکانی ترەوە نیشان نادرێت." - }, - "following": { - "footer": "شوێنکەوتنەکانی بۆ هەژماری ڕاژەکارەکانی تر نیشان نادرێت." - }, - "search": { - "title": "بگەڕێ", - "search_bar": { - "placeholder": "بۆ هاشتاگ و بەکارهێنەر بگەڕێ", - "cancel": "بگەڕێوە" - }, - "recommend": { - "button_text": "هەمووی ببینە", - "hash_tag": { - "title": "ڕۆژەڤ", - "description": "ئەو هاشتاگانەی سەرنجی زۆریان لەسەرە", - "people_talking": "%s کەس باسی دەکەن" - }, - "accounts": { - "title": "لەوانەیە حەزت لەمانە بێت", - "description": "لەوانەیە بتەوێت شوێنی ئەم هەژمارانە بکەویت", - "follow": "شوێنی بکەوە" - } - }, - "searching": { - "segment": { - "all": "هەمووی", - "people": "خەڵک", - "hashtags": "هاشتاگ", - "posts": "پۆست" - }, - "empty_state": { - "no_results": "هیچ ئەنجامێک نەدۆزرایەوە" - }, - "recent_search": "گەڕانەکانی پێشترت", - "clear": "بیانسڕەوە" - } - }, - "discovery": { - "tabs": { - "posts": "پۆستەکان", - "hashtags": "هاشتاگەکان", - "news": "هەواڵەکان", - "community": "Community", - "for_you": "بۆ تۆ" - }, - "intro": "پۆست هەیە سەرنجیان لەسەرە لە گۆشەکەی تۆ." - }, - "favorite": { - "title": "بەدڵبووەکانت" - }, - "notification": { - "title": { - "Everything": "هەمووی", - "Mentions": "ئاماژەکان" - }, - "notification_description": { - "followed_you": "شوێنت کەوت", - "favorited_your_post": "پۆستەکەتی بەدڵ بوو", - "reblogged_your_post": "پۆستەکەتی پۆست کردەوە", - "mentioned_you": "ئاماژەی پێت کرد", - "request_to_follow_you": "داواکاری بۆ شوێنکەوتنت", - "poll_has_ended": "دەنگدانەکە کۆتایی هات" - }, - "keyobard": { - "show_everything": "هەموو شتێک نیشان بدە", - "show_mentions": "ئاماژەکان نیشان بدە" - } - }, - "thread": { - "back_title": "پۆستەکە", - "title": "پۆستی %s" - }, - "settings": { - "title": "رێکخستنەکان", - "section": { - "appearance": { - "title": "ڕووخسار", - "automatic": "خۆکار", - "light": "ڕووناک", - "dark": "تاریک" - }, - "look_and_feel": { - "title": "ڕووخسار و هەست", - "use_system": "سیستەم", - "really_dark": "زۆر تاریک", - "sorta_dark": "کەم تاریک", - "light": "ڕووناک" - }, - "notifications": { - "title": "ئاماژەکان نیشان بدە", - "favorites": "پۆستەکەمی بەدڵ دەبێت", - "follows": "شوێنم دەکەوێت", - "boosts": "پۆستەکەم پۆست دەکاتەوە", - "mentions": "ئاماژەم پێ دەکات", - "trigger": { - "anyone": "هەرکەسێک", - "follower": "شوێنکەوتووێکم", - "follow": "هەرکەسێک شوێنی دەکەوم", - "noone": "هیچکەس", - "title": "ئاگادارم بکەوە کاتێک" - } - }, - "preference": { - "title": "پەسەندەکان", - "true_black_dark_mode": "دۆخی ڕەش", - "disable_avatar_animation": "وێنە جووڵاوەکان ناچالاک بکە", - "disable_emoji_animation": "ئیمۆجییە جووڵاوەکان ناچالاک بکە", - "using_default_browser": "وێبگەڕی بنەڕەت بەکار بهێنە بۆ کردنەوەی بەستەرەکان", - "open_links_in_mastodon": "بەستەرەکان لەناو ماستۆدۆن بکەوە" - }, - "boring_zone": { - "title": "ناوچە بێنازەکە", - "account_settings": "ڕێکخستنەکانی هەژمار", - "terms": "مەرجەکانی بەکارهێنان", - "privacy": "سیاسەتی تایبەتێتی" - }, - "spicy_zone": { - "title": "ناوچەی گەرم", - "clear": "بیرگە پاک بکەوە", - "signout": "دەربچۆ" - } - }, - "footer": { - "mastodon_description": "ماستۆدۆن پڕۆژەیەکی سەرچاوەکراوەیە. دەتوانیت لە گیتهەب لە کێشەکان ئاگادارمان بکەیتەوە: %s (%s)" - }, - "keyboard": { - "close_settings_window": "ڕێخستنەکان دابخە" - } - }, - "report": { - "title_report": "سکاڵای لێ بکە", - "title": "سکاڵا لە %s بکە", - "step1": "هەنگاوی 1 لە 2", - "step2": "هەنگاوی 2 لە 2", - "content1": "پۆستی تر هەیە بتەوێت سکاڵایان لێ بکەیت؟", - "content2": "هیچ شتێکی هەیە بە چاودێرەکان بیزانن دەربارەی ئەم سکاڵایە؟", - "report_sent_title": "سپاس بۆ سکاڵاکات، پێیدا دەچینەوە.", - "send": "سکاڵاکە بنێرە", - "skip_to_send": "بەبێ لێدوان بینێرە", - "text_placeholder": "ڕوونکردنەوەی زۆرتر بدە", - "reported": "سکاڵای لێ کرا", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "پێشبینینەکە دابخە", - "show_next": "هی دواتر نیشان بدە", - "show_previous": "هی پێشتر نیشان بدە" - } - }, - "account_list": { - "tab_bar_hint": "هەژماری ئێستا: %s. دوو جا دەستی پیا بنێ بۆ کردنەوەی پێڕستی هەژمارەکان.", - "dismiss_account_switcher": "پێڕستی هەژمارەکان دابخە", - "add_account": "هەژمارێک زیاد بکە" - }, - "wizard": { - "new_in_mastodon": "نوێ", - "multiple_account_switch_intro_description": "هەژمارەکەت بگۆڕە بە دەستڕاگرتن لەسەر دوگمەی پرۆفایلەکە.", - "accessibility_hint": "دوو جار دەستی پیا بنێ بۆ داخستنی" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ckb_IR/ios-infoPlist.json b/Localization/StringsConvertor/input/ckb_IR/ios-infoPlist.json deleted file mode 100644 index ea46a790f..000000000 --- a/Localization/StringsConvertor/input/ckb_IR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "بەکار دێت بۆ گرتنی وێنەیەک بۆ پۆستەکە", - "NSPhotoLibraryAddUsageDescription": "بەکار دێت بۆ هەڵگرتنی وێنە", - "NewPostShortcutItemTitle": "پۆستی نوێ", - "SearchShortcutItemTitle": "بگەڕێ" -} diff --git a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict deleted file mode 100644 index 54805560b..000000000 --- a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict +++ /dev/null @@ -1,630 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld unread notification - one - 1 unread notification - two - %ld unread notification - few - %ld unread notification - many - %ld unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld characters - one - 1 character - two - %ld characters - few - %ld characters - many - %ld characters - other - %ld nodau - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld characters - one - 1 character - two - %ld characters - few - %ld characters - many - %ld characters - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - post - one - post - two - postiau - few - posts - many - posts - other - postiau - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld media - one - 1 media - two - %ld media - few - %ld media - many - %ld media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld posts - one - 1 post - two - %ld posts - few - %ld posts - many - %ld posts - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld favorites - one - 1 favorite - two - %ld favorites - few - %ld favorites - many - %ld favorites - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld reblogs - one - 1 reblog - two - %ld reblogs - few - %ld reblogs - many - %ld reblogs - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld replies - one - 1 reply - two - %ld replies - few - %ld replies - many - %ld replies - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld votes - one - 1 vote - two - %ld votes - few - %ld votes - many - %ld votes - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld voters - one - 1 voter - two - %ld voters - few - %ld voters - many - %ld voters - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld people talking - one - 1 people talking - two - %ld people talking - few - %ld people talking - many - %ld people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld following - one - 1 following - two - %ld following - few - %ld following - many - %ld following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld followers - one - 1 follower - two - %ld followers - few - %ld followers - many - %ld followers - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld years left - one - 1 year left - two - %ld years left - few - %ld years left - many - %ld years left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld months left - one - 1 months left - two - %ld months left - few - %ld months left - many - %ld months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld days left - one - 1 day left - two - %ld days left - few - %ld days left - many - %ld days left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld hours left - one - 1 hour left - two - %ld hours left - few - %ld hours left - many - %ld hours left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld minutes left - one - 1 minute left - two - %ld minutes left - few - %ld minutes left - many - %ld minutes left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ld seconds left - one - 1 second left - two - %ld seconds left - few - %ld seconds left - many - %ld seconds left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ldy ago - one - 1y ago - two - %ldy ago - few - %ldy ago - many - %ldy ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ldM ago - one - 1M ago - two - %ldM ago - few - %ldM ago - many - %ldM ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ldd ago - one - 1d ago - two - %ldd ago - few - %ldd ago - many - %ldd ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ldh ago - one - 1h ago - two - %ldh ago - few - %ldh ago - many - %ldh ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %ldm ago - one - 1m ago - two - %ldm ago - few - %ldm ago - many - %ldm ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - zero - %lds ago - one - 1s ago - two - %lds ago - few - %lds ago - many - %lds ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/cy_GB/app.json b/Localization/StringsConvertor/input/cy_GB/app.json deleted file mode 100644 index 5a72e08ea..000000000 --- a/Localization/StringsConvertor/input/cy_GB/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Please try again.", - "please_try_again_later": "Please try again later." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Server Error" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Discard Draft", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." - }, - "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Delete Post", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Hybwch", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "postiadau", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Postiadau", - "replies": "Replies", - "posts_and_replies": "Postiadau ac Atebion", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Postiadau" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Postiadau", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json b/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json deleted file mode 100644 index ee0c5bfee..000000000 --- a/Localization/StringsConvertor/input/cy_GB/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "Post Newydd", - "SearchShortcutItemTitle": "Chwilio" -} diff --git a/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict b/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict deleted file mode 100644 index 80cfd3d62..000000000 --- a/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorite - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/da_DK/app.json b/Localization/StringsConvertor/input/da_DK/app.json deleted file mode 100644 index 12dd1e030..000000000 --- a/Localization/StringsConvertor/input/da_DK/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Please try again.", - "please_try_again_later": "Please try again later." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Server Error" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Discard Draft", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." - }, - "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Delete Post", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/da_DK/ios-infoPlist.json b/Localization/StringsConvertor/input/da_DK/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/da_DK/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict deleted file mode 100644 index 36fb9f19e..000000000 --- a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ungelesene Benachrichtigung - other - %ld ungelesene Benachrichtigungen - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Eingabelimit überschritten %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Zeichen - other - %ld Zeichen - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Eingabelimit eingehalten %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Zeichen - other - %ld Zeichen - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Beitrag - other - Beiträge - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Beitrag - other - %ld Beiträge - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Favorit - other - %ld Favoriten - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Reblog - other - %ld Reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Antwort - other - %ld Antworten - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Stimme - other - %ld Stimmen - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Wähler - other - %ld Wähler - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Mensch spricht - other - %ld Leute reden - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 folgt - other - %ld folgen - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 Follower - other - %ld Follower - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Jahr übrig - other - noch %ld Jahre übrig - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Monat übrig - other - noch %ld Monate übrig - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Tag übrig - other - noch %ld Tage übrig - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Stunde übrig - other - noch %ld Stunden übrig - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Minute übrig - other - noch %ld Minuten übrig - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - noch 1 Sekunde übrig - other - noch %ld Sekunden übrig - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 Jahr - other - vor %ld Jahren - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 M - other - vor %ld Monaten - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 Tag - other - vor %ld Tagen - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 Stunde - other - vor %ld Stunden - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 Minute - other - vor %ld Minuten - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - vor 1 Sekunde - other - vor %ld Sekuden - - - - diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json deleted file mode 100644 index b2aab6146..000000000 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Bitte versuche es erneut.", - "please_try_again_later": "Bitte versuche es später nochmal." - }, - "sign_up_failure": { - "title": "Registrierungsfehler" - }, - "server_error": { - "title": "Serverfehler" - }, - "vote_failure": { - "title": "Fehler bei Abstimmung", - "poll_ended": "Die Umfrage ist beendet" - }, - "discard_post_content": { - "title": "Entwurf verwerfen", - "message": "Bestätige, um den Beitrag zu verwerfen." - }, - "publish_post_failure": { - "title": "Fehler bei Veröffentlichung", - "message": "Fehler beim Veröffentlichen des Beitrags.\nBitte überprüfe deine Internetverbindung.", - "attachments_message": { - "video_attach_with_photo": "Es kann kein Video an einen Beitrag, der bereits Bilder enthält, angehängt werden.", - "more_than_one_video": "Es kann nicht mehr als ein Video angehängt werden." - } - }, - "edit_profile_failure": { - "title": "Fehler beim Bearbeiten des Profils", - "message": "Profil kann nicht bearbeitet werden. Bitte versuche es erneut." - }, - "sign_out": { - "title": "Abmelden", - "message": "Bist du sicher, dass du dich abmelden möchten?", - "confirm": "Abmelden" - }, - "block_domain": { - "title": "Bist du dir wirklich sicher, dass du die ganze Domain %s blockieren willst? In den meisten Fällen reichen ein paar gezielte Blockierungen oder Stummschaltungen aus und werden bevorzugt. Du wirst den Inhalt von dieser Domain nicht mehr sehen. Deine Follower von dieser Domain werden entfernt.", - "block_entire_domain": "Domain blockieren" - }, - "save_photo_failure": { - "title": "Foto konnte nicht gespeichert werden", - "message": "Bitte aktiviere den Zugriff auf die Fotobibliothek, um das Foto zu speichern." - }, - "delete_post": { - "title": "Bist du dir sicher, dass du diesen Beitrag löschen möchtest?", - "message": "Bist du dir sicher, dass du diesen Beitrag löschen willst?" - }, - "clean_cache": { - "title": "Zwischenspeicher leeren", - "message": "%s erfolgreich aus dem Cache gelöscht." - } - }, - "controls": { - "actions": { - "back": "Zurück", - "next": "Weiter", - "previous": "Vorheriges", - "open": "Öffnen", - "add": "Hinzufügen", - "remove": "Entfernen", - "edit": "Bearbeiten", - "save": "Speichern", - "ok": "OK", - "done": "Fertig", - "confirm": "Bestätigen", - "continue": "Fortfahren", - "compose": "Neue Nachricht", - "cancel": "Abbrechen", - "discard": "Verwerfen", - "try_again": "Nochmals versuchen", - "take_photo": "Foto aufnehmen", - "save_photo": "Foto speichern", - "copy_photo": "Foto kopieren", - "sign_in": "Anmelden", - "sign_up": "Registrieren", - "see_more": "Mehr anzeigen", - "preview": "Vorschau", - "share": "Teilen", - "share_user": "%s teilen", - "share_post": "Beitrag teilen", - "open_in_safari": "In Safari öffnen", - "open_in_browser": "Im Browser anzeigen", - "find_people": "Finde Personen zum Folgen", - "manually_search": "Stattdessen manuell suchen", - "skip": "Überspringen", - "reply": "Antworten", - "report_user": "%s melden", - "block_domain": "%s blockieren", - "unblock_domain": "Blockierung von %s aufheben", - "settings": "Einstellungen", - "delete": "Löschen" - }, - "tabs": { - "home": "Startseite", - "search": "Suche", - "notification": "Benachrichtigungen", - "profile": "Profil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Zu %s wechseln", - "compose_new_post": "Neuen Beitrag verfassen", - "show_favorites": "Favoriten anzeigen", - "open_settings": "Einstellungen öffnen" - }, - "timeline": { - "previous_status": "Vorheriger Beitrag", - "next_status": "Nächster Beitrag", - "open_status": "Beitrag öffnen", - "open_author_profile": "Profil des Verfassers ansehen", - "open_reblogger_profile": "Profil des teilenden Nutzers öffnen", - "reply_status": "Auf Beitrag antworten", - "toggle_reblog": "Teilen vom Beitrag umschalten", - "toggle_favorite": "Favorit vom Beitrag umschalten", - "toggle_content_warning": "Inhaltswarnung umschalten", - "preview_image": "Bildvorschau" - }, - "segmented_control": { - "previous_section": "Vorheriger Abschnitt", - "next_section": "Nächster Abschnitt" - } - }, - "status": { - "user_reblogged": "%s teilte", - "user_replied_to": "Antwortet auf %s", - "show_post": "Beitrag anzeigen", - "show_user_profile": "Benutzerprofil anzeigen", - "content_warning": "Inhaltswarnung", - "sensitive_content": "NSFW-Inhalt", - "media_content_warning": "Tippe irgendwo zum Anzeigen", - "tap_to_reveal": "Zum Anzeigen tippen", - "poll": { - "vote": "Abstimmen", - "closed": "Beendet" - }, - "actions": { - "reply": "Antworten", - "reblog": "Teilen", - "unreblog": "Nicht mehr teilen", - "favorite": "Favorit", - "unfavorite": "Aus Favoriten entfernen", - "menu": "Menü", - "hide": "Verstecken", - "show_image": "Bild anzeigen", - "show_gif": "GIF anzeigen", - "show_video_player": "Zeige Video-Player", - "tap_then_hold_to_show_menu": "Halte gedrückt um das Menü anzuzeigen" - }, - "tag": { - "url": "URL", - "mention": "Erwähnung", - "link": "Link", - "hashtag": "Hashtag", - "email": "E-Mail", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Jeder kann diesen Post sehen, aber nicht in der öffentlichen Timeline zeigen.", - "private": "Nur Follower des Authors können diesen Beitrag sehen.", - "private_from_me": "Nur meine Follower können diesen Beitrag sehen.", - "direct": "Nur erwähnte Benutzer können diesen Beitrag sehen." - } - }, - "friendship": { - "follow": "Folgen", - "following": "Folge Ich", - "request": "Anfragen", - "pending": "In Warteschlange", - "block": "Blockieren", - "block_user": "%s blockieren", - "block_domain": "%s blockieren", - "unblock": "Blockierung aufheben", - "unblock_user": "Blockierung von %s aufheben", - "blocked": "Blockiert", - "mute": "Stummschalten", - "mute_user": "%s stummschalten", - "unmute": "Nicht mehr stummschalten", - "unmute_user": "%s nicht mehr stummschalten", - "muted": "Stummgeschaltet", - "edit_info": "Information bearbeiten" - }, - "timeline": { - "filtered": "Gefiltert", - "timestamp": { - "now": "Gerade" - }, - "loader": { - "load_missing_posts": "Fehlende Beiträge laden", - "loading_missing_posts": "Lade fehlende Beiträge...", - "show_more_replies": "Weitere Antworten anzeigen" - }, - "header": { - "no_status_found": "Kein Beitrag gefunden", - "blocking_warning": "Du kannst das Profil dieses Benutzers nicht sehen\n solange du den Benutzer nicht entsperrst.\nDein Profil sieht für diesen Benutzer auch so aus.", - "user_blocking_warning": "Du kannst %ss Profil nicht sehen\nsolange du diesen Benutzer nicht entsperrst.\nDein Profil sieht für diesen Benutzer auch so aus.", - "blocked_warning": "Das Profil dieses Benutzers\nkann nicht angezeigt werden, bis er dich entsperrt.", - "user_blocked_warning": "Du kannst das Profil von %s nicht sehen \nbis der Benutzer dich entsperrt.", - "suspended_warning": "Dieser Nutzer wurde gesperrt.", - "user_suspended_warning": "Das Konto von %s wurde gesperrt." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Soziale Netzwerke wieder in deinen Händen.", - "get_started": "Erste Schritte", - "log_in": "Anmelden" - }, - "server_picker": { - "title": "Wähle einen Server,\nbeliebigen Server.", - "subtitle": "Wähle eine Gemeinschaft, die auf deinen Interessen, Region oder einem allgemeinen Zweck basiert.", - "subtitle_extend": "Wähle eine Gemeinschaft basierend auf deinen Interessen, deiner Region oder einem allgemeinen Zweck. Jede Gemeinschaft wird von einer völlig unabhängigen Organisation oder Einzelperson betrieben.", - "button": { - "category": { - "all": "Alle", - "all_accessiblity_description": "Kategorie: Alle", - "academia": "Wissenschaft", - "activism": "Aktivismus", - "food": "Essen", - "furry": "Furry", - "games": "Spiele", - "general": "Allgemein", - "journalism": "Journalismus", - "lgbt": "LGBT", - "regional": "Regional", - "art": "Kunst", - "music": "Musik", - "tech": "Technologie" - }, - "see_less": "Weniger anzeigen", - "see_more": "Mehr anzeigen" - }, - "label": { - "language": "SPRACHE", - "users": "BENUTZER", - "category": "KATEGORIE" - }, - "input": { - "placeholder": "Finde einen Server oder trete deinem eigenen bei...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Verfügbare Server werden gesucht...", - "bad_network": "Beim Laden der Daten ist etwas schief gelaufen. Überprüfe deine Internetverbindung.", - "no_results": "Keine Ergebnisse" - } - }, - "register": { - "title": "Erzähle uns von dir.", - "input": { - "avatar": { - "delete": "Löschen" - }, - "username": { - "placeholder": "Benutzername", - "duplicate_prompt": "Dieser Benutzername ist vergeben." - }, - "display_name": { - "placeholder": "Anzeigename" - }, - "email": { - "placeholder": "E-Mail" - }, - "password": { - "placeholder": "Passwort", - "require": "Anforderungen an dein Passwort:", - "character_limit": "8 Zeichen", - "accessibility": { - "checked": "Häkchen gesetzt", - "unchecked": "Häkchen entfernt" - }, - "hint": "Ihr Passwort muss mindestens 8 Zeichen lang sein" - }, - "invite": { - "registration_user_invite_request": "Warum möchtest du beitreten?" - } - }, - "error": { - "item": { - "username": "Benutzername", - "email": "E-Mail", - "password": "Passwort", - "agreement": "Vereinbarung", - "locale": "Sprache", - "reason": "Begründung" - }, - "reason": { - "blocked": "%s verwendet einen nicht erlaubten E-Mail-Anbieter", - "unreachable": "%s scheint nicht zu existieren", - "taken": "%s wird bereits verwendet", - "reserved": "%s ist ein reserviertes Schlüsselwort", - "accepted": "%s muss akzeptiert werden", - "blank": "%s ist erforderlich", - "invalid": "%s ist ungültig", - "too_long": "%s ist zu lang", - "too_short": "%s ist zu kurz", - "inclusion": "%s ist kein unterstützter Wert" - }, - "special": { - "username_invalid": "Benutzername kann nur alphanumerische Zeichen und Unterstriche enthalten", - "username_too_long": "Benutzername ist zu lang (darf nicht länger als 30 Zeichen sein)", - "email_invalid": "Dies ist keine gültige E-Mail-Adresse", - "password_too_short": "Passwort ist zu kurz (mindestens 8 Zeichen erforderlich)" - } - } - }, - "server_rules": { - "title": "Einige Grundregeln.", - "subtitle": "Diese Regeln werden von den Administratoren von %s festgelegt.", - "prompt": "Wenn du fortfährst, unterliegst du den Nutzungsbedingungen und den Datenschutzrichtlinien für %s.", - "terms_of_service": "Nutzungsbedingungen", - "privacy_policy": "Datenschutzerklärung", - "button": { - "confirm": "Ich stimme zu" - } - }, - "confirm_email": { - "title": "Noch eine letzte Sache.", - "subtitle": "Wir haben gerade eine E-Mail an %s gesendet,\ntippe darin auf den Link, um Dein Konto zu bestätigen.", - "button": { - "open_email_app": "E-Mail-App öffnen", - "resend": "Erneut senden" - }, - "dont_receive_email": { - "title": "Bitte überprüfe deine E-Mails", - "description": "Überprüfe, ob deine E-Mail-Adresse korrekt ist und sieh im Spam-Ordner nach, falls du es noch nicht getan hast.", - "resend_email": "E-Mail erneut versenden" - }, - "open_email_app": { - "title": "Überprüfe deinen Posteingang.", - "description": "Wir haben dir gerade eine E-Mail geschickt. Überprüfe deinen Spam-Ordner, falls du es noch nicht getan hast.", - "mail": "Mail", - "open_email_client": "E-Mail-Client öffnen" - } - }, - "home_timeline": { - "title": "Startseite", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "Neue Beiträge anzeigen", - "published": "Veröffentlicht!", - "Publishing": "Beitrag wird veröffentlicht...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Finde Personen zum Folgen", - "follow_explain": "Wenn du jemandem folgst, dann siehst du deren Beiträge in deinem Home-Feed." - }, - "compose": { - "title": { - "new_post": "Neuer Beitrag", - "new_reply": "Neue Antwort" - }, - "media_selection": { - "camera": "Foto aufnehmen", - "photo_library": "Fotobibliothek", - "browse": "Durchsuchen" - }, - "content_input_placeholder": "Tippe oder füge ein, was dir am Herzen liegt", - "compose_action": "Veröffentlichen", - "replying_to_user": "antwortet auf %s", - "attachment": { - "photo": "Foto", - "video": "Video", - "attachment_broken": "Dieses %s scheint defekt zu sein und\nkann nicht auf Mastodon hochgeladen werden.", - "description_photo": "Für Menschen mit Sehbehinderung beschreiben...", - "description_video": "Für Menschen mit Sehbehinderung beschreiben..." - }, - "poll": { - "duration_time": "Dauer: %s", - "thirty_minutes": "30 Minuten", - "one_hour": "1 Stunde", - "six_hours": "6 Stunden", - "one_day": "1 Tag", - "three_days": "3 Tage", - "seven_days": "7 Tage", - "option_number": "Auswahlmöglichkeit %ld" - }, - "content_warning": { - "placeholder": "Schreibe eine Inhaltswarnung hier..." - }, - "visibility": { - "public": "Öffentlich", - "unlisted": "Nicht gelistet", - "private": "Nur für Folgende", - "direct": "Nur für Leute, die ich erwähne" - }, - "auto_complete": { - "space_to_add": "Leerzeichen um hinzuzufügen" - }, - "accessibility": { - "append_attachment": "Anhang hinzufügen", - "append_poll": "Umfrage hinzufügen", - "remove_poll": "Umfrage entfernen", - "custom_emoji_picker": "Benutzerdefinierter Emojiwähler", - "enable_content_warning": "Inhaltswarnung einschalten", - "disable_content_warning": "Inhaltswarnung ausschalten", - "post_visibility_menu": "Sichtbarkeitsmenü" - }, - "keyboard": { - "discard_post": "Beitrag verwerfen", - "publish_post": "Beitrag veröffentlichen", - "toggle_poll": "Umfrage umschalten", - "toggle_content_warning": "Inhaltswarnung umschalten", - "append_attachment_entry": "Anhang hinzufügen - %s", - "select_visibility_entry": "Sichtbarkeit auswählen - %s" - } - }, - "profile": { - "dashboard": { - "posts": "Beiträge", - "following": "Gefolgte", - "followers": "Folger" - }, - "fields": { - "add_row": "Zeile hinzufügen", - "placeholder": { - "label": "Bezeichnung", - "content": "Inhalt" - } - }, - "segmented_control": { - "posts": "Beiträge", - "replies": "Antworten", - "posts_and_replies": "Beiträge und Antworten", - "media": "Medien", - "about": "Über" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Konto stummschalten", - "message": "Bestätige %s stumm zu schalten" - }, - "confirm_unmute_user": { - "title": "Ton einschalten", - "message": "Bestätige um %s nicht mehr stummzuschalten" - }, - "confirm_block_user": { - "title": "Konto blockieren", - "message": "Bestätige %s zu blockieren" - }, - "confirm_unblock_user": { - "title": "Konto entsperren", - "message": "Bestätige %s zu entsperren" - } - }, - "accessibility": { - "show_avatar_image": "Profilbild anzeigen", - "edit_avatar_image": "Profilbild bearbeiten", - "show_banner_image": "Bannerbild anzeigen", - "double_tap_to_open_the_list": "Doppeltippen, um die Liste zu öffnen" - } - }, - "follower": { - "footer": "Follower von anderen Servern werden nicht angezeigt." - }, - "following": { - "footer": "Wem das Konto folgt wird von anderen Servern werden nicht angezeigt." - }, - "search": { - "title": "Suche", - "search_bar": { - "placeholder": "Hashtags und Benutzer suchen", - "cancel": "Abbrechen" - }, - "recommend": { - "button_text": "Alle anzeigen", - "hash_tag": { - "title": "Angesagt auf Mastodon", - "description": "Hashtags die an Aufmerksamkeit zunehmen", - "people_talking": "%s Leute reden" - }, - "accounts": { - "title": "Konten, die dir gefallen könnten", - "description": "Vielleicht gefallen dir diese Benutzer", - "follow": "Folgen" - } - }, - "searching": { - "segment": { - "all": "Alles", - "people": "Personen", - "hashtags": "Hashtags", - "posts": "Beiträge" - }, - "empty_state": { - "no_results": "Keine Ergebnisse" - }, - "recent_search": "Zuletzt gesucht", - "clear": "Zurücksetzen" - } - }, - "discovery": { - "tabs": { - "posts": "Beiträge", - "hashtags": "Hashtags", - "news": "Nachrichten", - "community": "Community", - "for_you": "Für dich" - }, - "intro": "Dies sind die Beiträge, die in deiner Umgebung auf Mastodon beliebter werden." - }, - "favorite": { - "title": "Deine Favoriten" - }, - "notification": { - "title": { - "Everything": "Alles", - "Mentions": "Erwähnungen" - }, - "notification_description": { - "followed_you": "folgt dir", - "favorited_your_post": "hat deinen Beitrag favorisiert", - "reblogged_your_post": "hat deinen Beitrag geteilt", - "mentioned_you": "hat dich erwähnt", - "request_to_follow_you": "Folgeanfrage", - "poll_has_ended": "Umfrage wurde beendet" - }, - "keyobard": { - "show_everything": "Alles anzeigen", - "show_mentions": "Erwähnungen anzeigen" - } - }, - "thread": { - "back_title": "Beitrag", - "title": "Beitrag von %s" - }, - "settings": { - "title": "Einstellungen", - "section": { - "appearance": { - "title": "Darstellung", - "automatic": "Automatisch", - "light": "Immer hell", - "dark": "Immer dunkel" - }, - "look_and_feel": { - "title": "Erscheinungsbild", - "use_system": "Systemeinstellung benutzen", - "really_dark": "Wirklich dunkel", - "sorta_dark": "Ziemlich dunkel", - "light": "Hell" - }, - "notifications": { - "title": "Benachrichtigungen", - "favorites": "Meinen Beitrag favorisiert", - "follows": "Mir folgt", - "boosts": "Meinen Beitrag teilt", - "mentions": "Mich erwähnt", - "trigger": { - "anyone": "jeder", - "follower": "ein Folger", - "follow": "ein von mir Gefolgter", - "noone": "niemand", - "title": "Benachrichtige mich, wenn" - } - }, - "preference": { - "title": "Präferenzen", - "true_black_dark_mode": "Vollständig dunkler Dunkelmodus", - "disable_avatar_animation": "Animierte Profilbilder deaktivieren", - "disable_emoji_animation": "Animierte Emojis deaktivieren", - "using_default_browser": "Standardbrowser zum Öffnen von Links verwenden", - "open_links_in_mastodon": "Links in Mastodon öffnen" - }, - "boring_zone": { - "title": "Der langweilige Bereich", - "account_settings": "Kontoeinstellungen", - "terms": "Allgemeine Geschäftsbedingungen", - "privacy": "Datenschutzerklärung" - }, - "spicy_zone": { - "title": "Der Gefährliche Bereich", - "clear": "Medien-Cache leeren", - "signout": "Abmelden" - } - }, - "footer": { - "mastodon_description": "Mastodon ist quelloffene Software. Du kannst auf GitHub unter %s (%s) Probleme melden" - }, - "keyboard": { - "close_settings_window": "Einstellungsfenster schließen" - } - }, - "report": { - "title_report": "Melden", - "title": "%s melden", - "step1": "Schritt 1 von 2", - "step2": "Schritt 2 von 2", - "content1": "Gibt es noch weitere Beiträge, die du der Meldung hinzufügen möchtest?", - "content2": "Gibt es etwas, was die Moderatoren über diese Meldung wissen sollten?", - "report_sent_title": "Danke für deine Meldung, wir werden uns damit beschäftigen.", - "send": "Meldung abschicken", - "skip_to_send": "Ohne Kommentar abschicken", - "text_placeholder": "Zusätzliche Kommentare eingeben oder einfügen", - "reported": "GEMELDET", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Vorschau schließen", - "show_next": "Nächstes anzeigen", - "show_previous": "Vorheriges anzeigen" - } - }, - "account_list": { - "tab_bar_hint": "Aktuell ausgewähltes Profil: %s. Doppeltippen dann gedrückt halten, um den Kontoschalter anzuzeigen", - "dismiss_account_switcher": "Dialog zum Wechseln des Kontos schließen", - "add_account": "Konto hinzufügen" - }, - "wizard": { - "new_in_mastodon": "Neu in Mastodon", - "multiple_account_switch_intro_description": "Wechsel zwischen mehreren Konten durch Drücken der Profil-Schaltfläche.", - "accessibility_hint": "Doppeltippen, um diesen Assistenten zu schließen" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/de_DE/ios-infoPlist.json b/Localization/StringsConvertor/input/de_DE/ios-infoPlist.json deleted file mode 100644 index fe8fe1c1a..000000000 --- a/Localization/StringsConvertor/input/de_DE/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Verwendet um Fotos für neue Beiträge aufzunehmen", - "NSPhotoLibraryAddUsageDescription": "Verwendet um Fotos zu speichern", - "NewPostShortcutItemTitle": "Neuer Beitrag", - "SearchShortcutItemTitle": "Suche" -} diff --git a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict b/Localization/StringsConvertor/input/en_US/Localizable.stringsdict deleted file mode 100644 index 80cfd3d62..000000000 --- a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorite - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/en_US/app.json b/Localization/StringsConvertor/input/en_US/app.json deleted file mode 100644 index 12dd1e030..000000000 --- a/Localization/StringsConvertor/input/en_US/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Please try again.", - "please_try_again_later": "Please try again later." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Server Error" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Discard Draft", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." - }, - "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Delete Post", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/en_US/ios-infoPlist.json b/Localization/StringsConvertor/input/en_US/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/en_US/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict deleted file mode 100644 index a1edd3972..000000000 --- a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificación sin leer - other - %ld notificaciones sin leer - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - El límite de entrada excede %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - El límite de entrada permite %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - mensaje - other - mensajes - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mensaje - other - %ld mensajes - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorito - other - %ld favoritos - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 adhesión - other - %ld adhesiones - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 respuesta - other - %ld respuestas - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld votos - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votantes - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 cuenta hablando - other - %ld cuentas hablando - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - siguiendo a 1 - other - siguiendo a %ld - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidor - other - %ld seguidores - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 año restante - other - %ld años restantes - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mes restante - other - %ld meses restantes - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 día restante - other - %ld días restantes - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hora restante - other - %ld horas restantes - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto restante - other - %ld minutos restantes - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 segundo restante - other - %ld segundos restantes - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 año - other - hace %ld años - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 mes - other - hace %ld meses - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 día - other - hace %ld días - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 hora - other - hace %ld horas - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 minuto - other - hace %ld minutos - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 segundo - other - hace %ld segundos - - - - diff --git a/Localization/StringsConvertor/input/es_AR/app.json b/Localization/StringsConvertor/input/es_AR/app.json deleted file mode 100644 index 6ebbb4069..000000000 --- a/Localization/StringsConvertor/input/es_AR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Por favor, intentá de nuevo.", - "please_try_again_later": "Por favor, intentá de nuevo más tarde." - }, - "sign_up_failure": { - "title": "Error al registrarse" - }, - "server_error": { - "title": "Error del servidor" - }, - "vote_failure": { - "title": "Error al votar", - "poll_ended": "La encuesta finalizó" - }, - "discard_post_content": { - "title": "Descartar borrador", - "message": "Confirmá para descartar el contenido del mensaje redactado." - }, - "publish_post_failure": { - "title": "Error al enviar el mensaje", - "message": "Error al enviar en mensaje.\nPor favor, revisá tu conexión a Internet.", - "attachments_message": { - "video_attach_with_photo": "No se puede adjuntar un video a un mensaje que ya contenga imágenes.", - "more_than_one_video": "No se puede adjuntar más de un video." - } - }, - "edit_profile_failure": { - "title": "Error al editar el perfil", - "message": "No se pudo editar el perfil. Por favor, intentá de nuevo." - }, - "sign_out": { - "title": "Cerrar sesión", - "message": "¿Estás seguro que querés cerrar la sesión?", - "confirm": "Cerrar sesión" - }, - "block_domain": { - "title": "¿Estás completamente seguro que querés bloquear el %s entero? En la mayoría de los casos, unos cuantos bloqueos y silenciados puntuales son suficientes y preferibles. No vas a ver contenido de ese dominio y todos tus seguidores de ese dominio serán quitados.", - "block_entire_domain": "Bloquear dominio" - }, - "save_photo_failure": { - "title": "Error al guardar la imagen", - "message": "Por favor, habilitá el permiso de acceso a la biblioteca de fotos para guardar la imagen." - }, - "delete_post": { - "title": "Eliminar mensaje", - "message": "¿Estás seguro que querés eliminar este mensaje?" - }, - "clean_cache": { - "title": "Limpiar caché", - "message": "Se limpió exitosamente %s de la memoria caché." - } - }, - "controls": { - "actions": { - "back": "Volver", - "next": "Siguiente", - "previous": "Anterior", - "open": "Abrir", - "add": "Agregar", - "remove": "Quitar", - "edit": "Editar", - "save": "Guardar", - "ok": "Aceptar", - "done": "Listo", - "confirm": "Confirmar", - "continue": "Continuar", - "compose": "Redactar", - "cancel": "Cancelar", - "discard": "Descartar", - "try_again": "Intentá de nuevo", - "take_photo": "Tomar foto", - "save_photo": "Guardar foto", - "copy_photo": "Copiar foto", - "sign_in": "Iniciar sesión", - "sign_up": "Registrarse", - "see_more": "Ver más", - "preview": "Previsualización", - "share": "Compartir", - "share_user": "Compartir %s", - "share_post": "Compartir mensaje", - "open_in_safari": "Abrir en Safari", - "open_in_browser": "Abrir en el navegador", - "find_people": "Encontrá cuentas para seguir", - "manually_search": "Buscar manualmente", - "skip": "Omitir", - "reply": "Responder", - "report_user": "Denunciar a %s", - "block_domain": "Bloquear a %s", - "unblock_domain": "Desbloquear a %s", - "settings": "Configuración", - "delete": "Eliminar" - }, - "tabs": { - "home": "Principal", - "search": "Buscar", - "notification": "Notificación", - "profile": "Perfil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Cambiar a %s", - "compose_new_post": "Redactar un nuevo mensaje", - "show_favorites": "Mostrar favoritos", - "open_settings": "Abrir Configuración" - }, - "timeline": { - "previous_status": "Mensaje anterior", - "next_status": "Mensaje siguiente", - "open_status": "Abrir mensaje", - "open_author_profile": "Abrir perfil del autor", - "open_reblogger_profile": "Abrir perfil del adherente", - "reply_status": "Responder al mensaje", - "toggle_reblog": "Cambiar adhesión al mensaje", - "toggle_favorite": "Cambiar marca de favorito del mensaje", - "toggle_content_warning": "Cambiar modo de advertencia de contenido", - "preview_image": "Previsualizar imagen" - }, - "segmented_control": { - "previous_section": "Sección anterior", - "next_section": "Sección siguiente" - } - }, - "status": { - "user_reblogged": "%s adhirió", - "user_replied_to": "Respondió a %s", - "show_post": "Mostrar mensaje", - "show_user_profile": "Mostrar perfil de usuario", - "content_warning": "Advertencia de contenido", - "sensitive_content": "Contenido sensible", - "media_content_warning": "Tocá en cualquier parte para mostrar", - "tap_to_reveal": "Tocá para mostrar", - "poll": { - "vote": "Votar", - "closed": "Cerrada" - }, - "actions": { - "reply": "Responder", - "reblog": "Adherir", - "unreblog": "Deshacer adhesión", - "favorite": "Marcar como favorito", - "unfavorite": "Dejar de marcar como favorito", - "menu": "Menú", - "hide": "Ocultar", - "show_image": "Mostrar imagen", - "show_gif": "Mostrar GIF", - "show_video_player": "Mostrar reproductor de video", - "tap_then_hold_to_show_menu": "Tocá y mantené presionado para mostrar el menú" - }, - "tag": { - "url": "Dirección web", - "mention": "Mención", - "link": "Enlace", - "hashtag": "Etiqueta", - "email": "Correo electrónico", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Todo el mundo puede ver este mensaje pero no mostrarse en la línea temporal pública.", - "private": "Sólo sus seguidores pueden ver este mensaje.", - "private_from_me": "Sólo mis seguidores pueden ver este mensaje.", - "direct": "Sólo el usuario mencionado puede ver este mensaje." - } - }, - "friendship": { - "follow": "Seguir", - "following": "Siguiendo", - "request": "Solicitar", - "pending": "Pendientes", - "block": "Bloquear", - "block_user": "Bloquear a %s", - "block_domain": "Bloquear %s", - "unblock": "Desbloquear", - "unblock_user": "Desbloquear a %s", - "blocked": "Bloqueado", - "mute": "Silenciar", - "mute_user": "Silenciar a %s", - "unmute": "Dejar de silenciar", - "unmute_user": "Dejar de silenciar a %s", - "muted": "Silenciado", - "edit_info": "Editar información" - }, - "timeline": { - "filtered": "Filtrado", - "timestamp": { - "now": "Ahora" - }, - "loader": { - "load_missing_posts": "Cargar mensajes faltantes", - "loading_missing_posts": "Cargando mensajes faltantes…", - "show_more_replies": "Mostrar más respuestas" - }, - "header": { - "no_status_found": "Mensaje no encontrado", - "blocking_warning": "No podés ver el perfil de este usuario\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", - "user_blocking_warning": "No podés ver el perfil de %s\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", - "blocked_warning": "No podés ver el perfil de este usuario\n hasta que dicho usuario te desbloquee.", - "user_blocked_warning": "No podés ver el perfil de %s\n hasta que dicho usuario te desbloquee.", - "suspended_warning": "Este usuario está suspendido.", - "user_suspended_warning": "La cuenta de %s está suspendida." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "La red social,\nnuevamente en tu poder.", - "get_started": "Comenzá", - "log_in": "Iniciar sesión" - }, - "server_picker": { - "title": "Elegí un servidor,\nel que quieras.", - "subtitle": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales.", - "subtitle_extend": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales. Cada comunidad es operada por una organización o individuo totalmente independiente.", - "button": { - "category": { - "all": "Todas", - "all_accessiblity_description": "Categoría: Todas", - "academia": "académico", - "activism": "activismo", - "food": "comida", - "furry": "furry", - "games": "juegos", - "general": "general", - "journalism": "periodismo", - "lgbt": "lgbtq+", - "regional": "regional", - "art": "arte", - "music": "música", - "tech": "tecnología" - }, - "see_less": "Ver menos", - "see_more": "Ver más" - }, - "label": { - "language": "IDIOMA", - "users": "CUENTAS", - "category": "CATEGORÍA" - }, - "input": { - "placeholder": "Encontrá un servidor o unite al tuyo…", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Buscando servidores disponibles…", - "bad_network": "Algo salió mal al cargar los datos. Revisá tu conexión de Internet.", - "no_results": "No hay resultados" - } - }, - "register": { - "title": "Contanos sobre vos.", - "input": { - "avatar": { - "delete": "Eliminar" - }, - "username": { - "placeholder": "nombre de usuario", - "duplicate_prompt": "Este nombre de usuario ya está en uso." - }, - "display_name": { - "placeholder": "nombre para mostrar" - }, - "email": { - "placeholder": "correo electrónico" - }, - "password": { - "placeholder": "contraseña", - "require": "Tu contraseña necesita al menos:", - "character_limit": "8 caracteres", - "accessibility": { - "checked": "marcado", - "unchecked": "sin marcar" - }, - "hint": "Tu contraseña necesita al menos ocho caracteres" - }, - "invite": { - "registration_user_invite_request": "¿Por qué querés unirte?" - } - }, - "error": { - "item": { - "username": "Nombre de usuario", - "email": "Correo electrónico", - "password": "Contraseña", - "agreement": "Acuerdo", - "locale": "Idioma de la interface", - "reason": "Motivo" - }, - "reason": { - "blocked": "%s contiene un proveedor de correo electrónico no permitido", - "unreachable": "%s parece no existir", - "taken": "%s ya está en uso", - "reserved": "%s es una palabra clave reservada", - "accepted": "%s debe ser aceptado", - "blank": "%s es obligatorio", - "invalid": "%s no es válido", - "too_long": "%s es demasiado largo", - "too_short": "%s es demasiado corto", - "inclusion": "%s no es un valor soportado" - }, - "special": { - "username_invalid": "El nombre de usuario sólo debe contener caracteres alfanuméricos sin signos diacríticos y subguiones (\\\"_\\\")", - "username_too_long": "El nombre de usuario es demasiado largo (no puede tener más de 30 caracteres)", - "email_invalid": "Esta no es una dirección de correo electrónico válida", - "password_too_short": "La contraseña es demasiado corta (debe tener al menos 8 caracteres)" - } - } - }, - "server_rules": { - "title": "Algunas reglas básicas.", - "subtitle": "Estas reglas son establecidas por los administradores de %s.", - "prompt": "Al continuar, estás sujeto a los términos de servicio y política de privacidad de %s.", - "terms_of_service": "términos del servicio", - "privacy_policy": "política de privacidad", - "button": { - "confirm": "Estoy de acuerdo" - } - }, - "confirm_email": { - "title": "Una última cosa.", - "subtitle": "Acabamos de enviar un correo electrónico a %s,\npulsá en el enlace para confirmar tu cuenta.", - "button": { - "open_email_app": "Abrir aplicación de correo electrónico", - "resend": "Reenviar" - }, - "dont_receive_email": { - "title": "Revisá tu correo electrónico", - "description": "Revisá si tu dirección de correo electrónico es correcta así como tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste.", - "resend_email": "Reenviar correo electrónico" - }, - "open_email_app": { - "title": "Revisá tu bandeja de entrada.", - "description": "Te acabamos de enviar un correo electrónico. Revisá tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste.", - "mail": "Correo", - "open_email_client": "Abrir cliente de correo electrónico" - } - }, - "home_timeline": { - "title": "Principal", - "navigation_bar_state": { - "offline": "Desconectado", - "new_posts": "Ver nuevos mensajes", - "published": "¡Enviado!", - "Publishing": "Enviando mensaje…", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Encontrá cuentas para seguir", - "follow_explain": "Cuando sigás a alguien, verás sus mensajes en tu línea temporal principal." - }, - "compose": { - "title": { - "new_post": "Nuevo mensaje", - "new_reply": "Nueva respuesta" - }, - "media_selection": { - "camera": "Tomar foto", - "photo_library": "Biblioteca de fotos", - "browse": "Explorar" - }, - "content_input_placeholder": "¿Qué onda?", - "compose_action": "Enviar", - "replying_to_user": "respondiendo a %s", - "attachment": { - "photo": "foto", - "video": "video", - "attachment_broken": "Este archivo de %s está roto\ny no se puede subir a Mastodon.", - "description_photo": "Describí la foto para personas con dificultades visuales…", - "description_video": "Describí el video para personas con dificultades visuales…" - }, - "poll": { - "duration_time": "Duración: %s", - "thirty_minutes": "30 minutos", - "one_hour": "1 hora", - "six_hours": "6 horas", - "one_day": "1 día", - "three_days": "3 días", - "seven_days": "7 días", - "option_number": "Opción %ld" - }, - "content_warning": { - "placeholder": "Escribí una advertencia precisa acá…" - }, - "visibility": { - "public": "Público", - "unlisted": "No listado", - "private": "Sólo para seguidores", - "direct": "Sólo a las cuentas que menciono" - }, - "auto_complete": { - "space_to_add": "Espacio para agregar" - }, - "accessibility": { - "append_attachment": "Agregar archivo adjunto", - "append_poll": "Agregar encuesta", - "remove_poll": "Quitar encuesta", - "custom_emoji_picker": "Selector de emoji personalizado", - "enable_content_warning": "Habilitar advertencia de contenido", - "disable_content_warning": "Deshabilitar advertencia de contenido", - "post_visibility_menu": "Menú de visibilidad del mensaje" - }, - "keyboard": { - "discard_post": "Descartar mensaje", - "publish_post": "Enviar mensaje", - "toggle_poll": "Cambiar encuesta", - "toggle_content_warning": "Cambiar advertencia de contenido", - "append_attachment_entry": "Agregar archivo adjunto - %s", - "select_visibility_entry": "Seleccionar visibilidad - %s" - } - }, - "profile": { - "dashboard": { - "posts": "mensajes", - "following": "siguiendo", - "followers": "seguidores" - }, - "fields": { - "add_row": "Agregar fila", - "placeholder": { - "label": "Nombre de campo", - "content": "Valor de campo" - } - }, - "segmented_control": { - "posts": "Mensajes", - "replies": "Respuestas", - "posts_and_replies": "Mensajes y respuestas", - "media": "Medios", - "about": "Información" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Silenciar cuenta", - "message": "Confirmá para silenciar a %s" - }, - "confirm_unmute_user": { - "title": "Dejar de silenciar cuenta", - "message": "Confirmá para dejar de silenciar a %s" - }, - "confirm_block_user": { - "title": "Bloquear cuenta", - "message": "Confirmá para desbloquear a %s" - }, - "confirm_unblock_user": { - "title": "Desbloquear cuenta", - "message": "Confirmá para desbloquear a %s" - } - }, - "accessibility": { - "show_avatar_image": "Mostrar imagen de avatar", - "edit_avatar_image": "Editar imagen de avatar", - "show_banner_image": "Mostrar imagen de banner", - "double_tap_to_open_the_list": "Tocá dos veces para abrir la lista" - } - }, - "follower": { - "footer": "No se muestran los seguidores de otros servidores." - }, - "following": { - "footer": "No se muestran las cuentas de otros servidores que seguís." - }, - "search": { - "title": "Buscar", - "search_bar": { - "placeholder": "Buscar etiquetas y cuentas", - "cancel": "Cancelar" - }, - "recommend": { - "button_text": "Ver todos", - "hash_tag": { - "title": "Tendencias en Mastodon", - "description": "Etiquetas que están recibiendo bastante atención", - "people_talking": "%s cuentas están hablando" - }, - "accounts": { - "title": "Cuentas que te pueden gustar", - "description": "Puede que te guste seguir estas cuentas", - "follow": "Seguir" - } - }, - "searching": { - "segment": { - "all": "Todas", - "people": "Cuentas", - "hashtags": "Etiquetas", - "posts": "Mensajes" - }, - "empty_state": { - "no_results": "No hay resultados" - }, - "recent_search": "Búsquedas recientes", - "clear": "Limpiar" - } - }, - "discovery": { - "tabs": { - "posts": "Mensajes", - "hashtags": "Etiquetas", - "news": "Novedades", - "community": "Comunidad", - "for_you": "Para vos" - }, - "intro": "Estos son los mensajes que están ganando tracción en tu rincón de Mastodon." - }, - "favorite": { - "title": "Tus favoritos" - }, - "notification": { - "title": { - "Everything": "Todo", - "Mentions": "Menciones" - }, - "notification_description": { - "followed_you": "te sigue", - "favorited_your_post": "marcó como favorito tu mensaje", - "reblogged_your_post": "adhirió a tu mensaje", - "mentioned_you": "te mencionó", - "request_to_follow_you": "solicitó seguirte", - "poll_has_ended": "la encuesta terminó" - }, - "keyobard": { - "show_everything": "Mostrar todo", - "show_mentions": "Mostrar menciones" - } - }, - "thread": { - "back_title": "Mensaje", - "title": "Mensaje de %s" - }, - "settings": { - "title": "Configuración", - "section": { - "appearance": { - "title": "Apariencia", - "automatic": "Automática", - "light": "Siempre clara", - "dark": "Siempre oscura" - }, - "look_and_feel": { - "title": "Apariencia", - "use_system": "Usar sistema", - "really_dark": "Oscuro de verdad", - "sorta_dark": "Algo oscuro", - "light": "Claro" - }, - "notifications": { - "title": "Notificaciones", - "favorites": "Marcó como favorito mi mensaje", - "follows": "Me sigue", - "boosts": "Adhirió a mi mensaje", - "mentions": "Me mencionó", - "trigger": { - "anyone": "cualquiera", - "follower": "un seguidor", - "follow": "alguien a quien sigo", - "noone": "nadie", - "title": "Notificarme cuando" - } - }, - "preference": { - "title": "Configuración", - "true_black_dark_mode": "Modo negro oscuro real", - "disable_avatar_animation": "Deshabilitar avatares animados", - "disable_emoji_animation": "Deshabilitar emojis animados", - "using_default_browser": "Usar navegador web predeterminado para abrir enlaces", - "open_links_in_mastodon": "Abrir enlaces en Mastodon" - }, - "boring_zone": { - "title": "La zona aburrida", - "account_settings": "Configuración de la cuenta", - "terms": "Términos del servicio", - "privacy": "Política de privacidad" - }, - "spicy_zone": { - "title": "La zona picante", - "clear": "Limpiar memoria caché multimedia", - "signout": "Cerrar sesión" - } - }, - "footer": { - "mastodon_description": "Mastodon es software de código abierto. Podés informar errores en GitHub en %s (%s)" - }, - "keyboard": { - "close_settings_window": "Cerrar ventana de configuración" - } - }, - "report": { - "title_report": "Denunciar", - "title": "Denunciar a %s", - "step1": "Paso 1 de 2", - "step2": "Paso 2 de 2", - "content1": "¿Hay otros mensajes que te gustaría agregar a la denuncia?", - "content2": "¿Hay algo que los moderadores deban saber sobre esta denuncia?", - "report_sent_title": "Gracias por tu denuncia, vamos a revisarla.", - "send": "Enviar denuncia", - "skip_to_send": "Enviar sin comentarios", - "text_placeholder": "Escribí o pegá comentarios adicionales", - "reported": "DENUNCIADA", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Cerrar previsualización", - "show_next": "Mostrar siguiente", - "show_previous": "Mostrar anterior" - } - }, - "account_list": { - "tab_bar_hint": "Perfil seleccionado actualmente: %s. Tocá dos veces y mantenelo presionado para cambiar de cuenta", - "dismiss_account_switcher": "Descartar cambio de cuenta", - "add_account": "Agregar cuenta" - }, - "wizard": { - "new_in_mastodon": "Novedad en Mastodon", - "multiple_account_switch_intro_description": "Cambiá entre varias cuentas manteniendo presionado el botón del perfil.", - "accessibility_hint": "Tocá dos veces para descartar este asistente" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/es_AR/ios-infoPlist.json b/Localization/StringsConvertor/input/es_AR/ios-infoPlist.json deleted file mode 100644 index e9873af8f..000000000 --- a/Localization/StringsConvertor/input/es_AR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Usado para tomar fotos para los mensajes", - "NSPhotoLibraryAddUsageDescription": "Usado para guardar la foto en la Biblioteca de fotos", - "NewPostShortcutItemTitle": "Nuevo mensaje", - "SearchShortcutItemTitle": "Buscar" -} diff --git a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict deleted file mode 100644 index 31cd9d237..000000000 --- a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificación no leída - other - %ld notificaciones no leídas - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Límite de entrada superado en %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carácter - other - %ld caracteres - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Límite de entrada restante: %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carácter - other - %ld caracteres - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - publicación - other - publicaciones - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 publicación - other - %ld publicaciones - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorito - other - %ld favoritos - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblogueo - other - %ld reblogueos - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 respuesta - other - %ld respuestas - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld votos - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votantes - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 persona hablando - other - %ld personas están hablando de esto - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 siguiendo - other - %ld siguiendo - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidor - other - %ld seguidores - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 año restante - other - %ld años restantes - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mes restante - other - %ld meses restantes - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 día restante - other - %ld días restantes - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hora restante - other - %ld horas restantes - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto restante - other - %ld minutos restantes - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 segundo restante - other - %ld segundos restantes - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 año - other - Hace %ld años - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 mes - other - Hace %ld meses - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 día - other - Hace %ld días - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 h - other - Hace %ld h - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 min - other - Hace %ld min - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hace 1 s - other - Hace %ld s - - - - diff --git a/Localization/StringsConvertor/input/es_ES/app.json b/Localization/StringsConvertor/input/es_ES/app.json deleted file mode 100644 index f19001a54..000000000 --- a/Localization/StringsConvertor/input/es_ES/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Por favor, vuelve a intentarlo.", - "please_try_again_later": "Por favor, vuelve a intentarlo más tarde." - }, - "sign_up_failure": { - "title": "Error al registrarse" - }, - "server_error": { - "title": "Error del servidor" - }, - "vote_failure": { - "title": "Voto fallido", - "poll_ended": "La encuesta ha terminado" - }, - "discard_post_content": { - "title": "Descartar borrador", - "message": "Confirma para descartar el contenido de la publicación." - }, - "publish_post_failure": { - "title": "Error de publicación", - "message": "No se pudo publicar la publicación.\nPor favor, revise su conexión a internet.", - "attachments_message": { - "video_attach_with_photo": "No puedes adjuntar un vídeo a una publicación que ya contiene imágenes.", - "more_than_one_video": "No puedes adjuntar más de un vídeo." - } - }, - "edit_profile_failure": { - "title": "Error en la Edición del Perfil", - "message": "No se ha podido editar el perfil. Por favor, inténtalo de nuevo." - }, - "sign_out": { - "title": "Cerrar Sesión", - "message": "¿Estás seguro de que deseas cerrar la sesión?", - "confirm": "Cerrar Sesión" - }, - "block_domain": { - "title": "¿Estás realmente seguro, de verdad, de que quieres bloquear %s al completo? En la mayoría de los casos, unos pocos bloqueos o silenciados concretos son suficientes y preferibles. No verás contenido de ese dominio y todos tus seguidores de ese dominio serán eliminados.", - "block_entire_domain": "Bloquear Dominio" - }, - "save_photo_failure": { - "title": "Error al Guardar Foto", - "message": "Por favor, activa el permiso de acceso a la biblioteca de fotos para guardar la foto." - }, - "delete_post": { - "title": "¿Estás seguro de que deseas eliminar esta publicación?", - "message": "¿Estás seguro de que quieres borrar esta publicación?" - }, - "clean_cache": { - "title": "Limpiar Caché", - "message": "Se han limpiado con éxito %s de caché." - } - }, - "controls": { - "actions": { - "back": "Atrás", - "next": "Siguiente", - "previous": "Anterior", - "open": "Abrir", - "add": "Añadir", - "remove": "Eliminar", - "edit": "Editar", - "save": "Guardar", - "ok": "Aceptar", - "done": "Hecho", - "confirm": "Confirmar", - "continue": "Continuar", - "compose": "Redactar", - "cancel": "Cancelar", - "discard": "Descartar", - "try_again": "Inténtalo de nuevo", - "take_photo": "Tomar foto", - "save_photo": "Guardar foto", - "copy_photo": "Copiar foto", - "sign_in": "Iniciar sesión", - "sign_up": "Regístrate", - "see_more": "Ver más", - "preview": "Vista previa", - "share": "Compartir", - "share_user": "Compartir %s", - "share_post": "Compartir publicación", - "open_in_safari": "Abrir en Safari", - "open_in_browser": "Abrir en el navegador", - "find_people": "Encuentra gente a la que seguir", - "manually_search": "Mejor hacer una búsqueda manual", - "skip": "Omitir", - "reply": "Responder", - "report_user": "Reportar a %s", - "block_domain": "Bloquear %s", - "unblock_domain": "Desbloquear %s", - "settings": "Configuración", - "delete": "Borrar" - }, - "tabs": { - "home": "Inicio", - "search": "Buscar", - "notification": "Notificación", - "profile": "Perfil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Cambiar a %s", - "compose_new_post": "Escribir Nueva Publicación", - "show_favorites": "Mostrar Favoritos", - "open_settings": "Abrir Configuración" - }, - "timeline": { - "previous_status": "Publicación Anterior", - "next_status": "Siguiente Publicación", - "open_status": "Abrir Publicación", - "open_author_profile": "Abrir Perfil del Autor", - "open_reblogger_profile": "Abrir Perfil del Reblogueador", - "reply_status": "Responder Publicación", - "toggle_reblog": "Conmutar el Reblogueo en la Publicación", - "toggle_favorite": "Conmutar la Marca de Favorito en la Publicación", - "toggle_content_warning": "Alternar la Advertencia de Contenido", - "preview_image": "Previsualizar Imagen" - }, - "segmented_control": { - "previous_section": "Sección Anterior", - "next_section": "Siguiente Sección" - } - }, - "status": { - "user_reblogged": "%s lo reblogueó", - "user_replied_to": "En respuesta a %s", - "show_post": "Mostrar Publicación", - "show_user_profile": "Mostrar perfil del usuario", - "content_warning": "Advertencia de Contenido", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Pulsa en cualquier sitio para mostrar", - "tap_to_reveal": "Tocar para revelar", - "poll": { - "vote": "Vota", - "closed": "Cerrado" - }, - "actions": { - "reply": "Responder", - "reblog": "Rebloguear", - "unreblog": "Deshacer reblogueo", - "favorite": "Favorito", - "unfavorite": "No favorito", - "menu": "Menú", - "hide": "Ocultar", - "show_image": "Mostrar imagen", - "show_gif": "Mostrar GIF", - "show_video_player": "Mostrar reproductor de vídeo", - "tap_then_hold_to_show_menu": "Toca, después mantén para mostrar el menú" - }, - "tag": { - "url": "URL", - "mention": "Mención", - "link": "Enlace", - "hashtag": "Etiqueta", - "email": "E-mail", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Todo el mundo puede ver este post pero no mostrar en la línea de tiempo pública.", - "private": "Sólo sus seguidores pueden ver este mensaje.", - "private_from_me": "Sólo mis seguidores pueden ver este mensaje.", - "direct": "Sólo el usuario mencionado puede ver este mensaje." - } - }, - "friendship": { - "follow": "Seguir", - "following": "Siguiendo", - "request": "Solicitud", - "pending": "Pendiente", - "block": "Bloquear", - "block_user": "Bloquear a %s", - "block_domain": "Bloquear a %s", - "unblock": "Desbloquear", - "unblock_user": "Desbloquear a %s", - "blocked": "Bloqueado", - "mute": "Silenciar", - "mute_user": "Silenciar a %s", - "unmute": "Desmutear", - "unmute_user": "Desmutear a %s", - "muted": "Silenciado", - "edit_info": "Editar Info" - }, - "timeline": { - "filtered": "Filtrado", - "timestamp": { - "now": "Ahora" - }, - "loader": { - "load_missing_posts": "Cargar publicaciones faltantes", - "loading_missing_posts": "Cargando publicaciones faltantes...", - "show_more_replies": "Mostrar más respuestas" - }, - "header": { - "no_status_found": "No se ha encontrado ninguna publicación", - "blocking_warning": "No puedes ver el perfil de este usuario\n hasta que lo desbloquees.\nTu perfil se ve así para él.", - "user_blocking_warning": "No puedes ver el perfil de %s\n hasta que lo desbloquees.\nTu perfil se ve así para él.", - "blocked_warning": "No puedes ver el perfil de este usuario\n hasta que te desbloquee.", - "user_blocked_warning": "No puedes ver el perfil de %s\n hasta que te desbloquee.", - "suspended_warning": "Este usuario ha sido suspendido.", - "user_suspended_warning": "La cuenta de %s ha sido suspendida." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Las redes sociales\nde nuevo en tus manos.", - "get_started": "Empezar", - "log_in": "Iniciar sesión" - }, - "server_picker": { - "title": "Elige un servidor,\ncualquier servidor.", - "subtitle": "Elige una comunidad relacionada con tus intereses, con tu región o una más genérica.", - "subtitle_extend": "Elige una comunidad relacionada con tus intereses, con tu región o una más genérica. Cada comunidad está operada por una organización o individuo completamente independiente.", - "button": { - "category": { - "all": "Todas", - "all_accessiblity_description": "Categoría: Todas", - "academia": "académicos", - "activism": "activismo", - "food": "comida", - "furry": "furry", - "games": "juegos", - "general": "general", - "journalism": "periodismo", - "lgbt": "lgbt", - "regional": "regional", - "art": "arte", - "music": "música", - "tech": "tecnología" - }, - "see_less": "Ver Menos", - "see_more": "Ver Más" - }, - "label": { - "language": "IDIOMA", - "users": "USUARIOS", - "category": "CATEGORÍA" - }, - "input": { - "placeholder": "Encuentra un servidor o únete al tuyo propio...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Encontrando servidores disponibles...", - "bad_network": "Algo ha ido mal al cargar los datos. Comprueba tu conexión a Internet.", - "no_results": "Sin resultados" - } - }, - "register": { - "title": "Háblanos de ti.", - "input": { - "avatar": { - "delete": "Borrar" - }, - "username": { - "placeholder": "nombre de usuario", - "duplicate_prompt": "Este nombre de usuario ya está en uso." - }, - "display_name": { - "placeholder": "nombre a mostrar" - }, - "email": { - "placeholder": "correo electrónico" - }, - "password": { - "placeholder": "contraseña", - "require": "Tu contraseña debe contener como mínimo:", - "character_limit": "8 caracteres", - "accessibility": { - "checked": "marcado", - "unchecked": "sin marcar" - }, - "hint": "Tu contraseña necesita tener al menos ocho caracteres" - }, - "invite": { - "registration_user_invite_request": "¿Por qué quieres unirte?" - } - }, - "error": { - "item": { - "username": "Nombre de usuario", - "email": "Correo electrónico", - "password": "Contraseña", - "agreement": "Aceptación", - "locale": "Idioma", - "reason": "Motivo" - }, - "reason": { - "blocked": "%s contiene un proveedor de correo no permitido", - "unreachable": "%s parece no existir", - "taken": "%s ya está en uso", - "reserved": "%s es una palabra clave reservada", - "accepted": "%s debe ser aceptado", - "blank": "Se requiere %s", - "invalid": "%s no es válido", - "too_long": "%s es demasiado largo", - "too_short": "%s es demasiado corto", - "inclusion": "%s no es un valor admitido" - }, - "special": { - "username_invalid": "El nombre de usuario solo puede contener caracteres alfanuméricos y guiones bajos", - "username_too_long": "El nombre de usuario es demasiado largo (no puede tener más de 30 caracteres)", - "email_invalid": "Esta no es una dirección de correo electrónico válida", - "password_too_short": "La contraseña es demasiado corta (debe tener al menos 8 caracteres)" - } - } - }, - "server_rules": { - "title": "Algunas reglas básicas.", - "subtitle": "Estas reglas están establecidas por los administradores de %s.", - "prompt": "Si continúas estarás sujeto a los términos de servicio y la política de privacidad de %s.", - "terms_of_service": "términos del servicio", - "privacy_policy": "política de privacidad", - "button": { - "confirm": "Acepto" - } - }, - "confirm_email": { - "title": "Una última cosa.", - "subtitle": "Te acabamos de enviar un correo a %s,\npulsa en el enlace para confirmar tu cuenta.", - "button": { - "open_email_app": "Abrir Aplicación de Correo Electrónico", - "resend": "Reenviar" - }, - "dont_receive_email": { - "title": "Revisa tu correo electrónico", - "description": "Comprueba que tu dirección de correo electrónico sea correcta y revisa la carpeta de correo no deseado si no lo has hecho ya.", - "resend_email": "Volver a Enviar Correo Electrónico" - }, - "open_email_app": { - "title": "Revisa tu bandeja de entrada.", - "description": "Te acabamos de enviar un correo electrónico. Revisa tu carpeta de correo no deseado si no lo has hecho ya.", - "mail": "Correo", - "open_email_client": "Abrir Cliente de Correo Electrónico" - } - }, - "home_timeline": { - "title": "Inicio", - "navigation_bar_state": { - "offline": "Sin Conexión", - "new_posts": "Ver nuevas publicaciones", - "published": "¡Publicado!", - "Publishing": "Publicación en curso...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Encuentra Gente a la que Seguir", - "follow_explain": "Cuando sigas a alguien verás sus publicaciones en tu página de inicio." - }, - "compose": { - "title": { - "new_post": "Nueva Publicación", - "new_reply": "Nueva Respuesta" - }, - "media_selection": { - "camera": "Hacer Foto", - "photo_library": "Galería de Fotos", - "browse": "Explorar" - }, - "content_input_placeholder": "Escribe o pega lo que tengas en mente", - "compose_action": "Publicar", - "replying_to_user": "en respuesta a %s", - "attachment": { - "photo": "foto", - "video": "vídeo", - "attachment_broken": "Este %s está roto y no puede\nsubirse a Mastodon.", - "description_photo": "Describe la foto para los usuarios con dificultad visual...", - "description_video": "Describe el vídeo para los usuarios con dificultad visual..." - }, - "poll": { - "duration_time": "Duración: %s", - "thirty_minutes": "30 minutos", - "one_hour": "1 Hora", - "six_hours": "6 Horas", - "one_day": "1 Día", - "three_days": "4 Días", - "seven_days": "7 Días", - "option_number": "Opción %ld" - }, - "content_warning": { - "placeholder": "Escribe una advertencia precisa aquí..." - }, - "visibility": { - "public": "Pública", - "unlisted": "Sin listar", - "private": "Solo seguidores", - "direct": "Solo la gente que yo menciono" - }, - "auto_complete": { - "space_to_add": "Espacio para añadir" - }, - "accessibility": { - "append_attachment": "Añadir Adjunto", - "append_poll": "Añadir Encuesta", - "remove_poll": "Eliminar Encuesta", - "custom_emoji_picker": "Selector de Emojis Personalizados", - "enable_content_warning": "Activar Advertencia de Contenido", - "disable_content_warning": "Desactivar Advertencia de Contenido", - "post_visibility_menu": "Menú de Visibilidad de la Publicación" - }, - "keyboard": { - "discard_post": "Descartar Publicación", - "publish_post": "Publicar", - "toggle_poll": "Conmutar Encuesta", - "toggle_content_warning": "Conmutar Advertencia de Contenido", - "append_attachment_entry": "Añadir Adjunto - %s", - "select_visibility_entry": "Seleccionar Visibilidad - %s" - } - }, - "profile": { - "dashboard": { - "posts": "publicaciones", - "following": "siguiendo", - "followers": "seguidores" - }, - "fields": { - "add_row": "Añadir Fila", - "placeholder": { - "label": "Nombre para el campo", - "content": "Contenido" - } - }, - "segmented_control": { - "posts": "Publicaciones", - "replies": "Respuestas", - "posts_and_replies": "Publicaciones y respuestas", - "media": "Multimedia", - "about": "Acerca de" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Silenciar cuenta", - "message": "Confirmar para silenciar %s" - }, - "confirm_unmute_user": { - "title": "Dejar de Silenciar Cuenta", - "message": "Confirmar para dejar de silenciar a %s" - }, - "confirm_block_user": { - "title": "Bloquear cuenta", - "message": "Confirmar para bloquear a %s" - }, - "confirm_unblock_user": { - "title": "Desbloquear cuenta", - "message": "Confirmar para desbloquear a %s" - } - }, - "accessibility": { - "show_avatar_image": "Mostrar imagen del avatar", - "edit_avatar_image": "Editar imagen del avatar", - "show_banner_image": "Mostrar imagen de banner", - "double_tap_to_open_the_list": "Pulsa dos veces para abrir la lista" - } - }, - "follower": { - "footer": "No se muestran los seguidores de otros servidores." - }, - "following": { - "footer": "No se muestran los seguidos de otros servidores." - }, - "search": { - "title": "Buscar", - "search_bar": { - "placeholder": "Buscar etiquetas y usuarios", - "cancel": "Cancelar" - }, - "recommend": { - "button_text": "Ver Todas", - "hash_tag": { - "title": "Tendencias en Mastodon", - "description": "Etiquetas que están recibiendo bastante atención", - "people_talking": "%s personas están hablando de esto" - }, - "accounts": { - "title": "Cuentas que quizá quieras seguir", - "description": "Puede que guste seguir estas cuentas", - "follow": "Seguir" - } - }, - "searching": { - "segment": { - "all": "Todo", - "people": "Gente", - "hashtags": "Etiquetas", - "posts": "Publicaciones" - }, - "empty_state": { - "no_results": "Sin resultados" - }, - "recent_search": "Búsquedas recientes", - "clear": "Borrar" - } - }, - "discovery": { - "tabs": { - "posts": "Publicaciones", - "hashtags": "Etiquetas", - "news": "Noticias", - "community": "Community", - "for_you": "Para Ti" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Tus Favoritos" - }, - "notification": { - "title": { - "Everything": "Todo", - "Mentions": "Menciones" - }, - "notification_description": { - "followed_you": "te siguió", - "favorited_your_post": "ha marcado como favorita tu publicación", - "reblogged_your_post": "reblogueó tu publicación", - "mentioned_you": "te mencionó", - "request_to_follow_you": "solicitó seguirte", - "poll_has_ended": "encuesta ha terminado" - }, - "keyobard": { - "show_everything": "Mostrar Todo", - "show_mentions": "Mostrar Menciones" - } - }, - "thread": { - "back_title": "Publicación", - "title": "Publicación de %s" - }, - "settings": { - "title": "Configuración", - "section": { - "appearance": { - "title": "Apariencia", - "automatic": "Automática", - "light": "Siempre Clara", - "dark": "Siempre Oscura" - }, - "look_and_feel": { - "title": "Apariencia", - "use_system": "Uso del sistema", - "really_dark": "Realmente Oscuro", - "sorta_dark": "Más o Menos Oscuro", - "light": "Claro" - }, - "notifications": { - "title": "Notificaciones", - "favorites": "Marque como favorita mi publicación", - "follows": "Me siga", - "boosts": "Rebloguee mi publicación", - "mentions": "Me mencione", - "trigger": { - "anyone": "cualquiera", - "follower": "un seguidor", - "follow": "cualquiera que yo siga", - "noone": "nadie", - "title": "Recibir notificación cuando" - } - }, - "preference": { - "title": "Preferencias", - "true_black_dark_mode": "Modo oscuro negro real", - "disable_avatar_animation": "Deshabilitar avatares animados", - "disable_emoji_animation": "Deshabilitar emojis animados", - "using_default_browser": "Usar navegador predeterminado para abrir los enlaces", - "open_links_in_mastodon": "Abrir links en Mastodon" - }, - "boring_zone": { - "title": "La Zona Aburrida", - "account_settings": "Configuración de Cuenta", - "terms": "Términos de Servicio", - "privacy": "Política de Privacidad" - }, - "spicy_zone": { - "title": "La Zona Picante", - "clear": "Borrar Caché de Multimedia", - "signout": "Cerrar Sesión" - } - }, - "footer": { - "mastodon_description": "Mastodon es software de código abierto. Puedes reportar errores en GitHub en %s (%s)" - }, - "keyboard": { - "close_settings_window": "Cerrar Ventana de Configuración" - } - }, - "report": { - "title_report": "Reportar", - "title": "Reportar %s", - "step1": "Paso 1 de 2", - "step2": "Paso 2 de 2", - "content1": "¿Hay alguna otra publicación que te gustaría añadir al reporte?", - "content2": "¿Hay algo que los moderadores deberían saber acerca de este reporte?", - "report_sent_title": "Gracias por reportar, estudiaremos esto.", - "send": "Enviar Reporte", - "skip_to_send": "Enviar sin comentarios", - "text_placeholder": "Escribe o pega comentarios adicionales", - "reported": "REPORTADO", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Cerrar Previsualización", - "show_next": "Mostrar Siguiente", - "show_previous": "Mostrar Anterior" - } - }, - "account_list": { - "tab_bar_hint": "Perfil seleccionado actualmente: %s. Haz un doble toque y mantén pulsado para mostrar el selector de cuentas", - "dismiss_account_switcher": "Descartar el selector de cuentas", - "add_account": "Añadir cuenta" - }, - "wizard": { - "new_in_mastodon": "Nuevo en Mastodon", - "multiple_account_switch_intro_description": "Cambie entre varias cuentas manteniendo presionado el botón de perfil.", - "accessibility_hint": "Haz doble toque para descartar este asistente" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/es_ES/ios-infoPlist.json b/Localization/StringsConvertor/input/es_ES/ios-infoPlist.json deleted file mode 100644 index e27375310..000000000 --- a/Localization/StringsConvertor/input/es_ES/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Se usa para sacar fotos para las publicaciones", - "NSPhotoLibraryAddUsageDescription": "Se usa para guardar fotos en la Galería de Fotos", - "NewPostShortcutItemTitle": "Nueva Publicación", - "SearchShortcutItemTitle": "Buscar" -} diff --git a/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict deleted file mode 100644 index 5de100844..000000000 --- a/Localization/StringsConvertor/input/eu_ES/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Irakurri gabeko jakinarazpen bat - other - Irakurri gabeko %ld jakinarazpen - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Sarrerak %#@character_count@ karaktereko muga gainditzen du - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - karaktere bat - other - %ld karaktere - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Sarreraren karaktere muga %#@character_count@ da oraindik - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - karaktere bat - other - %ld karaktere - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - bidalketa - other - bidalketa - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Bidalketa bat - other - %ld bidalketa - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Gogoko bat - other - %ld gogoko - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Bultzada bat - other - %ld bultzada - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Erantzun bat - other - %ld erantzun - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Boto bat - other - %ld boto - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Boto-emaile bat - other - %ld boto-emaile - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Pertsona bat hizketan - other - %ld pertsona hizketan - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Bat jarraitzen - other - %ld jarraitzen - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Jarraitzaile bat - other - %ld jarraitzaile - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Urte bat geratzen da - other - %ld urte geratzen dira - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Hilabete bat geratzen da - other - %ld hilabete geratzen dira - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Egun bat geratzen da - other - %ld egun geratzen dira - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Ordu 1 geratzen da - other - %ld ordu geratzen dira - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Minutu 1 geratzen da - other - %ld minutu geratzen dira - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Segundo 1 geratzen da - other - %ld segundo geratzen dira - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela urtebete - other - Duela %ld urte - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela hilabete - other - Duela %ld hilabete - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela egun bat - other - Duela %ld egun - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela ordubete - other - Duela %ld ordu - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela minutu bat - other - Duela %ld minutu - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Duela segundo bat - other - Duela %ld segundo - - - - diff --git a/Localization/StringsConvertor/input/eu_ES/app.json b/Localization/StringsConvertor/input/eu_ES/app.json deleted file mode 100644 index e1d64f57e..000000000 --- a/Localization/StringsConvertor/input/eu_ES/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Mesedez, saiatu berriro.", - "please_try_again_later": "Mesedez beranduago saiatu." - }, - "sign_up_failure": { - "title": "Hutsegitea izen-ematean" - }, - "server_error": { - "title": "Zerbitzari-errorea" - }, - "vote_failure": { - "title": "Hutsegitea botoa ematean", - "poll_ended": "Inkesta amaitu da" - }, - "discard_post_content": { - "title": "Baztertu zirriborroa", - "message": "Berretsi idatzitako bidalketaren edukia baztertzea." - }, - "publish_post_failure": { - "title": "Hutsegitea argitaratzean", - "message": "Huts egin du bidalketa argitaratzean.\nEgiaztatu Interneteko konexioa.", - "attachments_message": { - "video_attach_with_photo": "Ezin da irudiak dituen bidalketa batean bideo bat erantsi.", - "more_than_one_video": "Ezin da bideo bat baino gehiago erantsi." - } - }, - "edit_profile_failure": { - "title": "Errorea profila editatzean", - "message": "Ezin da profila editatu. Mesedez saiatu berriro." - }, - "sign_out": { - "title": "Amaitu saioa", - "message": "Ziur saioa amaitu nahi duzula?", - "confirm": "Amaitu saioa" - }, - "block_domain": { - "title": "Ziur, erabat ziur, %s domeinu osoa blokeatu nahi duzula? Gehienetan erabiltzaile gutxi batzuk blokeatu edo mututzearekin nahikoa da. Ez duzu domeinu horretako edukirik ikusiko eta domeinu horretako zure jarraitzaileak kenduko dira.", - "block_entire_domain": "Blokeatu domeinua" - }, - "save_photo_failure": { - "title": "Hutsegitea argazkia gordetzean", - "message": "Gaitu argazki galeriarako sarbidearen baimena argazkia gordetzeko." - }, - "delete_post": { - "title": "Ziur zaude bidalketa hau ezabatu nahi duzula?", - "message": "Ziur bidalketa hau ezabatu nahi duzula?" - }, - "clean_cache": { - "title": "Garbitu cache-a", - "message": "Behar bezala garbitu da %s cache-a." - } - }, - "controls": { - "actions": { - "back": "Atzera", - "next": "Hurrengoa", - "previous": "Aurrekoa", - "open": "Ireki", - "add": "Gehitu", - "remove": "Kendu", - "edit": "Editatu", - "save": "Gorde", - "ok": "Ados", - "done": "Egina", - "confirm": "Berretsi", - "continue": "Jarraitu", - "compose": "Idatzi", - "cancel": "Utzi", - "discard": "Baztertu", - "try_again": "Saiatu berriro", - "take_photo": "Atera argazkia", - "save_photo": "Gorde argazkia", - "copy_photo": "Kopiatu argazkia", - "sign_in": "Hasi saioa", - "sign_up": "Eman Izena", - "see_more": "Ikusi gehiago", - "preview": "Aurrebista", - "share": "Partekatu", - "share_user": "Partekatu %s", - "share_post": "Partekatu bidalketa", - "open_in_safari": "Ireki Safarin", - "open_in_browser": "Ireki nabigatzailean", - "find_people": "Bilatu jarraitzeko jendea", - "manually_search": "Eskuz bilatu", - "skip": "Saltatu", - "reply": "Erantzun", - "report_user": "Salatu %s", - "block_domain": "Blokeatu %s", - "unblock_domain": "Desblokeatu %s", - "settings": "Ezarpenak", - "delete": "Ezabatu" - }, - "tabs": { - "home": "Hasiera", - "search": "Bilatu", - "notification": "Jakinarazpena", - "profile": "Profila" - }, - "keyboard": { - "common": { - "switch_to_tab": "Aldatu %s(e)ra", - "compose_new_post": "Idatzi bidalketa berria", - "show_favorites": "Erakutsi gogokoak", - "open_settings": "Ireki ezarpenak" - }, - "timeline": { - "previous_status": "Aurreko bidalketa", - "next_status": "Hurrengo bidalketa", - "open_status": "Ireki bidalketa", - "open_author_profile": "Ireki egilearen profila", - "open_reblogger_profile": "Ireki bultzada eman duenaren profila", - "reply_status": "Erantzun bidalketari", - "toggle_reblog": "Txandakatu bidalketaren bultzada", - "toggle_favorite": "Txandakatu bidalketa gogoko egitea", - "toggle_content_warning": "Txandakatu edukiaren abisua", - "preview_image": "Aurreikusi irudia" - }, - "segmented_control": { - "previous_section": "Aurreko sekzioa", - "next_section": "Hurrengo sekzioa" - } - }, - "status": { - "user_reblogged": "%s erabiltzaileak bultzada eman dio", - "user_replied_to": "%s(r)i erantzuten", - "show_post": "Erakutsi bidalketa", - "show_user_profile": "Erakutsi erabiltzailearen profila", - "content_warning": "Edukiaren abisua", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Ukitu edonon bistaratzeko", - "tap_to_reveal": "Sakatu erakusteko", - "poll": { - "vote": "Bozkatu", - "closed": "Itxita" - }, - "actions": { - "reply": "Erantzun", - "reblog": "Bultzada", - "unreblog": "Desegin bultzada", - "favorite": "Gogokoa", - "unfavorite": "Kendu gogokoa", - "menu": "Menua", - "hide": "Ezkutatu", - "show_image": "Erakutsi irudia", - "show_gif": "Erakutsi GIFa", - "show_video_player": "Erakutsi bideo-erreproduzigailua", - "tap_then_hold_to_show_menu": "Sakatu eta eutsi menua erakusteko" - }, - "tag": { - "url": "URLa", - "mention": "Aipatu", - "link": "Esteka", - "hashtag": "Traola", - "email": "Eposta", - "emoji": "Emojia" - }, - "visibility": { - "unlisted": "Edozeinek ikusi dezake bidalketa hau baina ez da denbora-lerro publikoan bistaratuko.", - "private": "Beren jarraitzaileek soilik ikus dezakete bidalketa hau.", - "private_from_me": "Nire jarraitzaileek soilik ikus dezakete bidalketa hau.", - "direct": "Aipatutako erabiltzaileek soilik ikus dezakete bidalketa hau." - } - }, - "friendship": { - "follow": "Jarraitu", - "following": "Jarraitzen", - "request": "Eskaera", - "pending": "Zain", - "block": "Blokeatu", - "block_user": "Blokeatu %s", - "block_domain": "Blokeatu %s", - "unblock": "Desblokeatu", - "unblock_user": "Desblokeatu %s", - "blocked": "Blokeatuta", - "mute": "Mututu", - "mute_user": "Mututu %s", - "unmute": "Desmututu", - "unmute_user": "Desmututu %s", - "muted": "Mutututa", - "edit_info": "Editatu informazioa" - }, - "timeline": { - "filtered": "Iragazita", - "timestamp": { - "now": "Orain" - }, - "loader": { - "load_missing_posts": "Kargatu falta diren bidalketak", - "loading_missing_posts": "Falta diren bidalketak kargatzen...", - "show_more_replies": "Erakutsi erantzun gehiago" - }, - "header": { - "no_status_found": "Ez da bidalketa aurkitu", - "blocking_warning": "Ezin duzu erabiltzaile honen profila ikusi\ndesblokeatzen duzun arte.\nZure profilak itxura hau du berarentzat.", - "user_blocking_warning": "Ezin duzu %s erabiltzailearen\nprofila ikusi desblokeatzen duzun arte.\nZure profilak itxura hau du berarentzat.", - "blocked_warning": "Ezin duzu erabiltzaile honen profila ikusi\ndesblokeatzen zaituen arte.", - "user_blocked_warning": "Ezin duzu %s erabiltzailearen\nprofila ikusi desblokeatzen zaituen arte.", - "suspended_warning": "Erabiltzaile hau kanporatua izan da.", - "user_suspended_warning": "%s kontua kanporatua izan da." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Sare sozialak\nberriz zure eskuetan.", - "get_started": "Nola hasi", - "log_in": "Hasi saioa" - }, - "server_picker": { - "title": "Aukeratu zerbitzari bat,\nedozein zerbitzari.", - "subtitle": "Aukeratu komunitate bat zure interes edo lurraldearen arabera, edo erabilera orokorreko bat.", - "subtitle_extend": "Aukeratu komunitate bat zure interes edo lurraldearen arabera, edo erabilera orokorreko bat. Komunitate bakoitza erakunde edo norbanako independente batek kudeatzen du.", - "button": { - "category": { - "all": "Guztiak", - "all_accessiblity_description": "Kategoria: Guztiak", - "academia": "akademia", - "activism": "aktibismoa", - "food": "janaria", - "furry": "furry", - "games": "jokoak", - "general": "orokorra", - "journalism": "kazetaritza", - "lgbt": "LGBTQ+", - "regional": "herrialdekoa", - "art": "artea", - "music": "musika", - "tech": "teknologia" - }, - "see_less": "Ikusi gutxiago", - "see_more": "Ikusi gehiago" - }, - "label": { - "language": "HIZKUNTZA", - "users": "ERABILTZAILEAK", - "category": "KATEGORIA" - }, - "input": { - "placeholder": "Bilatu zerbitzari bat edo sortu zurea...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Erabilgarri dauden zerbitzariak bilatzen...", - "bad_network": "Arazoren bat egon da datuak kargatzean. Egiaztatu zure Interneteko konexioa.", - "no_results": "Emaitzarik ez" - } - }, - "register": { - "title": "Hitz egin iezaguzu zuri buruz.", - "input": { - "avatar": { - "delete": "Ezabatu" - }, - "username": { - "placeholder": "erabiltzaile-izena", - "duplicate_prompt": "Erabiltzaile-izen hau hartuta dago." - }, - "display_name": { - "placeholder": "pantaila-izena" - }, - "email": { - "placeholder": "eposta" - }, - "password": { - "placeholder": "pasahitza", - "require": "Zure pasahitzak izan behar ditu gutxienez:", - "character_limit": "8 karaktere", - "accessibility": { - "checked": "hautatuta", - "unchecked": "hautatu gabe" - }, - "hint": "Pasahitzak zortzi karaktere izan behar ditu gutxienez" - }, - "invite": { - "registration_user_invite_request": "Zergatik elkartu nahi duzu?" - } - }, - "error": { - "item": { - "username": "Erabiltzaile-izena", - "email": "Eposta", - "password": "Pasahitza", - "agreement": "Adostasuna", - "locale": "Eskualdeko ezarpenak", - "reason": "Arrazoia" - }, - "reason": { - "blocked": "%s(e)k onartu gabeko eposta hornitzaile bat erabiltzen du", - "unreachable": "dirudienez %s ez da existitzen", - "taken": "%s dagoeneko erabiltzen da", - "reserved": "%s gako-hitz erreserbatu bat da", - "accepted": "%s onartu behar da", - "blank": "%s beharrezkoa da", - "invalid": "%s baliogabea da", - "too_long": "%s luzeegia da", - "too_short": "%s laburregia da", - "inclusion": "%s ez da onartutako balio bat" - }, - "special": { - "username_invalid": "Erabiltzaile-izenak karaktere alfanumerikoak eta azpimarrak soilik eduki ditzake", - "username_too_long": "Erabiltzaile-izena luzeegia da (ezin ditu 30 karaktere baino gehiago izan)", - "email_invalid": "Hau ez da baliozko eposta helbidea", - "password_too_short": "Pasahitza laburregia da (gutxienez 8 karaktere izan behar ditu)" - } - } - }, - "server_rules": { - "title": "Oinarrizko arau batzuk.", - "subtitle": "Arau hauek %s instantziako administratzaileek ezarri dituzte.", - "prompt": "Jarraituz gero, %s instantziaren zerbitzu-baldintzak eta pribatutasun-gidalerroak onartzen dituzu.", - "terms_of_service": "zerbitzu-baldintzak", - "privacy_policy": "pribatutasun-gidalerroak", - "button": { - "confirm": "Ados nago" - } - }, - "confirm_email": { - "title": "Eta azkenik...", - "subtitle": "Eposta bat bidali dizugu %s helbidera,\nsakatu kontua berresteko esteka.", - "button": { - "open_email_app": "Ireki eposta aplikazioa", - "resend": "Berbidali" - }, - "dont_receive_email": { - "title": "Begiratu zure eposta", - "description": "Egiaztatu zure eposta helbidea zuzena den eta begiratu zaborraren karpeta.", - "resend_email": "Birbidali eposta" - }, - "open_email_app": { - "title": "Egiaztatu zure sarrerako ontzia.", - "description": "Eposta bat bidali dizugu. Egiaztatu zure zaborraren karpeta.", - "mail": "Posta", - "open_email_client": "Ireki eposta bezeroa" - } - }, - "home_timeline": { - "title": "Hasiera", - "navigation_bar_state": { - "offline": "Konexio gabe", - "new_posts": "Ikusi bidal. berriak", - "published": "Argitaratua!", - "Publishing": "Bidalketa argitaratzen...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Bilatu jarraitzeko jendea", - "follow_explain": "Norbait jarraitzen duzunean, bere bidalketak zure hasierako denbora-lerroan agertuko zaizkizu." - }, - "compose": { - "title": { - "new_post": "Bidalketa berria", - "new_reply": "Erantzun berria" - }, - "media_selection": { - "camera": "Atera argazkia", - "photo_library": "Argazki-liburutegia", - "browse": "Arakatu" - }, - "content_input_placeholder": "Idatzi edo itsatsi buruan duzuna", - "compose_action": "Argitaratu", - "replying_to_user": "%s(r)i erantzuten", - "attachment": { - "photo": "argazkia", - "video": "bideoa", - "attachment_broken": "%s hondatuta dago eta ezin da\nMastodonera igo.", - "description_photo": "Deskribatu argazkia ikusmen arazoak dituztenentzat...", - "description_video": "Deskribatu bideoa ikusmen arazoak dituztenentzat..." - }, - "poll": { - "duration_time": "Iraupena: %s", - "thirty_minutes": "30 minutu", - "one_hour": "Ordu 1", - "six_hours": "6 ordu", - "one_day": "Egun 1", - "three_days": "3 egun", - "seven_days": "7 egun", - "option_number": "%ld aukera" - }, - "content_warning": { - "placeholder": "Idatzi abisu zehatz bat hemen..." - }, - "visibility": { - "public": "Publikoa", - "unlisted": "Zerrendatu gabea", - "private": "Jarraitzaileak soilik", - "direct": "Aipatzen dudan jendea soilik" - }, - "auto_complete": { - "space_to_add": "Sakatu zuriunea gehitzeko" - }, - "accessibility": { - "append_attachment": "Gehitu eranskina", - "append_poll": "Gehitu inkesta", - "remove_poll": "Kendu inkesta", - "custom_emoji_picker": "Emoji pertsonalizatuen hautatzailea", - "enable_content_warning": "Gaitu edukiaren abisua", - "disable_content_warning": "Desgaitu edukiaren abisua", - "post_visibility_menu": "Bidalketaren ikusgaitasunaren menua" - }, - "keyboard": { - "discard_post": "Baztertu bidalketa", - "publish_post": "Argitaratu bidalketa", - "toggle_poll": "Txandakatu inkesta", - "toggle_content_warning": "Txandakatu edukiaren abisua", - "append_attachment_entry": "Gehitu eranskina - %s", - "select_visibility_entry": "Hautatu ikusgaitasuna - %s" - } - }, - "profile": { - "dashboard": { - "posts": "bidalketa", - "following": "jarraitzen", - "followers": "jarraitzaile" - }, - "fields": { - "add_row": "Gehitu errenkada", - "placeholder": { - "label": "Etiketa", - "content": "Edukia" - } - }, - "segmented_control": { - "posts": "Bidalketak", - "replies": "Erantzunak", - "posts_and_replies": "Bidalketak eta erantzunak", - "media": "Multimedia", - "about": "Honi buruz" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mututu kontua", - "message": "Berretsi %s mututzea" - }, - "confirm_unmute_user": { - "title": "Desmututu kontua", - "message": "Berretsi %s desmututzea" - }, - "confirm_block_user": { - "title": "Blokeatu kontua", - "message": "Berretsi %s blokeatzea" - }, - "confirm_unblock_user": { - "title": "Desblokeatu kontua", - "message": "Berretsi %s desblokeatzea" - } - }, - "accessibility": { - "show_avatar_image": "Erakutsi abatarra", - "edit_avatar_image": "Editatu abatarra", - "show_banner_image": "Erakutsi banner irudia", - "double_tap_to_open_the_list": "Sakatu birritan zerrenda irekitzeko" - } - }, - "follower": { - "footer": "Beste zerbitzarietako jarraitzaileak ez dira bistaratzen." - }, - "following": { - "footer": "Beste zerbitzarietan jarraitutakoak ez dira bistaratzen." - }, - "search": { - "title": "Bilatu", - "search_bar": { - "placeholder": "Bilatu traolak eta erabiltzaileak", - "cancel": "Utzi" - }, - "recommend": { - "button_text": "Ikusi guztiak", - "hash_tag": { - "title": "Mastodoneko joerak", - "description": "Deigarri gertatzen ari diren traolak", - "people_talking": "%s pertsona hizketan" - }, - "accounts": { - "title": "Gustuko izan ditzakezun kontuak", - "description": "Kontu hauek jarraitu nahiko dituzu behar bada", - "follow": "Jarraitu" - } - }, - "searching": { - "segment": { - "all": "Guztiak", - "people": "Jendea", - "hashtags": "Traolak", - "posts": "Bidalketak" - }, - "empty_state": { - "no_results": "Emaitzarik ez" - }, - "recent_search": "Azken bilaketak", - "clear": "Garbitu" - } - }, - "discovery": { - "tabs": { - "posts": "Argitalpenak", - "hashtags": "Traolak", - "news": "Albisteak", - "community": "Community", - "for_you": "Zuretzat" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Zure gogokoak" - }, - "notification": { - "title": { - "Everything": "Dena", - "Mentions": "Aipamenak" - }, - "notification_description": { - "followed_you": "zu jarraitzen hasi da", - "favorited_your_post": "(e)k zure bidalketa gogoko du", - "reblogged_your_post": "(e)k bultzada eman dio zure bidalketari", - "mentioned_you": "erabiltzaileak aipatu zaitu", - "request_to_follow_you": "erabiltzaileak zu jarraitzea eskatu du", - "poll_has_ended": "inkesta amaitu da" - }, - "keyobard": { - "show_everything": "Erakutsi guztia", - "show_mentions": "Erakutsi aipamenak" - } - }, - "thread": { - "back_title": "Bidalketa", - "title": "%s(e)n bidalketa" - }, - "settings": { - "title": "Ezarpenak", - "section": { - "appearance": { - "title": "Itxura", - "automatic": "Automatikoa", - "light": "Beti argia", - "dark": "Beti iluna" - }, - "look_and_feel": { - "title": "Itxura", - "use_system": "Erabili sistemakoa", - "really_dark": "Oso iluna", - "sorta_dark": "Ilun antzekoa", - "light": "Argia" - }, - "notifications": { - "title": "Jakinarazpenak", - "favorites": "Nire bidalketa gogoko egitean", - "follows": "Jarraitzen nau", - "boosts": "Nire bidalketa bultzatu du", - "mentions": "Aipatu nau", - "trigger": { - "anyone": "edozein", - "follower": "jarraitzaile bat", - "follow": "jarraitzen dudan edonor", - "noone": "inor ez", - "title": "Noiz jakinarazi:" - } - }, - "preference": { - "title": "Hobespenak", - "true_black_dark_mode": "Benetako modu beltz iluna", - "disable_avatar_animation": "Desgaitu abatar animatuak", - "disable_emoji_animation": "Desgaitu emoji animatuak", - "using_default_browser": "Erabili nabigatzaile lehenetsia estekak irekitzeko", - "open_links_in_mastodon": "Ireki estekak Mastodonen" - }, - "boring_zone": { - "title": "Eremu aspergarria", - "account_settings": "Kontuaren ezarpenak", - "terms": "Zerbitzu-baldintzak", - "privacy": "Pribatutasun-gidalerroak" - }, - "spicy_zone": { - "title": "Eremu beroa", - "clear": "Garbitu multimediaren cachea", - "signout": "Amaitu saioa" - } - }, - "footer": { - "mastodon_description": "Mastodon software librea da. Arazoen berri eman dezakezu GitHub bidez: %s (%s)" - }, - "keyboard": { - "close_settings_window": "Itxi ezarpenen leihoa" - } - }, - "report": { - "title_report": "Salatu", - "title": "Salatu %s", - "step1": "1. urratsa 2tik", - "step2": "2. urratsa 2tik", - "content1": "Salaketan beste bidalketarik gehitu nahi duzu?", - "content2": "Moderatzaileek besterik jakin behar dute salaketa honi buruz?", - "report_sent_title": "Mila esker salaketagatik, berrikusiko dugu.", - "send": "Bidali salaketa", - "skip_to_send": "Bidali iruzkinik gabe", - "text_placeholder": "Idatzi edo itsatsi iruzkin gehigarriak", - "reported": "SALATUA", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Itxi aurrebista", - "show_next": "Erakutsi hurrengoa", - "show_previous": "Erakutsi aurrekoa" - } - }, - "account_list": { - "tab_bar_hint": "Unean hautatutako profila: %s. Ukitu birritan, ondoren eduki sakatuta kontu-aldatzailea erakusteko", - "dismiss_account_switcher": "Baztertu kontu-aldatzailea", - "add_account": "Gehitu kontua" - }, - "wizard": { - "new_in_mastodon": "Berria Mastodonen", - "multiple_account_switch_intro_description": "Aldatu hainbat konturen artean profilaren botoia sakatuta edukiz.", - "accessibility_hint": "Ukitu birritan morroi hau baztertzeko" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/eu_ES/ios-infoPlist.json b/Localization/StringsConvertor/input/eu_ES/ios-infoPlist.json deleted file mode 100644 index bc0457eab..000000000 --- a/Localization/StringsConvertor/input/eu_ES/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Bidalketetarako argazkiak ateratzeko erabiltzen da", - "NSPhotoLibraryAddUsageDescription": "Argazkiak Argazki-liburutegian gordetzeko erabiltzen da", - "NewPostShortcutItemTitle": "Bidalketa berria", - "SearchShortcutItemTitle": "Bilatu" -} diff --git a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict b/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict deleted file mode 100644 index 7fa6b5a64..000000000 --- a/Localization/StringsConvertor/input/fi_FI/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 lukematon ilmoitus - other - %ld lukematonta ilmoitusta - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 merkki - other - %ld merkkiä - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ päästä - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 merkki - other - %ld merkkiä - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - julkaisu - other - julkaisut - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 julkaisu - other - %ld julkaisua - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 suosikki - other - %ld suosikkia - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 edelleen jako - other - %ld edelleen jakoa - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ääni - other - %ld ääntä - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vastaaja - other - %ld vastaajaa - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ihminen puhuu - other - %ld ihmistä puhuu - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seurataan - other - %ld seurataan - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seuraaja - other - %ld seuraajaa - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vuosi jäljellä - other - %ld vuotta jäljellä - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 kuukausi jäljellä - other - %ld kuukautta jäljellä - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 päivä jäljellä - other - %ld päivää jäljellä - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tunti jäljellä - other - %ld tuntia jäljellä - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuutti jäljellä - other - %ld minuuttia jäljellä - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 sekuntti - other - %ld sekunttia jäljellä - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1v sitten - other - %ldv sitten - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1kk sitten - other - %ldkk sitten - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1pv sitten - other - %ldpv sitten - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1t sitten - other - %ldt sitten - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1min sitten - other - %ldmin sitten - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s sitten - other - %lds sitten - - - - diff --git a/Localization/StringsConvertor/input/fi_FI/app.json b/Localization/StringsConvertor/input/fi_FI/app.json deleted file mode 100644 index cec5a20f1..000000000 --- a/Localization/StringsConvertor/input/fi_FI/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Yritä uudelleen.", - "please_try_again_later": "Yritä uudelleen myöhemmin." - }, - "sign_up_failure": { - "title": "Rekisteröinti epäonnistui" - }, - "server_error": { - "title": "Palvelinvirhe" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "Kysely on päättynyt" - }, - "discard_post_content": { - "title": "Hylkää luonnos", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Julkaiseminen epäonnistui", - "message": "Julkaisun julkaiseminen epäonnistui.\nTarkista internet-yhteytesi.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Ei voi liittä yhtä videota enempää." - } - }, - "edit_profile_failure": { - "title": "Virhe profiilin muokkauksessa", - "message": "Profiilia ei voida muoka. Yritä uudelleen." - }, - "sign_out": { - "title": "Kirjaudu ulos", - "message": "Haluatko varmasti kirjautua ulos?", - "confirm": "Kirjaudu ulos" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Estä verkkotunnus" - }, - "save_photo_failure": { - "title": "Kuvan tallentaminen epäonnistui", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Haluatko varmasti poistaa tämän julkaisun?", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Puhdista välimuisti", - "message": "%s välimuisti tyhjennetty onnistuneesti." - } - }, - "controls": { - "actions": { - "back": "Takaisin", - "next": "Seuraava", - "previous": "Edellinen", - "open": "Avaa", - "add": "Lisää", - "remove": "Poista", - "edit": "Muokkaa", - "save": "Tallenna", - "ok": "OK", - "done": "Valmis", - "confirm": "Vahvista", - "continue": "Jatka", - "compose": "Koosta", - "cancel": "Kumoa", - "discard": "Hylkää", - "try_again": "Yritä uudelleen", - "take_photo": "Ota kuva", - "save_photo": "Tallenna kuva", - "copy_photo": "Kopioi kuva", - "sign_in": "Kirjaudu sisään", - "sign_up": "Rekisteröidy", - "see_more": "Näytä lisää", - "preview": "Esikatselu", - "share": "Jaa", - "share_user": "Jaa %s", - "share_post": "Jaa julkaisu", - "open_in_safari": "Avaa Safarissa", - "open_in_browser": "Open in Browser", - "find_people": "Löydä tilejä seurattavaksi", - "manually_search": "Manually search instead", - "skip": "Ohita", - "reply": "Vastaa", - "report_user": "Ilmianna %s", - "block_domain": "Estä %s", - "unblock_domain": "Poista esto %s", - "settings": "Asetukset", - "delete": "Poista" - }, - "tabs": { - "home": "Koti", - "search": "Haku", - "notification": "Ilmoitus", - "profile": "Profiili" - }, - "keyboard": { - "common": { - "switch_to_tab": "Vaihda %s", - "compose_new_post": "Koosta uusi julkaisu", - "show_favorites": "Näytä suosikit", - "open_settings": "Avaa asetukset" - }, - "timeline": { - "previous_status": "Edellinen julkaisu", - "next_status": "Seuraava julkaisu", - "open_status": "Avaa julkaisu", - "open_author_profile": "Avaa tekijän profiili", - "open_reblogger_profile": "Avaa edelleen jakajan profiili", - "reply_status": "Vastaa julkaisuun", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Vaihda sisältövaroitus", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Seuraava lohko" - } - }, - "status": { - "user_reblogged": "%s jakoi edelleen", - "user_replied_to": "Vastasi %s:lle", - "show_post": "Näytä julkaisu", - "show_user_profile": "Näytä tili", - "content_warning": "Sisältövaroitus", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Napauta mistä tahansa paljastaaksesi", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Suljettu" - }, - "actions": { - "reply": "Vastaa", - "reblog": "Jaa edelleen", - "unreblog": "Peru edelleen jako", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Valikko", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Linkki", - "hashtag": "Hashtagi", - "email": "Sähköposti", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Seuraa", - "following": "Seurataan", - "request": "Pyydä", - "pending": "Pyydetty", - "block": "Estä", - "block_user": "Estä %s", - "block_domain": "Estä %s", - "unblock": "Poista esto", - "unblock_user": "Unblock %s", - "blocked": "Estetty", - "mute": "Mykistä", - "mute_user": "Mykistä %s", - "unmute": "Poista mykistys", - "unmute_user": "Poista mykistys tililtä %s", - "muted": "Mykistetty", - "edit_info": "Muokkaa profiilia" - }, - "timeline": { - "filtered": "Suodatettu", - "timestamp": { - "now": "Nyt" - }, - "loader": { - "load_missing_posts": "Lataa puuttuvat julkaisut", - "loading_missing_posts": "Ladataan puuttuvia julkaisuja...", - "show_more_replies": "Näytä lisää vastauksia" - }, - "header": { - "no_status_found": "Julkaisua ei löytynyt", - "blocking_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", - "user_blocking_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", - "blocked_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin hän poistaa eston.", - "user_blocked_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin hän poistaa eston.", - "suspended_warning": "Tämä tili on lakkautettu.", - "user_suspended_warning": "Tili %s on lakkautettu." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Sosiaalinen verkostoituminen\ntakaisin käsissäsi.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Valitse palvelin,\nmikä tahansa palvelin.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "Kaikki", - "all_accessiblity_description": "Kategoria: Kaikki", - "academia": "akateeminen", - "activism": "aktivismi", - "food": "ruoka", - "furry": "turri", - "games": "pelit", - "general": "yleinen", - "journalism": "journalismi", - "lgbt": "hlbt", - "regional": "alueellinen", - "art": "taide", - "music": "musiikki", - "tech": "tekniikka" - }, - "see_less": "Näytä vähemmän", - "see_more": "Näytä lisää" - }, - "label": { - "language": "KIELI", - "users": "TILIÄ", - "category": "KATEGORIA" - }, - "input": { - "placeholder": "Etsi palvelin tai liity omaan...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Etsistään saatavilla olevia palvelimia...", - "bad_network": "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi.", - "no_results": "Ei hakutuloksia" - } - }, - "register": { - "title": "Kerro meille sinusta.", - "input": { - "avatar": { - "delete": "Poista" - }, - "username": { - "placeholder": "käyttäjänimi", - "duplicate_prompt": "Tämä käyttäjänimi on varattu." - }, - "display_name": { - "placeholder": "näyttönimi" - }, - "email": { - "placeholder": "sähköposti" - }, - "password": { - "placeholder": "salasana", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Salasanassasi on oltava vähintään kahdeksan merkkiä" - }, - "invite": { - "registration_user_invite_request": "Miksi haluat liittyä?" - } - }, - "error": { - "item": { - "username": "Käyttäjänimi", - "email": "Sähköposti", - "password": "Salasana", - "agreement": "Hyväksy", - "locale": "Locale", - "reason": "Syy" - }, - "reason": { - "blocked": "%s sisältää estetyn sähköpostipalveluntarjoajan", - "unreachable": "%s ei näytä olevan olemassa", - "taken": "%s on jo käytössä", - "reserved": "%s is a reserved keyword", - "accepted": "%s täytyy hyväksyä", - "blank": "%s vaaditaan", - "invalid": "%s on virheellinen", - "too_long": "%s on liian pitkä", - "too_short": "%s on liian lyhyt", - "inclusion": "%s ei ole tuettu arvo" - }, - "special": { - "username_invalid": "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja", - "username_too_long": "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)", - "email_invalid": "Tämä ei ole kelvollinen sähköpostiosoite", - "password_too_short": "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)" - } - } - }, - "server_rules": { - "title": "Joitakin perussääntöjä.", - "subtitle": "Nämä säännöt ovat %s -palvelun asettamia.", - "prompt": "Jatkamalla, hyväksyt palvelun %s palveluehdot ja tietosuojakäytönnön.", - "terms_of_service": "käyttöehdot", - "privacy_policy": "tietosuojakäytäntö", - "button": { - "confirm": "Hyväksyn" - } - }, - "confirm_email": { - "title": "Viimeinen asia.", - "subtitle": "Lähetimme juuri sähköpostin osoitteeseen %s, napauta siinä olevaa linkkiä vahvistaaksesi tilisi.", - "button": { - "open_email_app": "Avaa sähköpostisovellus", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Tarkista sähköpostisi", - "description": "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole.", - "resend_email": "Lähetä sähköposti uudelleen" - }, - "open_email_app": { - "title": "Tarkasta postilaatikkosi.", - "description": "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole.", - "mail": "Sähköposti", - "open_email_client": "Avaa sähköpostisovellus" - } - }, - "home_timeline": { - "title": "Koti", - "navigation_bar_state": { - "offline": "Yhteydetön", - "new_posts": "Uusia julkaisuja", - "published": "Julkaistu!", - "Publishing": "Julkaistaan julkaisua...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Löydä tilejä seurattavaksi", - "follow_explain": "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi." - }, - "compose": { - "title": { - "new_post": "Uusi julkaisu", - "new_reply": "Uusi vastaus" - }, - "media_selection": { - "camera": "Ota kuva", - "photo_library": "Kuvakirjasto", - "browse": "Selaa" - }, - "content_input_placeholder": "Kirjoita tai liitä, siitä mitä ajattelet", - "compose_action": "Julkaise", - "replying_to_user": "vastaamassa tilille %s", - "attachment": { - "photo": "kuva", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Kuvaile kuva näkövammaisille...", - "description_video": "Kuvaile video näkövammaisille..." - }, - "poll": { - "duration_time": "Kesto: %s", - "thirty_minutes": "30 minuuttia", - "one_hour": "1 tunti", - "six_hours": "6 tuntia", - "one_day": "1 päivä", - "three_days": "3 päivää", - "seven_days": "7 päivää", - "option_number": "Vaihtoehto %ld" - }, - "content_warning": { - "placeholder": "Kirjoita tarkka varoitus tähän..." - }, - "visibility": { - "public": "Julkinen", - "unlisted": "Listaamaton", - "private": "Vain seuraajat", - "direct": "Vain mainitsemani tilit" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Lisää liite", - "append_poll": "Lisää kysely", - "remove_poll": "Poista kysely", - "custom_emoji_picker": "Mukautettu emojivalitsin", - "enable_content_warning": "Ota sisältövaroitus käyttöön", - "disable_content_warning": "Poista sisältövaroitus käytöstä", - "post_visibility_menu": "Julkaisun näkyvyysvalikko" - }, - "keyboard": { - "discard_post": "Hylkää julkaisu", - "publish_post": "Julkaise julkaisu", - "toggle_poll": "Vaihda kysely", - "toggle_content_warning": "Vaihda sisältövaroitus", - "append_attachment_entry": "Lisää liite - %s", - "select_visibility_entry": "Valitse näkyvyys - %s" - } - }, - "profile": { - "dashboard": { - "posts": "julkaisut", - "following": "seurataan", - "followers": "seuraajat" - }, - "fields": { - "add_row": "Lisää rivi", - "placeholder": { - "label": "Nimi", - "content": "Sisältö" - } - }, - "segmented_control": { - "posts": "Julkaisut", - "replies": "Vastaukset", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Poista tilin mykistys", - "message": "Vahvista, että haluat poistaa mykistyksen tililtä %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Seuraajia muilta palvelimilta ei näytetä." - }, - "following": { - "footer": "Seurauksia muilta palvelimilta ei näytetä." - }, - "search": { - "title": "Haku", - "search_bar": { - "placeholder": "Haku", - "cancel": "Kumoa" - }, - "recommend": { - "button_text": "Katso kaikki", - "hash_tag": { - "title": "Trendaavat Mastodonissa", - "description": "Hashtagit, jotka saavat melkoisesti huomiota", - "people_talking": "%s ihmistä puhuu" - }, - "accounts": { - "title": "Saatat pitää näistä tileistä", - "description": "Haluta ehkä seurata näitä tilejä", - "follow": "Seuraa" - } - }, - "searching": { - "segment": { - "all": "Kaikki", - "people": "Tilit", - "hashtags": "Hashtagit", - "posts": "Julkaisut" - }, - "empty_state": { - "no_results": "Ei hakutuloksia" - }, - "recent_search": "Viimeaikaiset", - "clear": "Tyhjennä" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Omat suosikit" - }, - "notification": { - "title": { - "Everything": "Kaikki", - "Mentions": "Maininnat" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Näytä kaikki", - "show_mentions": "Näytä maininnat" - } - }, - "thread": { - "back_title": "Julkaisu", - "title": "Julkaisu tililtä %s" - }, - "settings": { - "title": "Asetukset", - "section": { - "appearance": { - "title": "Ulkoasu", - "automatic": "Seuraa järjestelmää", - "light": "Vaalea", - "dark": "Tumma" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Ilmoitukset", - "favorites": "Favorites my post", - "follows": "Seuraa minua", - "boosts": "Omien julkaisujen edelleen jaot", - "mentions": "Mainitsee minut", - "trigger": { - "anyone": "kuka tahansa", - "follower": "seuraaja", - "follow": "kuka tahansa, jota seuraan", - "noone": "ei kukaan", - "title": "Ilmoita minulle, kun" - } - }, - "preference": { - "title": "Lisäasetukset", - "true_black_dark_mode": "Todellinen mustan tumma tila", - "disable_avatar_animation": "Poista käytöstä animoidut avatarit", - "disable_emoji_animation": "Poista käytöstä animoidut emojit", - "using_default_browser": "Käytä oletusselainta linkkien avaamiseen", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "Tylsä alue", - "account_settings": "Tiliasetukset", - "terms": "Palveluehdot", - "privacy": "Tietosuojakäytäntö" - }, - "spicy_zone": { - "title": "Varovainen alue", - "clear": "Tyhjennä median välimuisti", - "signout": "Kirjaudu ulos" - } - }, - "footer": { - "mastodon_description": "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %s (%s)" - }, - "keyboard": { - "close_settings_window": "Sulje asetukset" - } - }, - "report": { - "title_report": "Report", - "title": "Ilmianna %s", - "step1": "Vaihe 1/2", - "step2": "Vaihe 2/2", - "content1": "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?", - "content2": "Onko valvojien syytä tietää tästä ilmiannosta?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Lähetä ilmianto", - "skip_to_send": "Lähetä ilman kommentteja", - "text_placeholder": "Kirjoita tai liitä lisäkommentteja", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Sulje esikatselu", - "show_next": "Näytä seuraava", - "show_previous": "Näytä edellinen" - } - }, - "account_list": { - "tab_bar_hint": "Nykyinen valittu profiili: %s. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan", - "dismiss_account_switcher": "Sulje tilin vaihtaja", - "add_account": "Lisää tili" - }, - "wizard": { - "new_in_mastodon": "Uutta Mastodonissa", - "multiple_account_switch_intro_description": "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna.", - "accessibility_hint": "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json b/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json deleted file mode 100644 index eb389f3b3..000000000 --- a/Localization/StringsConvertor/input/fi_FI/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Käytetään kuvan ottamiseen julkaisua varten", - "NSPhotoLibraryAddUsageDescription": "Käytetään kuvan tallentamiseen kuvakirjastoon", - "NewPostShortcutItemTitle": "Uusi julkaisu", - "SearchShortcutItemTitle": "Haku" -} diff --git a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict b/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict deleted file mode 100644 index d251c82f3..000000000 --- a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notification non lue - other - %ld notifications non lues - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - La limite d’entrée dépasse %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caractère - other - %ld caractères - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - La limite d'entrée reste %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caractère - other - %ld caractères - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - publication - other - publications - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 publication - other - %ld publications - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favoris - other - %ld favoris - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 réponse - other - %ld réponses - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votant - other - %ld votants - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 personne en parle - other - %ld personnes en parlent - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 abonnement - other - %ld abonnements - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 abonné·e - other - %ld abonné·e·s - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Il reste 1 an - other - %ld ans restants - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mois restant - other - %ld mois restants - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Il reste 1 jour - other - il reste %ld jours - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 heure restante - other - %ld heures restantes - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute restante - other - %ld minutes restantes - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Il reste 1 seconde - other - %ld secondes restantes - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - il y a 1 année - other - il y a %ld ans - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - il y a 1 mois - other - il y a %ld mois - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - il y a 1j - other - il y a %ldj - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - il y a 1h - other - il y a %ldh - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Il y a 1 m - other - il y a %ld m - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Il y a 1 s - other - il y a %ld s - - - - diff --git a/Localization/StringsConvertor/input/fr_FR/app.json b/Localization/StringsConvertor/input/fr_FR/app.json deleted file mode 100644 index 8de3097cf..000000000 --- a/Localization/StringsConvertor/input/fr_FR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Merci de réessayer.", - "please_try_again_later": "Merci de réessayer plus tard." - }, - "sign_up_failure": { - "title": "Échec de l'inscription" - }, - "server_error": { - "title": "Erreur du serveur" - }, - "vote_failure": { - "title": "Le vote n’a pas pu être enregistré", - "poll_ended": "Le sondage est terminé" - }, - "discard_post_content": { - "title": "Abandonner le brouillon", - "message": "Confirmez pour abandonner le contenu de votre message." - }, - "publish_post_failure": { - "title": "La publication a échoué", - "message": "La publication a échoué.\nVeuillez vérifier votre accès à Internet.", - "attachments_message": { - "video_attach_with_photo": "Impossible de joindre une vidéo à un statut contenant déjà des images.", - "more_than_one_video": "Impossible de joindre plus d’une vidéo." - } - }, - "edit_profile_failure": { - "title": "Erreur lors de l'édition du profil", - "message": "Impossible de modifier le profil. Veuillez réessayer." - }, - "sign_out": { - "title": "Se déconnecter", - "message": "Voulez-vous vraiment vous déconnecter ?", - "confirm": "Se déconnecter" - }, - "block_domain": { - "title": "Voulez-vous vraiment, vraiment bloquer %s en entier ? Dans la plupart des cas, quelques blocages ou masquages ciblés sont suffisants et préférables. Vous ne verrez plus de contenu provenant de ce domaine, ni dans fils publics, ni dans vos notifications. Vos abonnés utilisant ce domaine seront retirés.", - "block_entire_domain": "Bloquer le domaine" - }, - "save_photo_failure": { - "title": "Échec de l'enregistrement de la photo", - "message": "Veuillez activer la permission d'accès à la photothèque pour enregistrer la photo." - }, - "delete_post": { - "title": "Voulez-vous vraiment supprimer ce message ?", - "message": "Voulez-vous vraiment supprimer ce message ?" - }, - "clean_cache": { - "title": "Vider le cache", - "message": "Cache de %s effacé avec succès." - } - }, - "controls": { - "actions": { - "back": "Retour", - "next": "Suivant", - "previous": "Précédent", - "open": "Ouvrir", - "add": "Ajouter", - "remove": "Supprimer", - "edit": "Éditer", - "save": "Enregistrer", - "ok": "OK", - "done": "Terminé", - "confirm": "Confirmer", - "continue": "Continuer", - "compose": "Rédiger", - "cancel": "Annuler", - "discard": "Abandonner", - "try_again": "Réessayer", - "take_photo": "Prendre une photo", - "save_photo": "Enregistrer la photo", - "copy_photo": "Copier la photo", - "sign_in": "Se connecter", - "sign_up": "Créer un compte", - "see_more": "Voir plus", - "preview": "Aperçu", - "share": "Partager", - "share_user": "Partager %s", - "share_post": "Partager la publication", - "open_in_safari": "Ouvrir dans Safari", - "open_in_browser": "Ouvrir dans le navigateur", - "find_people": "Trouver des personnes à suivre", - "manually_search": "Rechercher manuellement à la place", - "skip": "Passer", - "reply": "Répondre", - "report_user": "Signaler %s", - "block_domain": "Bloquer %s", - "unblock_domain": "Débloquer %s", - "settings": "Paramètres", - "delete": "Supprimer" - }, - "tabs": { - "home": "Accueil", - "search": "Rechercher", - "notification": "Notification", - "profile": "Profil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Basculer vers %s", - "compose_new_post": "Rédiger un nouveau message", - "show_favorites": "Afficher les favoris", - "open_settings": "Ouvrir les paramètres" - }, - "timeline": { - "previous_status": "Publication précédente", - "next_status": "Publication suivante", - "open_status": "Ouvrir la publication", - "open_author_profile": "Ouvrir le profil de l’auteur·rice", - "open_reblogger_profile": "Ouvrir le profil du rebloggeur", - "reply_status": "Répondre à la publication", - "toggle_reblog": "Basculer le reblogue lors de la publication", - "toggle_favorite": "Basculer le favori lors de la publication", - "toggle_content_warning": "Basculer l’avertissement de contenu", - "preview_image": "Prévisualiser l’image" - }, - "segmented_control": { - "previous_section": "Section précédente", - "next_section": "Prochaine section" - } - }, - "status": { - "user_reblogged": "%s a reblogué", - "user_replied_to": "À répondu à %s", - "show_post": "Montrer la publication", - "show_user_profile": "Montrer le profil de l’utilisateur·rice", - "content_warning": "Avertissement de contenu", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tapotez n’importe où pour révéler la publication", - "tap_to_reveal": "Appuyer pour afficher", - "poll": { - "vote": "Voter", - "closed": "Fermé" - }, - "actions": { - "reply": "Répondre", - "reblog": "Rebloguer", - "unreblog": "Annuler le reblog", - "favorite": "Favori", - "unfavorite": "Retirer des favoris", - "menu": "Menu", - "hide": "Cacher", - "show_image": "Afficher l’image", - "show_gif": "Afficher le GIF", - "show_video_player": "Afficher le lecteur vidéo", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Lien", - "hashtag": "Hashtag", - "email": "Courriel", - "emoji": "Émoji" - }, - "visibility": { - "unlisted": "Tout le monde peut voir ce message mais ne sera pas affiché sur le fil public.", - "private": "Seul·e·s leurs abonné·e·s peuvent voir ce message.", - "private_from_me": "Seul·e·s mes abonné·e·s peuvent voir ce message.", - "direct": "Seul·e l’utilisateur·rice mentionnée peut voir ce message." - } - }, - "friendship": { - "follow": "Suivre", - "following": "Suivi", - "request": "Requête", - "pending": "En attente", - "block": "Bloquer", - "block_user": "Bloquer %s", - "block_domain": "Bloquer %s", - "unblock": "Débloquer", - "unblock_user": "Débloquer %s", - "blocked": "Bloqué", - "mute": "Masquer", - "mute_user": "Ignorer %s", - "unmute": "Ne plus ignorer", - "unmute_user": "Ne plus masquer %s", - "muted": "Masqué", - "edit_info": "Éditer les infos" - }, - "timeline": { - "filtered": "Filtré", - "timestamp": { - "now": "À l’instant" - }, - "loader": { - "load_missing_posts": "Charger les messages manquants", - "loading_missing_posts": "Chargement des publications manquantes...", - "show_more_replies": "Charger plus de réponses" - }, - "header": { - "no_status_found": "Aucune publication trouvée", - "blocking_warning": "Vous ne pouvez pas voir le profil de cet utilisateur\n tant que vous ne l’avez pas débloqué\nVotre profil ressemble à ça pour lui.", - "user_blocking_warning": "Vous ne pouvez pas voir le profil de %s\ntant que vous ne l’avez pas débloqué\nVotre profil ressemble à ça pour lui.", - "blocked_warning": "Vous ne pouvez pas voir le profil de cet utilisateur\n tant qu'il ne vous aura pas débloqué.", - "user_blocked_warning": "Vous ne pouvez pas voir le profil de %s\ntant qu’il ne vous aura pas débloqué.", - "suspended_warning": "Cet utilisateur a été suspendu.", - "user_suspended_warning": "Le compte de %s à été suspendu." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Le réseau social qui vous rend le contrôle.", - "get_started": "Prise en main", - "log_in": "Se connecter" - }, - "server_picker": { - "title": "Choisissez un serveur,\nn'importe quel serveur.", - "subtitle": "Choisissez une communauté en fonction de vos intérêts, de votre région ou de votre objectif général.", - "subtitle_extend": "Choisissez une communauté basée sur vos intérêts, votre région ou un but général. Chaque communauté est gérée par une organisation ou un individu entièrement indépendant.", - "button": { - "category": { - "all": "Tout", - "all_accessiblity_description": "Catégorie: Toutes", - "academia": "domaine universitaire", - "activism": "activisme", - "food": "nourriture", - "furry": "furry", - "games": "jeux", - "general": "général", - "journalism": "journalisme", - "lgbt": "lgbt", - "regional": "régional", - "art": "art", - "music": "musique", - "tech": "tech" - }, - "see_less": "Voir moins", - "see_more": "Voir plus" - }, - "label": { - "language": "LANGUE", - "users": "UTILISATEUR·RICE·S", - "category": "CATÉGORIE" - }, - "input": { - "placeholder": "Trouvez un serveur ou rejoignez le vôtre...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Recherche des serveurs disponibles...", - "bad_network": "Une erreur s'est produite lors du chargement des données. Vérifiez votre connexion Internet.", - "no_results": "Aucun résultat" - } - }, - "register": { - "title": "Parlez-nous de vous.", - "input": { - "avatar": { - "delete": "Supprimer" - }, - "username": { - "placeholder": "nom d'utilisateur", - "duplicate_prompt": "Ce nom d'utilisateur est déjà pris." - }, - "display_name": { - "placeholder": "nom affiché" - }, - "email": { - "placeholder": "courriel" - }, - "password": { - "placeholder": "mot de passe", - "require": "Votre mot de passe doit être composé d’au moins :", - "character_limit": "8 caractères", - "accessibility": { - "checked": "vérifié", - "unchecked": "non vérifié" - }, - "hint": "Votre mot de passe doit contenir au moins 8 caractères" - }, - "invite": { - "registration_user_invite_request": "Pourquoi voulez-vous vous inscrire ?" - } - }, - "error": { - "item": { - "username": "Nom d’utilisateur", - "email": "Courriel", - "password": "Mot de passe", - "agreement": "Accord", - "locale": "Lieu", - "reason": "Raison" - }, - "reason": { - "blocked": "%s contient un fournisseur courriel proscrit", - "unreachable": "%s ne semble pas exister", - "taken": "%s est déjà utilisé", - "reserved": "%s est un mot clé réservé", - "accepted": "%s doit être accepté", - "blank": "%s est requis", - "invalid": "%s est invalide", - "too_long": "%s est trop long", - "too_short": "%s est trop court", - "inclusion": "%s n’est pas une valeur acceptée" - }, - "special": { - "username_invalid": "Le nom d’utilisateur ne doit que contenir des caractères alphanumériques et des traits de soulignements", - "username_too_long": "Le nom d’utilisateur est trop long (ne doit pas dépasser 30 caractères)", - "email_invalid": "Cette adresse courriel n’est pas valide", - "password_too_short": "Le mot de passe est trop court (doit contenir au moins 8 caractères)" - } - } - }, - "server_rules": { - "title": "Règles de base.", - "subtitle": "Ces règles sont mis en place par les administrateurs de %s.", - "prompt": "En continuant, vous êtes assujettis à l’entente de service et la politique de confidentialité de %s.", - "terms_of_service": "entente de service", - "privacy_policy": "politique de confidentialité", - "button": { - "confirm": "J’accepte" - } - }, - "confirm_email": { - "title": "Une dernière chose.", - "subtitle": "Nous venons d’envoyer un courriel à %s,\ntapotez le lien pour confirmer votre compte.", - "button": { - "open_email_app": "Ouvrir l’application de courriel", - "resend": "Renvoyer" - }, - "dont_receive_email": { - "title": "Vérifier vos courriels", - "description": "Vérifiez que votre adresse courriel est valide ainsi que votre fichier spam si ce n’est pas déjà fait.", - "resend_email": "Renvoyer le courriel" - }, - "open_email_app": { - "title": "Vérifier votre boîte aux lettres.", - "description": "Nous venons de vous envoyer un courriel. Vérifier votre fichier spam si vous ne l’avez pas déjà fait.", - "mail": "Courriel", - "open_email_client": "Ouvrir le client de messagerie" - } - }, - "home_timeline": { - "title": "Accueil", - "navigation_bar_state": { - "offline": "Hors ligne", - "new_posts": "Voir les nouvelles publications", - "published": "Publié!", - "Publishing": "Publication en cours ...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Trouver des personnes à suivre", - "follow_explain": "Quand vous suivez quelqu'un, vous verrez leurs messages dans votre flux d’accueil." - }, - "compose": { - "title": { - "new_post": "Nouvelle Publication", - "new_reply": "Nouvelle réponse" - }, - "media_selection": { - "camera": "Prendre une photo", - "photo_library": "Bibliothèque d'images", - "browse": "Parcourir" - }, - "content_input_placeholder": "Tapez ou collez ce qui est sur votre esprit", - "compose_action": "Publier", - "replying_to_user": "répondre à %s", - "attachment": { - "photo": "photo", - "video": "vidéo", - "attachment_broken": "Ce %s est brisé et ne peut pas être\ntéléversé sur Mastodon.", - "description_photo": "Décrire cette photo pour les personnes malvoyantes...", - "description_video": "Décrire cette vidéo pour les personnes malvoyantes..." - }, - "poll": { - "duration_time": "Durée: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Heure", - "six_hours": "6 Heures", - "one_day": "1 Jour", - "three_days": "3 jour", - "seven_days": "7 jour", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Écrivez un avertissement précis ici..." - }, - "visibility": { - "public": "Public", - "unlisted": "Non listé", - "private": "Abonnés seulement", - "direct": "Seulement les personnes que je mentionne" - }, - "auto_complete": { - "space_to_add": "Espace à ajouter" - }, - "accessibility": { - "append_attachment": "Joindre un document", - "append_poll": "Ajouter un Sondage", - "remove_poll": "Retirer le sondage", - "custom_emoji_picker": "Sélecteur d’émojis personnalisés", - "enable_content_warning": "Basculer l’avertissement de contenu", - "disable_content_warning": "Désactiver l'avertissement de contenu", - "post_visibility_menu": "Menu de Visibilité de la publication" - }, - "keyboard": { - "discard_post": "Rejeter la publication", - "publish_post": "Publier la publication", - "toggle_poll": "Basculer le sondage", - "toggle_content_warning": "Basculer l’avertissement de contenu", - "append_attachment_entry": "Ajouter une pièce jointe - %s", - "select_visibility_entry": "Sélectionnez la Visibilité - %s" - } - }, - "profile": { - "dashboard": { - "posts": "publications", - "following": "abonnements", - "followers": "abonnés" - }, - "fields": { - "add_row": "Ajouter une rangée", - "placeholder": { - "label": "Étiquette", - "content": "Contenu" - } - }, - "segmented_control": { - "posts": "Publications", - "replies": "Réponses", - "posts_and_replies": "Messages et réponses", - "media": "Média", - "about": "À propos" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Masquer le compte", - "message": "Êtes-vous sûr de vouloir mettre en sourdine %s" - }, - "confirm_unmute_user": { - "title": "Ne plus mettre en sourdine ce compte", - "message": "Êtes-vous sûr de vouloir désactiver la sourdine de %s" - }, - "confirm_block_user": { - "title": "Bloquer le compte", - "message": "Confirmer le blocage de %s" - }, - "confirm_unblock_user": { - "title": "Débloquer le compte", - "message": "Confirmer le déblocage de %s" - } - }, - "accessibility": { - "show_avatar_image": "Afficher l’avatar", - "edit_avatar_image": "Modifier l’avatar", - "show_banner_image": "Afficher l’image de la bannière", - "double_tap_to_open_the_list": "Appuyer deux fois pour ouvrir la liste" - } - }, - "follower": { - "footer": "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s." - }, - "following": { - "footer": "Les abonnés issus des autres serveurs ne sont pas affichés." - }, - "search": { - "title": "Rechercher", - "search_bar": { - "placeholder": "Rechercher des hashtags et des utilisateurs", - "cancel": "Annuler" - }, - "recommend": { - "button_text": "Tout Voir", - "hash_tag": { - "title": "Tendance sur Mastodon", - "description": "Les hashtags qui reçoivent pas mal d'attention", - "people_talking": "%s personnes parlent" - }, - "accounts": { - "title": "Comptes que vous pourriez aimer", - "description": "Vous aimeriez peut-être suivre ces comptes", - "follow": "Suivre" - } - }, - "searching": { - "segment": { - "all": "Tout", - "people": "Personnes", - "hashtags": "Hashtags", - "posts": "Publications" - }, - "empty_state": { - "no_results": "Aucun résultat" - }, - "recent_search": "Recherches récentes", - "clear": "Effacer" - } - }, - "discovery": { - "tabs": { - "posts": "Messages", - "hashtags": "Hashtags", - "news": "Actualité", - "community": "Community", - "for_you": "Pour vous" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Vos favoris" - }, - "notification": { - "title": { - "Everything": "Tout", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "s’est abonné à vous", - "favorited_your_post": "a ajouté votre message à ses favoris", - "reblogged_your_post": "a partagé votre message", - "mentioned_you": "vous a mentionné", - "request_to_follow_you": "vous a envoyé une demande d’abonnement", - "poll_has_ended": "le sondage est terminé" - }, - "keyobard": { - "show_everything": "Tout Afficher", - "show_mentions": "Afficher les mentions" - } - }, - "thread": { - "back_title": "Publication", - "title": "Publication de %s" - }, - "settings": { - "title": "Paramètres", - "section": { - "appearance": { - "title": "Apparence", - "automatic": "Automatique", - "light": "Toujours claire", - "dark": "Toujours sombre" - }, - "look_and_feel": { - "title": "Apparence", - "use_system": "Utiliser le thème du système", - "really_dark": "Très sombre", - "sorta_dark": "Légèrement sombre", - "light": "Clair" - }, - "notifications": { - "title": "Notifications", - "favorites": "Ajoute l’une de mes publications à ses favoris", - "follows": "Me suit", - "boosts": "Reblogue mon message", - "mentions": "Me mentionne", - "trigger": { - "anyone": "n’importe qui", - "follower": "un abonné", - "follow": "toute personne que je suis", - "noone": "personne", - "title": "Me notifier lorsque" - } - }, - "preference": { - "title": "Préférences", - "true_black_dark_mode": "Vrai mode sombre", - "disable_avatar_animation": "Désactiver les avatars animés", - "disable_emoji_animation": "Désactiver les émojis animées", - "using_default_browser": "Utiliser le navigateur par défaut pour ouvrir les liens", - "open_links_in_mastodon": "Ouvrir les liens dans Mastodon" - }, - "boring_zone": { - "title": "La zone ennuyante", - "account_settings": "Paramètres du compte", - "terms": "Entente de service", - "privacy": "Politique de confidentialité" - }, - "spicy_zone": { - "title": "La Zone Épicée", - "clear": "Vider le cache des médias", - "signout": "Se déconnecter" - } - }, - "footer": { - "mastodon_description": "Mastodon est un logiciel open source. Vous pouvez rapporter des problèmes sur GitHub au %s (%s)" - }, - "keyboard": { - "close_settings_window": "Fermer la fenêtre des paramètres" - } - }, - "report": { - "title_report": "Signalement", - "title": "Signaler %s", - "step1": "Étape 1 de 2", - "step2": "Étape 2 de 2", - "content1": "Y a-t-il d’autres messages que vous aimeriez ajouter au signalement?", - "content2": "Y a-t-il quelque chose que les modérateurs devraient savoir sur ce rapport ?", - "report_sent_title": "Merci de nous l’avoir signalé, nous allons examiner cela.", - "send": "Envoyer le rapport", - "skip_to_send": "Envoyer sans commentaire", - "text_placeholder": "Tapez ou collez des informations supplémentaires", - "reported": "SIGNALÉ", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Fermer l'aperçu", - "show_next": "Afficher le suivant", - "show_previous": "Afficher le précédent" - } - }, - "account_list": { - "tab_bar_hint": "Profil sélectionné actuel: %s. Double appui puis maintenez enfoncé pour afficher le changement de compte", - "dismiss_account_switcher": "Rejeter le commutateur de compte", - "add_account": "Ajouter un compte" - }, - "wizard": { - "new_in_mastodon": "Nouveau dans Mastodon", - "multiple_account_switch_intro_description": "Basculez entre plusieurs comptes en appuyant de maniere prolongée sur le bouton profil.", - "accessibility_hint": "Tapotez deux fois pour fermer cet assistant" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/fr_FR/ios-infoPlist.json b/Localization/StringsConvertor/input/fr_FR/ios-infoPlist.json deleted file mode 100644 index d57776dd6..000000000 --- a/Localization/StringsConvertor/input/fr_FR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Utilisé pour prendre une photo lors de la publication d’un statut", - "NSPhotoLibraryAddUsageDescription": "Utilisé pour enregistrer les photos dans la Photothèque", - "NewPostShortcutItemTitle": "Nouvelle Publication", - "SearchShortcutItemTitle": "Rechercher" -} diff --git a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict deleted file mode 100644 index c7bc77310..000000000 --- a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict +++ /dev/null @@ -1,526 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld bhrath nach deach a leughadh - two - %ld bhrath nach deach a leughadh - few - %ld brathan nach deach a leughadh - other - %ld brath nach deach a leughadh - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Tha d’ ion-chur %#@character_count@ ro fhada - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld charactar - two - %ld charactar - few - %ld caractaran - other - %ld caractar - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Tha %#@character_count@ air fhàgail dhut - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld charactar - two - %ld charactar - few - %ld caractaran - other - %ld caractar - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - phost - two - phost - few - postaichean - other - post - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - two - %ld media - few - %ld media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld phost - two - %ld phost - few - %ld postaichean - other - %ld post - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld annsachd - two - %ld annsachd - few - %ld annsachdan - other - %ld annsachd - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld bhrosnachadh - two - %ld bhrosnachadh - few - %ld brosnachaidhean - other - %ld brosnachadh - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld fhreagairt - two - %ld fhreagairt - few - %ld freagairtean - other - %ld freagairt - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld bhòt - two - %ld bhòt - few - %ld bhòtaichean - other - %ld bhòt - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld neach-bhòtaidh - two - %ld luchd-bhòtaidh - few - %ld luchd-bhòtaidh - other - %ld luchd-bhòtaidh - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld a’ bruidhinn - two - %ld a’ bruidhinn - few - %ld a’ bruidhinn - other - %ld a’ bruidhinn - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - A’ leantainn %ld - two - A’ leantainn %ld - few - A’ leantainn %ld - other - A’ leantainn %ld - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Tha %ld a’ leantainn air - two - Tha %ld a’ leantainn air - few - Tha %ld a’ leantainn air - other - Tha %ld a’ leantainn air - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld bhliadhna air fhàgail - two - %ld bhliadhna air fhàgail - few - %ld bliadhnaichean air fhàgail - other - %ld bliadhna air fhàgail - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld mhìos air fhàgail - two - %ld mhìos air fhàgail - few - %ld mìosan air fhàgail - other - %ld mìos air fhàgail - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld latha air fhàgail - two - %ld latha air fhàgail - few - %ld làithean air fhàgail - other - %ld latha air fhàgail - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld uair a thìde air fhàgail - two - %ld uair a thìde air fhàgail - few - %ld uairean a thìde air fhàgail - other - %ld uair a thìde air fhàgail - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld mhionaid air fhàgail - two - %ld mhionaid air fhàgail - few - %ld mionaidean air fhàgail - other - %ld mionaid air fhàgail - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld diog air fhàgail - two - %ld dhiog air fhàgail - few - %ld diogan air fhàgail - other - %ld diog air fhàgail - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld bhl. air ais - two - %ld bhl. air ais - few - %ld bl. air ais - other - %ld bl. air ais - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld mhì. air ais - two - %ld mhì. air ais - few - %ld mì. air ais - other - %ld mì. air ais - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld là air ais - two - %ld là air ais - few - %ld là. air ais - other - %ld là air ais - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ldu air ais - two - %ldu air ais - few - %ldu air ais - other - %ldu air ais - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ldm air ais - two - %ldm air ais - few - %ldm air ais - other - %ldm air ais - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ldd air ais - two - %ldd air ais - few - %ldd air ais - other - %ldd air ais - - - - diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json deleted file mode 100644 index 912be1712..000000000 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Feuch ris a-rithist.", - "please_try_again_later": "Feuch ris a-rithist an ceann greis." - }, - "sign_up_failure": { - "title": "Dh’fhàillig leis a’ chlàradh" - }, - "server_error": { - "title": "Mearachd an fhrithealaiche" - }, - "vote_failure": { - "title": "Dh’fhàillig leis a’ bhòt", - "poll_ended": "Thàinig an cunntas-bheachd gu crìoch" - }, - "discard_post_content": { - "title": "Tilg air falbh an dreachd", - "message": "Dearbh tilgeil air falbh susbaint a’ phuist a sgrìobh thu." - }, - "publish_post_failure": { - "title": "Dh’fhàillig leis an fhoillseachadh", - "message": "Cha deach leinn am post fhoillseachadh.\nThoir sùil air a’ cheangal agad ris an eadar-lìon.", - "attachments_message": { - "video_attach_with_photo": "Chan urrainn dhut video a cheangal ri post sa bheil dealbh mu thràth.", - "more_than_one_video": "Chan urrainn dhut barrachd air aon video a cheangal ris." - } - }, - "edit_profile_failure": { - "title": "Mearachd le deasachadh na pròifil", - "message": "Cha b’ urrainn dhuinn a’ pròifil a dheasachadh. Feuch ris a-rithist." - }, - "sign_out": { - "title": "Clàraich a-mach", - "message": "A bheil thu cinnteach gu bheil thu airson clàradh a-mach?", - "confirm": "Clàraich a-mach" - }, - "block_domain": { - "title": "A bheil thu cinnteach dha-rìribh gu bheil thu airson an àrainn %s a bhacadh uile gu lèir? Mar as trice, foghnaidh gun dèan thu bacadh no mùchadh no dhà gu sònraichte agus bhiod sin na b’ fheàrr. Chan fhaic thu susbaint on àrainn ud agus thèid an luchd-leantainn agad on àrainn ud a thoirt air falbh.", - "block_entire_domain": "Bac an àrainn" - }, - "save_photo_failure": { - "title": "Dh’fhàillig le sàbhaladh an deilbh", - "message": "Cuir cead inntrigidh do thasg-lann nan dealbhan an comas gus an dealbh a shàbhaladh." - }, - "delete_post": { - "title": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?", - "message": "A bheil thu cinnteach gu bheil thu airson am post seo a sguabadh às?" - }, - "clean_cache": { - "title": "Falamhaich an tasgadan", - "message": "Chaidh %s a thasgadan fhalamhachadh." - } - }, - "controls": { - "actions": { - "back": "Air ais", - "next": "Air adhart", - "previous": "Air ais", - "open": "Fosgail", - "add": "Cuir ris", - "remove": "Thoir air falbh", - "edit": "Deasaich", - "save": "Sàbhail", - "ok": "Ceart ma-thà", - "done": "Deiseil", - "confirm": "Dearbh", - "continue": "Lean air adhart", - "compose": "Sgrìobh", - "cancel": "Sguir dheth", - "discard": "Tilg air falbh", - "try_again": "Feuch ris a-rithist", - "take_photo": "Tog dealbh", - "save_photo": "Sàbhail an dealbh", - "copy_photo": "Dèan lethbhreac dhen dealbh", - "sign_in": "Clàraich a-steach", - "sign_up": "Clàraich leinn", - "see_more": "Seall a bharrachd", - "preview": "Ro-sheall", - "share": "Co-roinn", - "share_user": "Co-roinn %s", - "share_post": "Co-roinn am post", - "open_in_safari": "Fosgail ann an Safari", - "open_in_browser": "Fosgail sa bhrabhsair", - "find_people": "Lorg daoine a leanas tu", - "manually_search": "Lorg a làimh ’na àite", - "skip": "Leum thairis air", - "reply": "Freagair", - "report_user": "Dèan gearan mu %s", - "block_domain": "Bac %s", - "unblock_domain": "Dì-bhac %s", - "settings": "Roghainnean", - "delete": "Sguab às" - }, - "tabs": { - "home": "Dachaigh", - "search": "Lorg", - "notification": "Brath", - "profile": "Pròifil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Geàrr leum gu %s", - "compose_new_post": "Sgrìobh post ùr", - "show_favorites": "Seall na h-annsachdan", - "open_settings": "Fosgail na roghainnean" - }, - "timeline": { - "previous_status": "Am post roimhe", - "next_status": "An ath-phost", - "open_status": "Fosgail am post", - "open_author_profile": "Fosgail pròifil an ùghdair", - "open_reblogger_profile": "Fosgail pròifil an neach-brosnachaidh", - "reply_status": "Freagair do phost", - "toggle_reblog": "Toglaich brosnachadh a’ phuist", - "toggle_favorite": "Toglaich annsachd a’ phuist", - "toggle_content_warning": "Toglaich rabhadh susbainte a’ phuist", - "preview_image": "Ro-sheall an dealbh" - }, - "segmented_control": { - "previous_section": "An earrann roimhpe", - "next_section": "An ath earrann" - } - }, - "status": { - "user_reblogged": "Tha %s ’ga bhrosnachadh", - "user_replied_to": "Air %s fhreagairt", - "show_post": "Seall am post", - "show_user_profile": "Seall pròifil a’ chleachdaiche", - "content_warning": "Rabhadh susbainte", - "sensitive_content": "Susbaint fhrionasach", - "media_content_warning": "Thoir gnogag àite sam bith gus a nochdadh", - "tap_to_reveal": "Thoir gnogag gus a nochdadh", - "poll": { - "vote": "Cuir bhòt", - "closed": "Dùinte" - }, - "actions": { - "reply": "Freagair", - "reblog": "Brosnaich", - "unreblog": "Na brosnaich tuilleadh", - "favorite": "Cuir ris na h-annsachdan", - "unfavorite": "Thoir air falbh o na h-annsachdan", - "menu": "Clàr-taice", - "hide": "Falaich", - "show_image": "Seall an dealbh", - "show_gif": "Seall an GIF", - "show_video_player": "Seall cluicheadair video", - "tap_then_hold_to_show_menu": "Thoir gnogag ’s cùm sìos a shealltainn a’ chlàir-thaice" - }, - "tag": { - "url": "URL", - "mention": "Iomradh", - "link": "Ceangal", - "hashtag": "Taga hais", - "email": "Post-d", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Chì a h-uile duine am post seo ach cha nochd e air an loidhne-ama phoblach.", - "private": "Chan fhaic ach an luchd-leantainn aca am post seo.", - "private_from_me": "Chan fhaic ach an luchd-leantainn agam am post seo.", - "direct": "Chan fhaic ach an cleachdaiche air an dugadh iomradh am post seo." - } - }, - "friendship": { - "follow": "Lean air", - "following": "’Ga leantainn", - "request": "Iarrtas", - "pending": "Ri dhèiligeadh", - "block": "Bac", - "block_user": "Bac %s", - "block_domain": "Bac %s", - "unblock": "Dì-bhac", - "unblock_user": "Dì-bhac %s", - "blocked": "’Ga bhacadh", - "mute": "Mùch", - "mute_user": "Mùch %s", - "unmute": "Dì-mhùch", - "unmute_user": "Dì-mhùch %s", - "muted": "’Ga mhùchadh", - "edit_info": "Deasaich" - }, - "timeline": { - "filtered": "Criathraichte", - "timestamp": { - "now": "An-dràsta" - }, - "loader": { - "load_missing_posts": "Luchdaich postaichean a dhìth", - "loading_missing_posts": "A’ luchdadh nam post a tha a dhìth…", - "show_more_replies": "Seall barrachd freagairtean" - }, - "header": { - "no_status_found": "Cha deach post a lorg", - "blocking_warning": "Chan fhaic thu pròifil a’ chleachdaiche seo\n gus an dì-bhac thu iad.\nSeo an coltas a th’ air a’ phròifil agad dhaibh-san.", - "user_blocking_warning": "Chan fhaic thu a’ phròifil aig %s\n gus an dì-bhac thu iad.\nSeo an coltas a th’ air a’ phròifil agad dhaibh-san.", - "blocked_warning": "Chan fhaic thu pròifil a’ chleachdaiche seo\n mus dì-bhac iad thu.", - "user_blocked_warning": "Chan fhaic thu a’ phròifil aig %s\n mus dì-bhac iad thu.", - "suspended_warning": "Chaidh an cleachdaiche seo a chur à rèim.", - "user_suspended_warning": "Chaidh an cunntas aig %s a chur à rèim." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "A’ cur nan lìonraidhean sòisealta\n’nad làmhan fhèin.", - "get_started": "Dèan toiseach-tòiseachaidh", - "log_in": "Clàraich a-steach" - }, - "server_picker": { - "title": "Tagh frithealaiche sam bith.", - "subtitle": "Tagh coimhearsnachd stèidhichte air d’ ùidhean no an roinn-dùthcha agad no tè choitcheann.", - "subtitle_extend": "Tagh coimhearsnachd stèidhichte air d’ ùidhean no an roinn-dùthcha agad no tè choitcheann. Tha gach coimhearsnachd ’ga stiùireadh le buidheann no neach gu neo-eisimeileach.", - "button": { - "category": { - "all": "Na h-uile", - "all_accessiblity_description": "Roinn-seòrsa: Na h-uile", - "academia": "saoghal nan sgoilear", - "activism": "iomairteachd", - "food": "biadh", - "furry": "furry", - "games": "geamannan", - "general": "coitcheann", - "journalism": "naidheachdas", - "lgbt": "LGBT", - "regional": "ionadail", - "art": "ealain", - "music": "ceòl", - "tech": "teicneolas" - }, - "see_less": "Seall nas lugha", - "see_more": "Seall a bharrachd" - }, - "label": { - "language": "CÀNAN", - "users": "CLEACHDAICHEAN", - "category": "ROINN-SEÒRSA" - }, - "input": { - "placeholder": "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "A’ lorg nam frithealaichean ri am faighinn…", - "bad_network": "Chaidh rudeigin ceàrr le luchdadh an dàta. Thoir sùil air a’ cheangal agad ris an eadar-lìon.", - "no_results": "Gun toradh" - } - }, - "register": { - "title": "Innis dhuinn mu do dhèidhinn.", - "input": { - "avatar": { - "delete": "Sguab às" - }, - "username": { - "placeholder": "ainm-cleachdaiche", - "duplicate_prompt": "Tha an t-ainm-cleachdaiche seo aig cuideigin eile." - }, - "display_name": { - "placeholder": "ainm-taisbeanaidh" - }, - "email": { - "placeholder": "post-d" - }, - "password": { - "placeholder": "facal-faire", - "require": "Feumaidh am facal-faire agad co-dhiù:", - "character_limit": "8 caractaran", - "accessibility": { - "checked": "le cromag", - "unchecked": "gun chromag" - }, - "hint": "Feumaidh ochd caractaran a bhith san fhacal-fhaire agad air a char as giorra" - }, - "invite": { - "registration_user_invite_request": "Carson a bu mhiann leat ballrachd fhaighinn?" - } - }, - "error": { - "item": { - "username": "Ainm-cleachdaiche", - "email": "Post-d", - "password": "Facal-faire", - "agreement": "Aonta", - "locale": "Sgeama ionadail", - "reason": "Adhbhar" - }, - "reason": { - "blocked": "Tha solaraiche puist-d nach eil ceadaichte am broinn %s", - "unreachable": "Tha coltas nach eil %s ann", - "taken": "Tha %s ’ga chleachdadh mu thràth", - "reserved": "’S e facal glèidhte a th’ ann an %s", - "accepted": "Feumaidh tu aontachadh ri %s", - "blank": "Tha %s riatanach", - "invalid": "Chan eil %s dligheach", - "too_long": "Tha %s ro fhada", - "too_short": "Tha %s ro ghoirid", - "inclusion": "Cha chuir sinn taic ri luach %s" - }, - "special": { - "username_invalid": "Chan fhaod ach litrichean gun stràcan is fo-loidhnichean a bhith am broinn ainm-cleachdaiche", - "username_too_long": "Tha an t-ainm-cleachdaiche ro fhada (chan fhaod e a bhith nas fhaide na 30 caractar)", - "email_invalid": "Chan e seòladh puist-d dligheach a tha seo", - "password_too_short": "Tha am facal-faire ro ghoirid (feumaidh 8 caractaran a bhith ann air a char as giorra)" - } - } - }, - "server_rules": { - "title": "Riaghailt bhunasach no dhà.", - "subtitle": "Shuidhich rianairean %s na riaghailtean seo.", - "prompt": "Ma leanas tu air adhart, bidh thu fo bhuaidh teirmichean seirbheise is poileasaidh prìobhaideachd %s.", - "terms_of_service": "teirmichean na seirbheise", - "privacy_policy": "poileasaidh prìobhaideachd", - "button": { - "confirm": "Gabhaidh mi ris" - } - }, - "confirm_email": { - "title": "Aon rud eile.", - "subtitle": "Tha sinn air post-d a chur gu %s,\nthoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad.", - "button": { - "open_email_app": "Fosgail aplacaid a’ phuist-d", - "resend": "Ath-chuir" - }, - "dont_receive_email": { - "title": "Thoir sùil air a’ phost-d agad", - "description": "Dearbh gu bheil an seòladh puist-d agad mar bu chòir agus nach eil dad ann am pasgan an truilleis.", - "resend_email": "Cuir am post-d a-rithist" - }, - "open_email_app": { - "title": "Thoir sùil air a’ bhogsa a-steach agad.", - "description": "Tha sinn air post-d a chur thugad. Thoir sùil air pasgan an truilleis agad mura d’ fhuair thu e.", - "mail": "Post", - "open_email_client": "Fosgail cliant puist-d" - } - }, - "home_timeline": { - "title": "Dachaigh", - "navigation_bar_state": { - "offline": "Far loidhne", - "new_posts": "Seall na postaichean ùra", - "published": "Chaidh fhoillseachadh!", - "Publishing": "A’ foillseachadh a’ phuist…", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Lorg daoine a leanas tu", - "follow_explain": "Nuair a leanas tu air cuideigin, chì thu na puist aca air inbhir na dachaigh agad." - }, - "compose": { - "title": { - "new_post": "Post ùr", - "new_reply": "Freagairt ùr" - }, - "media_selection": { - "camera": "Tog dealbh", - "photo_library": "Leabhar-lann nan dealbhan", - "browse": "Rùraich" - }, - "content_input_placeholder": "Sgrìobh no cuir ann na tha air d’ aire", - "compose_action": "Foillsich", - "replying_to_user": "a’ freagairt gu %s", - "attachment": { - "photo": "dealbh", - "video": "video", - "attachment_broken": "Seo %s a tha briste is cha ghabh\na luchdadh suas gu Mastodon.", - "description_photo": "Mìnich an dealbh dhan fheadhainn air a bheil cion-lèirsinne…", - "description_video": "Mìnich a’ video dhan fheadhainn air a bheil cion-lèirsinne…" - }, - "poll": { - "duration_time": "Faide: %s", - "thirty_minutes": "Leth-uair a thìde", - "one_hour": "Uair a thìde", - "six_hours": "6 uairean a thìde", - "one_day": "Latha", - "three_days": "3 làithean", - "seven_days": "Seachdain", - "option_number": "Roghainn %ld" - }, - "content_warning": { - "placeholder": "Sgrìobh rabhadh pongail an-seo…" - }, - "visibility": { - "public": "Poblach", - "unlisted": "Falaichte o liostaichean", - "private": "Luchd-leantainn a-mhàin", - "direct": "Daoine air an dug mi iomradh a-mhàin" - }, - "auto_complete": { - "space_to_add": "Brùth air Space gus a chur ris" - }, - "accessibility": { - "append_attachment": "Cuir ceanglachan ris", - "append_poll": "Cuir cunntas-bheachd ris", - "remove_poll": "Thoir air falbh an cunntas-bheachd", - "custom_emoji_picker": "Roghnaichear nan Emoji gnàthaichte", - "enable_content_warning": "Cuir rabhadh susbainte an comas", - "disable_content_warning": "Cuir rabhadh susbainte à comas", - "post_visibility_menu": "Clàr-taice faicsinneachd a’ phuist" - }, - "keyboard": { - "discard_post": "Tilg air falbh am post", - "publish_post": "Foillsich am post", - "toggle_poll": "Toglaich an cunntas-bheachd", - "toggle_content_warning": "Toglaich rabhadh susbainte", - "append_attachment_entry": "Cuir ceanglachan ris – %s", - "select_visibility_entry": "Tagh an fhaicsinneachd – %s" - } - }, - "profile": { - "dashboard": { - "posts": "postaichean", - "following": "a’ leantainn", - "followers": "luchd-leantainn" - }, - "fields": { - "add_row": "Cuir ràgh ris", - "placeholder": { - "label": "Leubail", - "content": "Susbaint" - } - }, - "segmented_control": { - "posts": "Postaichean", - "replies": "Freagairtean", - "posts_and_replies": "Postaichean ’s freagairtean", - "media": "Meadhanan", - "about": "Mu dhèidhinn" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mùch an cunntas", - "message": "Dearbh mùchadh %s" - }, - "confirm_unmute_user": { - "title": "Dì-mhùch an cunntas", - "message": "Dearbh dì-mhùchadh %s" - }, - "confirm_block_user": { - "title": "Bac an cunntas", - "message": "Dearbh bacadh %s" - }, - "confirm_unblock_user": { - "title": "Dì-bhac an cunntas", - "message": "Dearbh dì-bhacadh %s" - } - }, - "accessibility": { - "show_avatar_image": "Seall dealbh an avatar", - "edit_avatar_image": "Deasaich dealbh an avatar", - "show_banner_image": "Seall dealbh brataich", - "double_tap_to_open_the_list": "Thoir gnogag dhùbailte a dh’fhosgladh na liosta" - } - }, - "follower": { - "footer": "Cha dèid luchd-leantainn o fhrithealaichean eile a shealltainn." - }, - "following": { - "footer": "Cha dèid cò air a leanas tu air frithealaichean eile a shealltainn." - }, - "search": { - "title": "Lorg", - "search_bar": { - "placeholder": "Lorg sna tagaichean hais is cleachdaichean", - "cancel": "Sguir dheth" - }, - "recommend": { - "button_text": "Seall na h-uile", - "hash_tag": { - "title": "A’ treandadh air Mastodon", - "description": "Tagaichean hais le aire orra an-dràsta", - "people_talking": "Tha %s a’ bruidhinn" - }, - "accounts": { - "title": "Cunntasan a chòrdas riut ma dh’fhaoidte", - "description": "Saoil am bu toigh leat leantainn air na cunntasan seo?", - "follow": "Lean air" - } - }, - "searching": { - "segment": { - "all": "Na h-uile", - "people": "Daoine", - "hashtags": "Tagaichean hais", - "posts": "Postaichean" - }, - "empty_state": { - "no_results": "Gun toradh" - }, - "recent_search": "Na lorg thu o chionn goirid", - "clear": "Falamhaich" - } - }, - "discovery": { - "tabs": { - "posts": "Postaichean", - "hashtags": "Tagaichean hais", - "news": "Naidheachdan", - "community": "Coimhearsnachd", - "for_you": "Dhut-sa" - }, - "intro": "Seo na postaichean fèillmhor ’nad cheàrnaidh de Mhastodon." - }, - "favorite": { - "title": "Na h-annsachdan agad" - }, - "notification": { - "title": { - "Everything": "A h-uile rud", - "Mentions": "Iomraidhean" - }, - "notification_description": { - "followed_you": "– ’s iad ’gad leantainn a-nis", - "favorited_your_post": "– is annsa leotha am post agad", - "reblogged_your_post": "– ’s iad air am post agad a bhrosnachadh", - "mentioned_you": "– ’s iad air iomradh a thoirt ort", - "request_to_follow_you": "iarrtas leantainn ort", - "poll_has_ended": "thàinig cunntas-bheachd gu crìoch" - }, - "keyobard": { - "show_everything": "Seall a h-uile càil", - "show_mentions": "Seall na h-iomraidhean" - } - }, - "thread": { - "back_title": "Post", - "title": "Post le %s" - }, - "settings": { - "title": "Roghainnean", - "section": { - "appearance": { - "title": "Coltas", - "automatic": "Fèin-obrachail", - "light": "Soilleir an-còmhnaidh", - "dark": "Dorcha an-còmhnaidh" - }, - "look_and_feel": { - "title": "Coltas", - "use_system": "Cleachd coltas an t-siostaim", - "really_dark": "Glè dhorcha", - "sorta_dark": "Caran dorcha", - "light": "Soilleir" - }, - "notifications": { - "title": "Brathan", - "favorites": "Nuair as annsa leotha am post agam", - "follows": "Nuair a leanas iad orm", - "boosts": "Nuair a bhrosnaicheas iad post uam", - "mentions": "Nuair a bheir iad iomradh orm", - "trigger": { - "anyone": "Airson duine sam bith, cuir brath thugam", - "follower": "Airson luchd-leantainn, cuir brath thugam", - "follow": "Airson daoine air a leanas mi, cuir brath thugam", - "noone": "Na cuir brath thugam idir", - "title": " " - } - }, - "preference": { - "title": "Roghainnean", - "true_black_dark_mode": "Modh dubh dorcha", - "disable_avatar_animation": "Cuir beothachadh nan avataran à comas", - "disable_emoji_animation": "Cuir beothachadh nan Emojis à comas", - "using_default_browser": "Cleachd am brabhsair bunaiteach airson ceanglaichean fhosgladh", - "open_links_in_mastodon": "Fosgail ceanglaichean ann am Mastodon" - }, - "boring_zone": { - "title": "An earrann ràsanach", - "account_settings": "Roghainnean a’ chunntais", - "terms": "Teirmichean na seirbheise", - "privacy": "Am poileasaidh prìobhaideachd" - }, - "spicy_zone": { - "title": "Gnìomhan", - "clear": "Falamhaich tasgadan nam meadhanan", - "signout": "Clàraich a-mach" - } - }, - "footer": { - "mastodon_description": "’S e bathar-bog le bun-tùs fosgailte a th’ ann am Mastodon. ’S urrainn dhut aithris a dhèanamh air duilgheadasan air GitHub fo %s (%s)" - }, - "keyboard": { - "close_settings_window": "Dùin uinneag nan roghainnean" - } - }, - "report": { - "title_report": "Dèan gearan", - "title": "Dèan gearan mu %s", - "step1": "Ceum 1 à 2", - "step2": "Ceum 2 à 2", - "content1": "A bheil post sam bith eile ann a bu mhiann leat cur ris a’ ghearan?", - "content2": "A bheil rud sam bith ann a bu mhiann leat innse dha na maoir mun ghearan seo?", - "report_sent_title": "Mòran taing airson a’ ghearain, bheir sinn sùil air.", - "send": "Cuir an gearan", - "skip_to_send": "Cuir gun bheachd ris", - "text_placeholder": "Sgrìobh no cuir ann beachdan a bharrachd", - "reported": "CHAIDH GEARAN A DHÈANAMH", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Dùin an ro-shealladh", - "show_next": "Air adhart", - "show_previous": "Air ais" - } - }, - "account_list": { - "tab_bar_hint": "A’ phròifil air a taghadh: %s. Thoir gnogag dhùbailte is cùm sìos a ghearradh leum gu cunntas eile", - "dismiss_account_switcher": "Leig seachad taghadh a’ chunntais", - "add_account": "Cuir cunntas ris" - }, - "wizard": { - "new_in_mastodon": "Na tha ùr ann am Mastodon", - "multiple_account_switch_intro_description": "Geàrr leum eadar iomadh cunntas le cumail sìos putan na pròifil.", - "accessibility_hint": "Thoir gnogag dhùbailte a’ leigeil seachad an draoidh seo" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/gd_GB/ios-infoPlist.json b/Localization/StringsConvertor/input/gd_GB/ios-infoPlist.json deleted file mode 100644 index 2e521376d..000000000 --- a/Localization/StringsConvertor/input/gd_GB/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "’Ga chleachdadh airson dealbh a thogail do staid puist", - "NSPhotoLibraryAddUsageDescription": "’Ga chleachdadh airson dealbh a shàbhaladh ann an tasg-lann nan dealbhan", - "NewPostShortcutItemTitle": "Post ùr", - "SearchShortcutItemTitle": "Lorg" -} diff --git a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict deleted file mode 100644 index abd72c1b9..000000000 --- a/Localization/StringsConvertor/input/gl_ES/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificación non lida - other - %ld notificacións non lidas - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - O límite supera %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - O límite de entrada mantense en %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - publicación - other - publicacións - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mutlimedia - other - %ld multimedias - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 publicación - other - %ld publicacións - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorito - other - %ld favoritos - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 promoción - other - %ld promocións - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 resposta - other - %ld respostas - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld votos - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votantes - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 persoa comentando - other - %ld persoas comentando - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguimento - other - %ld seguimentos - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidora - other - %ld seguidoras - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 ano - other - Quedan %ld anos - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 mes - other - Quedan %ld meses - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 día - other - Quedan %ld días - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 hora - other - Quedan %ld horas - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 minuto - other - Quedan %ld minutos - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Queda 1 segundo - other - Quedan %ld segundos - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hai 1 ano - other - hai %ld anos - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hai 1 mes - other - hai %ld meses - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hai 1 día - other - hai %ld días - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fai 1 hora - other - fai %ld horas - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fai 1 minuto - other - fai %ld minutos - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - fai 1 seg. - other - fai %ld seg. - - - - diff --git a/Localization/StringsConvertor/input/gl_ES/app.json b/Localization/StringsConvertor/input/gl_ES/app.json deleted file mode 100644 index 162a2a3dd..000000000 --- a/Localization/StringsConvertor/input/gl_ES/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Inténtao de novo.", - "please_try_again_later": "Inténtao de novo máis tarde." - }, - "sign_up_failure": { - "title": "Fallou o rexistro" - }, - "server_error": { - "title": "Erro do servidor" - }, - "vote_failure": { - "title": "Fallou a votación", - "poll_ended": "A enquisa rematou" - }, - "discard_post_content": { - "title": "Descartar Borrador", - "message": "Confirma que queres descartar o contido do borrador." - }, - "publish_post_failure": { - "title": "Fallou a publicación", - "message": "Fallou a publicación.\nComproba a conexión a internet.", - "attachments_message": { - "video_attach_with_photo": "Non podes anexar un vídeo a unha publicación que xa contén imaxes.", - "more_than_one_video": "Non podes anexar máis de un vídeo." - } - }, - "edit_profile_failure": { - "title": "Erro ao editar o perfil", - "message": "Non se editou o perfil. Inténtao máis tarde." - }, - "sign_out": { - "title": "Pechar sesión", - "message": "Tes a certeza de queres pechar a sesión?", - "confirm": "Pechar sesión" - }, - "block_domain": { - "title": "Tes a certeza de querer bloquear todo de %s? Na meirande parte dos casos uns bloqueos ou silenciados específicos son suficientes e preferibles. Non verás máis o contido deste dominio en ningunha cronoloxía pública e as túas seguidoras deste dominio serán eliminadas.", - "block_entire_domain": "Bloquear Dominio" - }, - "save_photo_failure": { - "title": "Erro ao gardar a fotografía", - "message": "Activa o permiso de acceso á galería de fotos para gardar a foto." - }, - "delete_post": { - "title": "Eliminar publicación", - "message": "Tes a certeza de querer eliminar esta publicación?" - }, - "clean_cache": { - "title": "Limpar caché", - "message": "Baleirouse %s da caché correctamente." - } - }, - "controls": { - "actions": { - "back": "Volver", - "next": "Seguinte", - "previous": "Anterior", - "open": "Abrir", - "add": "Engadir", - "remove": "Eliminar", - "edit": "Editar", - "save": "Gardar", - "ok": "OK", - "done": "Feito", - "confirm": "Confirmar", - "continue": "Continuar", - "compose": "Escribir", - "cancel": "Cancelar", - "discard": "Descartar", - "try_again": "Intentar de novo", - "take_photo": "Facer foto", - "save_photo": "Gardar foto", - "copy_photo": "Copiar foto", - "sign_in": "Acceder", - "sign_up": "Inscribirse", - "see_more": "Ver máis", - "preview": "Vista previa", - "share": "Compartir", - "share_user": "Compartir %s", - "share_post": "Compartir publicación", - "open_in_safari": "Abrir en Safari", - "open_in_browser": "Abrir no navegador", - "find_people": "Atopar persoas para seguir", - "manually_search": "Buscar de xeito manual", - "skip": "Omitir", - "reply": "Responder", - "report_user": "Denunciar a %s", - "block_domain": "Bloquear a %s", - "unblock_domain": "Desbloquear a %s", - "settings": "Axustes", - "delete": "Eliminar" - }, - "tabs": { - "home": "Inicio", - "search": "Busca", - "notification": "Notificación", - "profile": "Perfil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Cambiar a %s", - "compose_new_post": "Escribir Nova publicación", - "show_favorites": "Mostrar Favoritos", - "open_settings": "Abrir axustes" - }, - "timeline": { - "previous_status": "Publicación anterior", - "next_status": "Publicación seguinte", - "open_status": "Abrir publicación", - "open_author_profile": "Ver Perfil da autora", - "open_reblogger_profile": "Ver perfil de quen promoveu", - "reply_status": "Responder á publicación", - "toggle_reblog": "Promover a publicación", - "toggle_favorite": "Engadir publicación a Favoritas", - "toggle_content_warning": "Marcar con Aviso sobre o contido", - "preview_image": "Previsualización da imaxe" - }, - "segmented_control": { - "previous_section": "Sección anterior", - "next_section": "Sección seguinte" - } - }, - "status": { - "user_reblogged": "%s promoveu", - "user_replied_to": "Respondeu a %s", - "show_post": "Mostrar publicación", - "show_user_profile": "Mostrar perfil da usuaria", - "content_warning": "Aviso sobre o contido", - "sensitive_content": "Contido sensible", - "media_content_warning": "Toca nalgures para mostrar", - "tap_to_reveal": "Toca para mostrar", - "poll": { - "vote": "Votar", - "closed": "Pechada" - }, - "actions": { - "reply": "Responder", - "reblog": "Promover", - "unreblog": "Retirar promoción", - "favorite": "Favorecer", - "unfavorite": "Eliminar dos favoritos", - "menu": "Menú", - "hide": "Agochar", - "show_image": "Mostrar a imaxe", - "show_gif": "Mostrar GIF", - "show_video_player": "Mostrar reprodutor de vídeo", - "tap_then_hold_to_show_menu": "Toca e mantén preso para menú" - }, - "tag": { - "url": "URL", - "mention": "Mención", - "link": "Ligazón", - "hashtag": "Cancelo", - "email": "Email", - "emoji": "Emoticona" - }, - "visibility": { - "unlisted": "A publicación é visible para calquera pero non aparece na cronoloxía pública.", - "private": "Só as seguidoras poden ver a publicación.", - "private_from_me": "Só as miñas seguidoras poden ver esta publicación.", - "direct": "Só a usuaria mencionada pode ver a publicación." - } - }, - "friendship": { - "follow": "Seguir", - "following": "Seguindo", - "request": "Solicitar", - "pending": "Pendente", - "block": "Bloquear", - "block_user": "Bloquear a %s", - "block_domain": "Bloquear a %s", - "unblock": "Desbloquear", - "unblock_user": "Desbloquear a %s", - "blocked": "Bloqueada", - "mute": "Acalar", - "mute_user": "Acalar a %s", - "unmute": "Non Acalar", - "unmute_user": "Deixar de acalar a @%s", - "muted": "Acalada", - "edit_info": "Editar info" - }, - "timeline": { - "filtered": "Filtrado", - "timestamp": { - "now": "Agora" - }, - "loader": { - "load_missing_posts": "Cargar publicacións que faltan", - "loading_missing_posts": "Cargando as publicacións que faltan...", - "show_more_replies": "Mostrar máis respostas" - }, - "header": { - "no_status_found": "Non se atopa a publicación", - "blocking_warning": "Non podes ver o perfil da usuaria\nata que a desbloquees.\nAsí ven outras o teu perfil.", - "user_blocking_warning": "Non podes ver o perfil de %s\nata que o desbloquees.\nAsí se ve o teu perfil.", - "blocked_warning": "Non podes ver o perfil desta usuaria\nata que te desbloquee.", - "user_blocked_warning": "Non podes ver o perfil de %s\nata que te desbloquee.", - "suspended_warning": "Esta usuaria foi suspendida.", - "user_suspended_warning": "A conta de %s foi suspendida." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Comunicación social\nde volta ás túas mans.", - "get_started": "Comezar", - "log_in": "Acceder" - }, - "server_picker": { - "title": "Mastodon fórmano as persoas das diferentes comunidades.", - "subtitle": "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral.", - "subtitle_extend": "Elixe unha comunidade en función dos teus intereses, rexión ou unha de propósito xeral. Cada comunidade está xestionada por unha organización totalmente independente ou unha única persoa.", - "button": { - "category": { - "all": "Todo", - "all_accessiblity_description": "Categoría: Todo", - "academia": "academia", - "activism": "activismo", - "food": "comida", - "furry": "peluxos", - "games": "xogos", - "general": "xeral", - "journalism": "xornalismo", - "lgbt": "lgbt", - "regional": "rexional", - "art": "arte", - "music": "música", - "tech": "tecnoloxía" - }, - "see_less": "Ver menos", - "see_more": "Ver máis" - }, - "label": { - "language": "IDIOMA", - "users": "USUARIAS", - "category": "CATEGORÍA" - }, - "input": { - "placeholder": "Buscar comunidades", - "search_servers_or_enter_url": "Busca comunidades ou escribe URL" - }, - "empty_state": { - "finding_servers": "Buscando servidores dispoñibles...", - "bad_network": "Algo fallou ao cargar os datos. Comproba a conexión a internet.", - "no_results": "Sen resultados" - } - }, - "register": { - "title": "Imos crear a túa conta en %s", - "input": { - "avatar": { - "delete": "Eliminar" - }, - "username": { - "placeholder": "identificador", - "duplicate_prompt": "Este nome de usuaria xa está en uso." - }, - "display_name": { - "placeholder": "nome público" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "contrasinal", - "require": "O contrasinal debe ter polo menos:", - "character_limit": "8 caracteres", - "accessibility": { - "checked": "validado", - "unchecked": "non validado" - }, - "hint": "O teu contrasinal debe ter cando menos oito caracteres" - }, - "invite": { - "registration_user_invite_request": "Por que queres unirte?" - } - }, - "error": { - "item": { - "username": "Identificador", - "email": "Email", - "password": "Contrasinal", - "agreement": "Acordo", - "locale": "Locale", - "reason": "Razón" - }, - "reason": { - "blocked": "%s é un provedor de email non autorizado", - "unreachable": "%s semella que non existe", - "taken": "%s xa está en uso", - "reserved": "%s é unha palabra reservada", - "accepted": "%s debe ser aceptado", - "blank": "%s é requerido", - "invalid": "%s non é válido", - "too_long": "%s é demasiado longo", - "too_short": "%s é demasiado curto", - "inclusion": "%s non é un valor soportado" - }, - "special": { - "username_invalid": "O nome de usuaria só pode ter caracteres alfanuméricos e trazos baixos", - "username_too_long": "O nome de usuaria é demasiado longo (maior de 30 caracteres)", - "email_invalid": "Este non é un enderezo válido de email", - "password_too_short": "O contrasinal é demasiado curto (debe ter 8 caracteres como mínimo)" - } - } - }, - "server_rules": { - "title": "Algunhas regras básicas.", - "subtitle": "Son establecidas e aplicadas pola moderación de %s.", - "prompt": "Ao continuar, acatas os termos do servizo e a política de privacidade para %s.", - "terms_of_service": "termos do servizo", - "privacy_policy": "polícica de privacidade", - "button": { - "confirm": "Acepto" - } - }, - "confirm_email": { - "title": "O último detalle.", - "subtitle": "Preme na ligazón que che enviamos ao email para verificar a conta.", - "button": { - "open_email_app": "Abrir app de email", - "resend": "Reenviar" - }, - "dont_receive_email": { - "title": "Revisa o teu correo", - "description": "Comproba que o enderezo de email é correcto e que non vaia directo ao cartafol de spam.", - "resend_email": "Volver enviar o correo" - }, - "open_email_app": { - "title": "Mira na caixa de correo.", - "description": "Enviámosche un email. Se non aparece, mira no cartafol do lixo.", - "mail": "Correo", - "open_email_client": "Abrir cliente de email" - } - }, - "home_timeline": { - "title": "Inicio", - "navigation_bar_state": { - "offline": "Sen conexión", - "new_posts": "Novas publicacións", - "published": "Publicado!", - "Publishing": "Publicando...", - "accessibility": { - "logo_label": "Botón do logo", - "logo_hint": "Toca para ir arriba e toca outra vez para volver ao mesmo lugar" - } - } - }, - "suggestion_account": { - "title": "Atopar persoas para seguir", - "follow_explain": "Cando sigas a alguén verás as súas publicacións na cronoloxía de inicio." - }, - "compose": { - "title": { - "new_post": "Nova publicación", - "new_reply": "Nova resposta" - }, - "media_selection": { - "camera": "Facer foto", - "photo_library": "Biblioteca de fotos", - "browse": "Explorar" - }, - "content_input_placeholder": "Escribe o que che apeteza", - "compose_action": "Publicar", - "replying_to_user": "en resposta a %s", - "attachment": { - "photo": "foto", - "video": "vídeo", - "attachment_broken": "Este %s está estragado e non pode\nser subido a Mastodon.", - "description_photo": "Describe a foto para persoas con problemas visuais...", - "description_video": "Describe o vídeo para persoas con problemas visuais..." - }, - "poll": { - "duration_time": "Duración: %s", - "thirty_minutes": "30 minutos", - "one_hour": "1 Hora", - "six_hours": "6 Horas", - "one_day": "1 Día", - "three_days": "3 Días", - "seven_days": "7 Días", - "option_number": "Opción %ld" - }, - "content_warning": { - "placeholder": "Escribe o teu aviso aquí..." - }, - "visibility": { - "public": "Público", - "unlisted": "Non listado", - "private": "Só para seguidoras", - "direct": "Só para persoas mencionadas" - }, - "auto_complete": { - "space_to_add": "Barra de espazo engade" - }, - "accessibility": { - "append_attachment": "Engadir anexo", - "append_poll": "Engadir enquisa", - "remove_poll": "Eliminar enquisa", - "custom_emoji_picker": "Selector emoji personalizado", - "enable_content_warning": "Marcar con Aviso sobre o contido", - "disable_content_warning": "Retirar Aviso sobre o contido", - "post_visibility_menu": "Visibilidade da publicación" - }, - "keyboard": { - "discard_post": "Descartar publicación", - "publish_post": "Publicar", - "toggle_poll": "Activar enquisa", - "toggle_content_warning": "Marcar con Aviso sobre o contido", - "append_attachment_entry": "Engadir anexo - %s", - "select_visibility_entry": "Elexir visibilidade - %s" - } - }, - "profile": { - "dashboard": { - "posts": "publicacións", - "following": "seguindo", - "followers": "seguidoras" - }, - "fields": { - "add_row": "Engadir fila", - "placeholder": { - "label": "Etiqueta", - "content": "Contido" - } - }, - "segmented_control": { - "posts": "Publicacións", - "replies": "Respostas", - "posts_and_replies": "Publicacións e respostas", - "media": "Multimedia", - "about": "Acerca de" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Acalar conta", - "message": "Confirma Acalar a %s" - }, - "confirm_unmute_user": { - "title": "Retirar acalado da Conta", - "message": "Confirma restablecer a %s" - }, - "confirm_block_user": { - "title": "Bloquear Conta", - "message": "Confirma o bloqueo de %s" - }, - "confirm_unblock_user": { - "title": "Desbloquear Conta", - "message": "Confirma o desbloqueo de %s" - } - }, - "accessibility": { - "show_avatar_image": "Mostrar imaxe de avatar", - "edit_avatar_image": "Editar imaxe de avatar", - "show_banner_image": "Mostrar imaxe de cabeceira", - "double_tap_to_open_the_list": "Dous toques para abrir a lista" - } - }, - "follower": { - "footer": "Non se mostran seguidoras desde outros servidores." - }, - "following": { - "footer": "Non se mostran os seguimentos desde outros servidores." - }, - "search": { - "title": "Procurar", - "search_bar": { - "placeholder": "Buscar cancelos e usuarias", - "cancel": "Cancelar" - }, - "recommend": { - "button_text": "Ver todo", - "hash_tag": { - "title": "En voga en Mastodon", - "description": "Cancelos que están recibindo moita atención", - "people_talking": "%s persoas están comentando" - }, - "accounts": { - "title": "Contas que poderían gustarche", - "description": "Mira se che interesan estas contas", - "follow": "Seguir" - } - }, - "searching": { - "segment": { - "all": "Todo", - "people": "Persoas", - "hashtags": "Cancelos", - "posts": "Publicacións" - }, - "empty_state": { - "no_results": "Sen resultados" - }, - "recent_search": "Buscas recentes", - "clear": "Limpar" - } - }, - "discovery": { - "tabs": { - "posts": "Publicacións", - "hashtags": "Cancelos", - "news": "Novas", - "community": "Comunidade", - "for_you": "Para ti" - }, - "intro": "Estas son as publicacións en voga no teu recuncho de Mastodon." - }, - "favorite": { - "title": "Publicacións Favoritas" - }, - "notification": { - "title": { - "Everything": "Todo", - "Mentions": "Mencións" - }, - "notification_description": { - "followed_you": "séguete", - "favorited_your_post": "marcou a túa publicación como favorita", - "reblogged_your_post": "compartiu a túa publicación", - "mentioned_you": "mencionoute", - "request_to_follow_you": "solicitou seguirte", - "poll_has_ended": "a enquisa rematou" - }, - "keyobard": { - "show_everything": "Mostrar Todo", - "show_mentions": "Mostrar mencións" - } - }, - "thread": { - "back_title": "Publicación", - "title": "Publicación de %s" - }, - "settings": { - "title": "Axustes", - "section": { - "appearance": { - "title": "Aparencia", - "automatic": "Automático", - "light": "Sempre claro", - "dark": "Sempre escuro" - }, - "look_and_feel": { - "title": "Aparencia", - "use_system": "Seguir o sistema", - "really_dark": "Realmente escuro", - "sorta_dark": "Algo escuro", - "light": "Claro" - }, - "notifications": { - "title": "Notificacións", - "favorites": "Favorece a miña publicación", - "follows": "Me segue", - "boosts": "Promove a miña publicación", - "mentions": "Me menciona", - "trigger": { - "anyone": "calquera", - "follower": "unha seguidora", - "follow": "alguén a quen sigo", - "noone": "ninguén", - "title": "Avisarme cando" - } - }, - "preference": { - "title": "Preferencias", - "true_black_dark_mode": "Modo negro verdadeiro", - "disable_avatar_animation": "Desactivar avatares animados", - "disable_emoji_animation": "Desactivar emojis animados", - "using_default_browser": "Usar navegador por defecto para as ligazóns", - "open_links_in_mastodon": "Abrir ligazóns en Mastodon" - }, - "boring_zone": { - "title": "A zona aburrida", - "account_settings": "Axustes da conta", - "terms": "Termos do Servizo", - "privacy": "Política de Privacidade" - }, - "spicy_zone": { - "title": "A zona picante", - "clear": "Limpar caché multimedia", - "signout": "Pechar sesión" - } - }, - "footer": { - "mastodon_description": "Mastodon é software de código aberto. Podes informar de fallos en GitHub en %s (%s)" - }, - "keyboard": { - "close_settings_window": "Pechar ventá de axustes" - } - }, - "report": { - "title_report": "Denunciar", - "title": "Denunciar a %s", - "step1": "Paso 1 de 2", - "step2": "Paso 2 de 2", - "content1": "Hai outras publicacións que desexes engadir á denuncia?", - "content2": "Hai algo que a moderación deba saber acerca desta denuncia?", - "report_sent_title": "Grazas pola denuncia, investigarémola.", - "send": "Enviar Denuncia", - "skip_to_send": "Enviar sen comentarios", - "text_placeholder": "Escribe ou pega comentarios adicionais", - "reported": "DENUNCIADO", - "step_one": { - "step_1_of_4": "Paso 1 de 4", - "whats_wrong_with_this_post": "Cal é o problema con esta publicación?", - "whats_wrong_with_this_account": "Cal é o problema con esta conta?", - "whats_wrong_with_this_username": "Cal é o problema con %s?", - "select_the_best_match": "Elixe a mellor coincidencia", - "i_dont_like_it": "Non me gusta", - "it_is_not_something_you_want_to_see": "Non é algo que queiras ver", - "its_spam": "É spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Ligazóns perigosas, relacións falsas, ou respostas repetitivas", - "it_violates_server_rules": "Viola as regras do servidor", - "you_are_aware_that_it_breaks_specific_rules": "Décheste conta de que quebra unhas normas en concreto", - "its_something_else": "É outra cousa", - "the_issue_does_not_fit_into_other_categories": "O problema non cae dentro de outras categorías" - }, - "step_two": { - "step_2_of_4": "Paso 2 de 4", - "which_rules_are_being_violated": "Que regras foron incumpridas?", - "select_all_that_apply": "Elixe todo o que sexa de aplicación", - "i_just_don’t_like_it": "Non me gusta" - }, - "step_three": { - "step_3_of_4": "Paso 3 de 4", - "are_there_any_posts_that_back_up_this_report": "Hai algunha publicación que apoie esta denuncia?", - "select_all_that_apply": "Elixe todo o que sexa de aplicación" - }, - "step_four": { - "step_4_of_4": "Paso 4 de 4", - "is_there_anything_else_we_should_know": "Hai algo máis que creas debamos saber?" - }, - "step_final": { - "dont_want_to_see_this": "Non queres ver esto?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Cando ves en Mastodon algo que non che gusta podes retirar a esa persoa da túa experiencia como usuaria.", - "unfollow": "Deixar de seguir", - "unfollowed": "Deixaches de seguir", - "unfollow_user": "Deixar de seguir a %s", - "mute_user": "Acalar a %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non verás as súas publicacións ou repeticións na túa cronoloxía. Non saberá que foi acalada.", - "block_user": "Bloquear a %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non poderá seguirte nin ver o que publicas, pero pode ver se foi bloqueada.", - "while_we_review_this_you_can_take_action_against_user": "Mentras revisamos esto, podes tomar accións contra %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Pechar vista previa", - "show_next": "Mostrar Seguinte", - "show_previous": "Mostar Anterior" - } - }, - "account_list": { - "tab_bar_hint": "Perfil seleccionado: %s. Dobre toque e manter para mostrar o intercambiador de contas", - "dismiss_account_switcher": "Desbotar intercambiador de contas", - "add_account": "Engadir conta" - }, - "wizard": { - "new_in_mastodon": "Novidade en Mastodon", - "multiple_account_switch_intro_description": "Cambia dunha conta a outra mantendo preso o botón do perfil.", - "accessibility_hint": "Dobre toque para desbotar este asistente" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json b/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json deleted file mode 100644 index e3ec3fb73..000000000 --- a/Localization/StringsConvertor/input/gl_ES/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Utilizado para facer foto e publicar estado", - "NSPhotoLibraryAddUsageDescription": "Utilizado para gardar a foto na Biblioteca", - "NewPostShortcutItemTitle": "Nova publicación", - "SearchShortcutItemTitle": "Buscar" -} diff --git a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict b/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict deleted file mode 100644 index 80cfd3d62..000000000 --- a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorite - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/hi_IN/app.json b/Localization/StringsConvertor/input/hi_IN/app.json deleted file mode 100644 index 2bff33237..000000000 --- a/Localization/StringsConvertor/input/hi_IN/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "कृपया फिर से प्रयास करें।", - "please_try_again_later": "बाद में फिर से प्रयास करें।" - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Server Error" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Discard Draft", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." - }, - "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "पोस्ट को हटाएं", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/hi_IN/ios-infoPlist.json b/Localization/StringsConvertor/input/hi_IN/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/hi_IN/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict b/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict deleted file mode 100644 index 43d192464..000000000 --- a/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld karakter - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld karakter - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - postingan - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld postingan - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld favorit - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld suara - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld pemilih - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld pengikut - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld tahun lagi - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld bulan lagi - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld hari lagi - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld jam lagi - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld menit lagi - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld detik lagi - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldt yang lalu - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldb yang lalu - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldh yang lalu - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldj yang lalu - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldm yang lalu - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldd yang lalu - - - - diff --git a/Localization/StringsConvertor/input/id_ID/app.json b/Localization/StringsConvertor/input/id_ID/app.json deleted file mode 100644 index 47def4337..000000000 --- a/Localization/StringsConvertor/input/id_ID/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Silakan coba lagi.", - "please_try_again_later": "Silakan coba lagi nanti." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Kesalahan Server" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "Japat telah berakhir" - }, - "discard_post_content": { - "title": "Hapus Draf", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Tidak dapat melampirkan video di postingan yang sudah mengandung gambar.", - "more_than_one_video": "Tidak dapat melampirkan lebih dari satu video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Tidak dapat menyunting profil. Harap coba lagi." - }, - "sign_out": { - "title": "Keluar", - "message": "Apakah Anda yakin ingin keluar?", - "confirm": "Keluar" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Blokir Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Apakah Anda yakin ingin menghapus postingan ini?", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Bersihkan Cache", - "message": "Berhasil menghapus %s cache." - } - }, - "controls": { - "actions": { - "back": "Kembali", - "next": "Selanjutnya", - "previous": "Sebelumnya", - "open": "Buka", - "add": "Tambah", - "remove": "Hapus", - "edit": "Sunting", - "save": "Simpan", - "ok": "OKE", - "done": "Selesai", - "confirm": "Konfirmasi", - "continue": "Lanjut", - "compose": "Compose", - "cancel": "Batal", - "discard": "Discard", - "try_again": "Coba Lagi", - "take_photo": "Take Photo", - "save_photo": "Simpan Foto", - "copy_photo": "Salin Foto", - "sign_in": "Masuk", - "sign_up": "Daftar", - "see_more": "Lihat lebih banyak", - "preview": "Pratinjau", - "share": "Bagikan", - "share_user": "Bagikan %s", - "share_post": "Bagikan Postingan", - "open_in_safari": "Buka di Safari", - "open_in_browser": "Open in Browser", - "find_people": "Cari orang untuk diikuti", - "manually_search": "Manually search instead", - "skip": "Lewati", - "reply": "Balas", - "report_user": "Laporkan %s", - "block_domain": "Blokir %s", - "unblock_domain": "Berhenti memblokir %s", - "settings": "Pengaturan", - "delete": "Hapus" - }, - "tabs": { - "home": "Beranda", - "search": "Cari", - "notification": "Notifikasi", - "profile": "Profil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Beralih ke %s", - "compose_new_post": "Tulis Postingan Baru", - "show_favorites": "Tampilkan Favorit", - "open_settings": "Buka Pengaturan" - }, - "timeline": { - "previous_status": "Postingan Sebelumnya", - "next_status": "Postingan Selanjutnya", - "open_status": "Buka Postingan", - "open_author_profile": "Buka Profil Penulis", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Balas Postingan", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Membalas %s", - "show_post": "Tampilkan Postingan", - "show_user_profile": "Tampilkan Profil Pengguna", - "content_warning": "Peringatan Konten", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Ketuk di mana saja untuk melihat", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Ditutup" - }, - "actions": { - "reply": "Balas", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorit", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Sebut", - "link": "Tautan", - "hashtag": "Tagar", - "email": "Surel", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Ikuti", - "following": "Mengikuti", - "request": "Request", - "pending": "Pending", - "block": "Blokir", - "block_user": "Blokir %s", - "block_domain": "Blokir %s", - "unblock": "Berhenti memblokir", - "unblock_user": "Berhenti memblokir %s", - "blocked": "Diblokir", - "mute": "Bisukan", - "mute_user": "Bisukan %s", - "unmute": "Berhenti membisukan", - "unmute_user": "Berhenti membisukan %s", - "muted": "Dibisukan", - "edit_info": "Sunting Info" - }, - "timeline": { - "filtered": "Tersaring", - "timestamp": { - "now": "Sekarang" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Tampilkan lebih banyak balasan" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Pilih sebuah server,\nserver manapun.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "Semua", - "all_accessiblity_description": "Kategori: Semua", - "academia": "academia", - "activism": "aktivisme", - "food": "makanan", - "furry": "furry", - "games": "permainan", - "general": "umum", - "journalism": "jurnalisme", - "lgbt": "lgbt", - "regional": "regional", - "art": "seni", - "music": "musik", - "tech": "teknologi" - }, - "see_less": "Lihat Lebih Sedikit", - "see_more": "Lihat Lebih Banyak" - }, - "label": { - "language": "BAHASA", - "users": "PENGGUNA", - "category": "KATEGORI" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Mencari server yang tersedia...", - "bad_network": "Sesuatu yang salah terjadi ketika memuat data. Periksa koneksi internet Anda.", - "no_results": "Tak ada hasil" - } - }, - "register": { - "title": "Beritahu kami tentang diri Anda.", - "input": { - "avatar": { - "delete": "Hapus" - }, - "username": { - "placeholder": "nama pengguna", - "duplicate_prompt": "Nama pengguna ini sudah diambil." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "surel" - }, - "password": { - "placeholder": "kata sandi", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Kata sandi Anda harus memiliki sekurang-kurangnya delapan karakter" - }, - "invite": { - "registration_user_invite_request": "Mengapa Anda ingin bergabung?" - } - }, - "error": { - "item": { - "username": "Nama pengguna", - "email": "Surel", - "password": "Kata sandi", - "agreement": "Persetujuan", - "locale": "Locale", - "reason": "Alasan" - }, - "reason": { - "blocked": "%s mengandung penyedia surel yang dilarang", - "unreachable": "%s sepertinya tidak ada", - "taken": "%s sudah digunakan", - "reserved": "%s is a reserved keyword", - "accepted": "%s harus diterima", - "blank": "%s diperlukan", - "invalid": "%s tidak valid", - "too_long": "%s terlalu panjang", - "too_short": "%s terlalu pendek", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Nama pengguna terlalu panjang (tidak boleh lebih dari 30 karakter)", - "email_invalid": "Ini bukan alamat surel yang valid", - "password_too_short": "Kata sandi terlalu pendek (harus sekurang-kurangnya 8 karakter)" - } - } - }, - "server_rules": { - "title": "Beberapa aturan dasar.", - "subtitle": "Peraturan ini ditetapkan oleh admin %s.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "kebijakan layanan", - "privacy_policy": "kebijakan privasi", - "button": { - "confirm": "Saya Setuju" - } - }, - "confirm_email": { - "title": "Satu hal lagi.", - "subtitle": "Kami baru saja mengirim sebuah surel ke %s,\nketuk tautannya untuk mengkonfirmasi akun Anda.", - "button": { - "open_email_app": "Buka Aplikasi Surel", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Periksa surel Anda", - "description": "Periksa apakah surel Anda benar dan juga folder junk Anda jika belum memeriksanya.", - "resend_email": "Kirim Ulang Surel" - }, - "open_email_app": { - "title": "Periksa kotak masuk Anda.", - "description": "Kami baru saja mengirimkan Anda sebuah surel. Periksa folder junk Anda jika Anda belum memeriksanya.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Beranda", - "navigation_bar_state": { - "offline": "Luring", - "new_posts": "Lihat postingan baru", - "published": "Dipublikasikan!", - "Publishing": "Mempublikasikan postingan...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "Ketika Anda mengikuti seseorang, Anda akan melihat postingan mereka di beranda Anda." - }, - "compose": { - "title": { - "new_post": "Postingan Baru", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Ketik atau tempel apa yang Anda pada pikiran Anda", - "compose_action": "Publikasikan", - "replying_to_user": "membalas %s", - "attachment": { - "photo": "foto", - "video": "video", - "attachment_broken": "%s ini rusak dan tidak dapat diunggah ke Mastodon.", - "description_photo": "Jelaskan fotonya untuk mereka yang tidak dapat melihat dengan jelas...", - "description_video": "Jelaskan videonya untuk mereka yang tidak dapat melihat dengan jelas..." - }, - "poll": { - "duration_time": "Durasi: %s", - "thirty_minutes": "30 menit", - "one_hour": "1 Jam", - "six_hours": "6 Jam", - "one_day": "1 Hari", - "three_days": "3 Hari", - "seven_days": "7 Hari", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Tulis peringatan yang akurat di sini..." - }, - "visibility": { - "public": "Publik", - "unlisted": "Unlisted", - "private": "Pengikut saja", - "direct": "Hanya orang yang saya sebut" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Tambahkan Lampiran", - "append_poll": "Tambahkan Japat", - "remove_poll": "Hapus Japat", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Aktifkan Peringatan Konten", - "disable_content_warning": "Nonaktifkan Peringatan Konten", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Tambahkan Lampiran - %s", - "select_visibility_entry": "Pilih Visibilitas - %s" - } - }, - "profile": { - "dashboard": { - "posts": "postingan", - "following": "mengikuti", - "followers": "pengikut" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Isi" - } - }, - "segmented_control": { - "posts": "Postingan", - "replies": "Balasan", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Berhenti Membisukan Akun", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Cari", - "search_bar": { - "placeholder": "Cari tagar dan pengguna", - "cancel": "Batal" - }, - "recommend": { - "button_text": "Lihat Semua", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Akun-akun yang mungkin Anda sukai", - "description": "Anda mungkin ingin mengikuti akun-akun ini", - "follow": "Ikuti" - } - }, - "searching": { - "segment": { - "all": "Semua", - "people": "Orang", - "hashtags": "Tagar", - "posts": "Postingan" - }, - "empty_state": { - "no_results": "Tidak ada hasil" - }, - "recent_search": "Recent searches", - "clear": "Hapus" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Segalanya", - "Mentions": "Sebutan" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Tampilkan Segalanya", - "show_mentions": "Tampilkan Sebutan" - } - }, - "thread": { - "back_title": "Postingan", - "title": "Postingan oleh %s" - }, - "settings": { - "title": "Pengaturan", - "section": { - "appearance": { - "title": "Tampilan", - "automatic": "Otomatis", - "light": "Selalu Cerah", - "dark": "Selalu Gelap" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifikasi", - "favorites": "Favorites my post", - "follows": "Mengikuti saya", - "boosts": "Reblogs my post", - "mentions": "Menyebut saya", - "trigger": { - "anyone": "siapapun", - "follower": "seorang pengikut", - "follow": "siapapun yang saya ikuti", - "noone": "no one", - "title": "Beritahu saya ketika" - } - }, - "preference": { - "title": "Preferensi", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "Zona Membosankan", - "account_settings": "Pengaturan Akun", - "terms": "Kebijakan Layanan", - "privacy": "Kebijakan Privasi" - }, - "spicy_zone": { - "title": "Zona Pedas", - "clear": "Hapus Cache Media", - "signout": "Keluar" - } - }, - "footer": { - "mastodon_description": "Mastodon adalah perangkat lunak sumber terbuka. Anda dapat melaporkan masalah melalui GitHub di %s (%s)" - }, - "keyboard": { - "close_settings_window": "Tutup Jendela Pengaturan" - } - }, - "report": { - "title_report": "Report", - "title": "Laporkan %s", - "step1": "Langkah 1 dari 2", - "step2": "Langkah 2 dari 2", - "content1": "Apakah ada postingan lain yang ingin Anda tambahkan ke laporannya?", - "content2": "Ada yang moderator harus tahu tentang laporan ini?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Kirim Laporan", - "skip_to_send": "Kirim tanpa komentar", - "text_placeholder": "Ketik atau tempel komentar tambahan", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/id_ID/ios-infoPlist.json b/Localization/StringsConvertor/input/id_ID/ios-infoPlist.json deleted file mode 100644 index 0dde7c29e..000000000 --- a/Localization/StringsConvertor/input/id_ID/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "Postingan Baru", - "SearchShortcutItemTitle": "Cari" -} diff --git a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict b/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict deleted file mode 100644 index 423ca4104..000000000 --- a/Localization/StringsConvertor/input/it_IT/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notifica non letta - other - %ld notifiche non lette - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Il limite di input supera %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carattere - other - %ld caratteri - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Il limite di input rimane %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carattere - other - %ld caratteri - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - post - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 contenuto multimediale - other - %ld contenuti multimediali - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - other - %ld post - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 preferito - other - %ld preferiti - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 condivisione - other - %ld condivisioni - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 risposta - other - %ld risposte - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld voti - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votanti - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 persona ne parla - other - %ld persone ne parlano - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - other - %ld stanno seguendo - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguace - other - %ld seguaci - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 anno rimasto - other - %ld anni rimasti - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mese rimasto - other - %ld mesi rimasti - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 giorno rimasto - other - %ld giorni rimasti - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ora rimasta - other - %ld ore rimaste - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto rimasto - other - %ld minuti rimasti - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 secondo rimasto - other - %ld secondi rimasti - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 anno fa - other - %ld anni fa - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mese fa - other - %ld mesi fa - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 giorno fa - other - %ld giorni fa - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ora fa - other - %ld ore fa - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto fa - other - %ld minuti fa - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 secondo fa - other - %ld secondi fa - - - - diff --git a/Localization/StringsConvertor/input/it_IT/app.json b/Localization/StringsConvertor/input/it_IT/app.json deleted file mode 100644 index 1d52e6697..000000000 --- a/Localization/StringsConvertor/input/it_IT/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Per favore riprova.", - "please_try_again_later": "Per favore, riprova più tardi." - }, - "sign_up_failure": { - "title": "Iscrizione fallita" - }, - "server_error": { - "title": "Errore del server" - }, - "vote_failure": { - "title": "Voto fallito", - "poll_ended": "Il sondaggio è terminato" - }, - "discard_post_content": { - "title": "Elimina bozza", - "message": "Confermare di scartare il contenuto del post composto." - }, - "publish_post_failure": { - "title": "Pubblicazione fallita", - "message": "Pubblicazione del post fallita.\nPer favore verifica la tua connessione internet.", - "attachments_message": { - "video_attach_with_photo": "Impossibile allegare un filmato a un post che contiene già immagini.", - "more_than_one_video": "Impossibile allegare più di un filmato." - } - }, - "edit_profile_failure": { - "title": "Errore nella modifica del profilo", - "message": "Impossibile modificare il profilo. Per favore, riprova." - }, - "sign_out": { - "title": "Esci", - "message": "Vuoi davvero scollegarti?", - "confirm": "Esci" - }, - "block_domain": { - "title": "Vuoi davvero bloccare %s completamente? Nella maggioranza dei casi, è preferibile e sufficiente bloccare o silenziare pochi account in modo mirato. Non vedrai i contenuti di quel dominio e tutti i tuoi follower da quel dominio verranno rimossi.", - "block_entire_domain": "Blocca il dominio" - }, - "save_photo_failure": { - "title": "Salvataggio foto fallito", - "message": "Si prega di abilitare l'autorizzazione di accesso alla galleria immagini per salvare la foto." - }, - "delete_post": { - "title": "Cancella il post", - "message": "Vuoi veramente eliminare questo post?" - }, - "clean_cache": { - "title": "Pulisci la cache", - "message": "Cache %s pulita con successo." - } - }, - "controls": { - "actions": { - "back": "Indietro", - "next": "Avanti", - "previous": "Precedente", - "open": "Apri", - "add": "Aggiungi", - "remove": "Rimuovi", - "edit": "Modifica", - "save": "Salva", - "ok": "OK", - "done": "Fatto", - "confirm": "Conferma", - "continue": "Continua", - "compose": "Scrivi", - "cancel": "Annulla", - "discard": "Abbandona", - "try_again": "Riprova", - "take_photo": "Scatta foto", - "save_photo": "Salva foto", - "copy_photo": "Copia foto", - "sign_in": "Accedi", - "sign_up": "Registrati", - "see_more": "Visualizza altro", - "preview": "Anteprima", - "share": "Condividi", - "share_user": "Condividi %s", - "share_post": "Condividi il post", - "open_in_safari": "Apri su Safari", - "open_in_browser": "Apri nel browser", - "find_people": "Trova persone da seguire", - "manually_search": "Cerca manualmente invece", - "skip": "Salta", - "reply": "Rispondi", - "report_user": "Segnala %s", - "block_domain": "Blocca %s", - "unblock_domain": "Sblocca %s", - "settings": "Impostazioni", - "delete": "Elimina" - }, - "tabs": { - "home": "Inizio", - "search": "Cerca", - "notification": "Notifiche", - "profile": "Profilo" - }, - "keyboard": { - "common": { - "switch_to_tab": "Passa a %s", - "compose_new_post": "Componi un nuovo post", - "show_favorites": "Mostra preferiti", - "open_settings": "Apri Impostazioni" - }, - "timeline": { - "previous_status": "Post precedente", - "next_status": "Post successivo", - "open_status": "Apri il post", - "open_author_profile": "Apri il profilo dell'autore", - "open_reblogger_profile": "Apri il profilo di chi ha condiviso", - "reply_status": "Rispondi al post", - "toggle_reblog": "Attiva/Disattiva condivisione sul post", - "toggle_favorite": "Attiva/Disattiva preferito nel post", - "toggle_content_warning": "Attiva/Disattiva avvertimento contenuti", - "preview_image": "Anteprima immagine" - }, - "segmented_control": { - "previous_section": "Sezione precedente", - "next_section": "Sezione successiva" - } - }, - "status": { - "user_reblogged": "%s hanno condiviso", - "user_replied_to": "Rispondi a %s", - "show_post": "Mostra il post", - "show_user_profile": "Mostra il profilo dell'utente", - "content_warning": "Avviso sul contenuto", - "sensitive_content": "Contenuto sensibile", - "media_content_warning": "Tocca ovunque per rivelare", - "tap_to_reveal": "Tocca per rivelare", - "poll": { - "vote": "Vota", - "closed": "Chiuso" - }, - "actions": { - "reply": "Rispondi", - "reblog": "Condivisione", - "unreblog": "Annulla condivisione", - "favorite": "Preferito", - "unfavorite": "Non preferito", - "menu": "Menù", - "hide": "Nascondi", - "show_image": "Mostra immagine", - "show_gif": "Mostra GIF", - "show_video_player": "Mostra lettore video", - "tap_then_hold_to_show_menu": "Tocca quindi tieni premuto per mostrare il menu" - }, - "tag": { - "url": "URL", - "mention": "Menzione", - "link": "Collegamento", - "hashtag": "Etichetta", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Tutti possono vedere questo post ma non mostrare nella cronologia pubblica.", - "private": "Solo i loro seguaci possono vedere questo post.", - "private_from_me": "Solo i miei seguaci possono vedere questo post.", - "direct": "Solo l'utente menzionato può vedere questo post." - } - }, - "friendship": { - "follow": "Segui", - "following": "Stai seguendo", - "request": "Richiesta", - "pending": "In attesa", - "block": "Blocca", - "block_user": "Blocca %s", - "block_domain": "Blocca %s", - "unblock": "Sblocca", - "unblock_user": "Sblocca %s", - "blocked": "Bloccato", - "mute": "Silenzia", - "mute_user": "Silenzia %s", - "unmute": "Riattiva", - "unmute_user": "Riattiva %s", - "muted": "Silenziato", - "edit_info": "Modifica info" - }, - "timeline": { - "filtered": "Filtrato", - "timestamp": { - "now": "Ora" - }, - "loader": { - "load_missing_posts": "Carica i post mancanti", - "loading_missing_posts": "Caricamento post mancanti...", - "show_more_replies": "Mostra più risposte" - }, - "header": { - "no_status_found": "Nessun post trovato", - "blocking_warning": "Non puoi visualizzare il profilo di questo utente\nfinché non li sblocchi.\nIl tuo profilo sembra questo per loro.", - "user_blocking_warning": "Non puoi visualizzare il profilo di %s\nfinché non li sblocchi.\nIl tuo profilo sembra questo per loro.", - "blocked_warning": "Non puoi visualizzare il profilo di questo utente\nfino a quando non ti sbloccano.", - "user_blocked_warning": "Non puoi visualizzare il profilo di %s\nfino a quando non ti sbloccano.", - "suspended_warning": "Questo utente è stato sospeso.", - "user_suspended_warning": "L'account di %s è stato sospeso." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Il social network, di nuovo nelle tue mani.", - "get_started": "Inizia", - "log_in": "Accedi" - }, - "server_picker": { - "title": "Mastodon è fatto di utenti in diverse comunità.", - "subtitle": "Scegli una comunità basata sui tuoi interessi, regione o uno scopo generale.", - "subtitle_extend": "Scegli una comunità basata sui tuoi interessi, regione o uno scopo generale. Ogni comunità è gestita da un'organizzazione completamente indipendente o individuale.", - "button": { - "category": { - "all": "Tutti", - "all_accessiblity_description": "Categoria: Tutti", - "academia": "accademia", - "activism": "attivismo", - "food": "cibo", - "furry": "peloso", - "games": "giochi", - "general": "generale", - "journalism": "giornalismo", - "lgbt": "lgbt", - "regional": "locale", - "art": "arte", - "music": "musica", - "tech": "tecnologia" - }, - "see_less": "Vedi meno", - "see_more": "Vedi di più" - }, - "label": { - "language": "LINGUA", - "users": "UTENTI", - "category": "CATEGORIA" - }, - "input": { - "placeholder": "Cerca comunità", - "search_servers_or_enter_url": "Cerca comunità o inserisci l'URL" - }, - "empty_state": { - "finding_servers": "Ricerca server disponibili...", - "bad_network": "Qualcosa è andato storto durante il caricamento dei dati. Controlla la tua connessione internet.", - "no_results": "Nessun risultato" - } - }, - "register": { - "title": "Facciamo in modo che sia configurato il %s", - "input": { - "avatar": { - "delete": "Elimina" - }, - "username": { - "placeholder": "nome utente", - "duplicate_prompt": "Questo nome utente è già stato preso." - }, - "display_name": { - "placeholder": "visualizza nome" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "La tua password ha bisogno di almeno:", - "character_limit": "8 caratteri", - "accessibility": { - "checked": "verificato", - "unchecked": "non verificato" - }, - "hint": "La tua password deve essere di almeno 8 caratteri" - }, - "invite": { - "registration_user_invite_request": "Perché vuoi unirti?" - } - }, - "error": { - "item": { - "username": "Nome utente", - "email": "Email", - "password": "Password", - "agreement": "Accordo", - "locale": "Locale", - "reason": "Motivo" - }, - "reason": { - "blocked": "%s contiene un provider email non consentito", - "unreachable": "%s non sembra esistere", - "taken": "%s è già in uso", - "reserved": "%s è una parola chiave riservata", - "accepted": "%s deve essere accettato", - "blank": "%s è richiesto", - "invalid": "%s non è valido", - "too_long": "%s è troppo lungo", - "too_short": "%s è troppo corto", - "inclusion": "%s non è un valore supportato" - }, - "special": { - "username_invalid": "Il nome utente deve contenere solo caratteri alfanumerici e trattini bassi", - "username_too_long": "Il nome utente è troppo lungo (non può essere più lungo di 30 caratteri)", - "email_invalid": "Questo non è un indirizzo email valido", - "password_too_short": "La password è troppo corta (deve contenere almeno 8 caratteri)" - } - } - }, - "server_rules": { - "title": "Alcune regole di base.", - "subtitle": "Questi sono impostati e applicati dai moderatori %s.", - "prompt": "Continuando, sei soggetto alle condizioni di servizio e all'informativa sulla privacy per %s.", - "terms_of_service": "condizioni del servizio", - "privacy_policy": "privacy policy", - "button": { - "confirm": "Accetto" - } - }, - "confirm_email": { - "title": "Un'ultima cosa.", - "subtitle": "Tocca il link che ti abbiamo inviato per verificare il tuo account.", - "button": { - "open_email_app": "Apri l'app Email", - "resend": "Invia di nuovo" - }, - "dont_receive_email": { - "title": "Controlla la tua e-mail", - "description": "Controlla se il tuo indirizzo email sia corretto, così come la tua cartella spazzatura se non ce l'hai.", - "resend_email": "Invia e-mail di nuovo" - }, - "open_email_app": { - "title": "Controlla la tua posta in arrivo.", - "description": "Ti abbiamo appena inviato un'email. Controlla la tua cartella spazzatura se non ce l'hai.", - "mail": "Posta", - "open_email_client": "Apri client Email" - } - }, - "home_timeline": { - "title": "Inizio", - "navigation_bar_state": { - "offline": "Non in linea", - "new_posts": "Vedi nuovi post", - "published": "Pubblicato!", - "Publishing": "Pubblicazione post...", - "accessibility": { - "logo_label": "Pulsante Logo", - "logo_hint": "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente" - } - } - }, - "suggestion_account": { - "title": "Trova alcune persone da seguire", - "follow_explain": "Quando segui qualcuno, vedrai i loro post nella tua home feed." - }, - "compose": { - "title": { - "new_post": "Nuovo post", - "new_reply": "Nuova risposta" - }, - "media_selection": { - "camera": "Scatta foto", - "photo_library": "Libreria foto", - "browse": "Sfoglia" - }, - "content_input_placeholder": "Digita o incolla quello che hai in mente", - "compose_action": "Pubblica", - "replying_to_user": "rispondendo a %s", - "attachment": { - "photo": "foto", - "video": "filmato", - "attachment_broken": "Questo %s è rotto e non può essere\ncaricato su Mastodon.", - "description_photo": "Descrivi la foto per gli utenti ipovedenti...", - "description_video": "Descrivi il filmato per gli utenti ipovedenti..." - }, - "poll": { - "duration_time": "Durata: %s", - "thirty_minutes": "30 minuti", - "one_hour": "1 ora", - "six_hours": "6 ore", - "one_day": "1 giorno", - "three_days": "3 giorni", - "seven_days": "7 giorni", - "option_number": "Opzione %ld" - }, - "content_warning": { - "placeholder": "Scrivi un avviso accurato qui..." - }, - "visibility": { - "public": "Pubblico", - "unlisted": "Non elencato", - "private": "Solo i seguaci", - "direct": "Solo le persone che menziono" - }, - "auto_complete": { - "space_to_add": "Spazio da aggiungere" - }, - "accessibility": { - "append_attachment": "Aggiungi allegato", - "append_poll": "Aggiungi sondaggio", - "remove_poll": "Elimina sondaggio", - "custom_emoji_picker": "Selettore Emoji personalizzato", - "enable_content_warning": "Abilita avvertimento contenuti", - "disable_content_warning": "Disabilita avviso di contenuti", - "post_visibility_menu": "Menu di visibilità del post" - }, - "keyboard": { - "discard_post": "Scarta post", - "publish_post": "Pubblica il post", - "toggle_poll": "Attiva/Disattiva Sondaggio", - "toggle_content_warning": "Attiva/Disattiva avviso contenuti", - "append_attachment_entry": "Aggiungi allegato - %s", - "select_visibility_entry": "Seleziona visibilità - %s" - } - }, - "profile": { - "dashboard": { - "posts": "post", - "following": "seguendo", - "followers": "seguaci" - }, - "fields": { - "add_row": "Aggiungi riga", - "placeholder": { - "label": "Etichetta", - "content": "Contenuto" - } - }, - "segmented_control": { - "posts": "Post", - "replies": "Risposte", - "posts_and_replies": "Post e risposte", - "media": "Media", - "about": "Info su" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Silenzia account", - "message": "Confermi di silenziare %s" - }, - "confirm_unmute_user": { - "title": "Riattiva account", - "message": "Confermi di riattivare %s" - }, - "confirm_block_user": { - "title": "Blocca account", - "message": "Confermi di bloccare %s" - }, - "confirm_unblock_user": { - "title": "Sblocca account", - "message": "Conferma per sbloccare %s" - } - }, - "accessibility": { - "show_avatar_image": "Mostra immagine avatar", - "edit_avatar_image": "Modifica immagine avatar", - "show_banner_image": "Mostra immagine banner", - "double_tap_to_open_the_list": "Doppio tocco per aprire la lista" - } - }, - "follower": { - "footer": "I seguaci da altri server non vengono visualizzati." - }, - "following": { - "footer": "I follow da altri server non vengono visualizzati." - }, - "search": { - "title": "Cerca", - "search_bar": { - "placeholder": "Cerca hashtag e utenti", - "cancel": "Annulla" - }, - "recommend": { - "button_text": "Vedi tutto", - "hash_tag": { - "title": "Di tendenza su Mastodon", - "description": "Hashtag che stanno ottenendo un bel po' di attenzione", - "people_talking": "%s persone ne parlano" - }, - "accounts": { - "title": "Account che potrebbero piacerti", - "description": "Potresti voler seguire questi account", - "follow": "Segui" - } - }, - "searching": { - "segment": { - "all": "Tutto", - "people": "Persone", - "hashtags": "Hashtags", - "posts": "Post" - }, - "empty_state": { - "no_results": "Nessun risultato" - }, - "recent_search": "Ricerche recenti", - "clear": "Cancella" - } - }, - "discovery": { - "tabs": { - "posts": "Post", - "hashtags": "Hashtag", - "news": "Notizie", - "community": "Comunità", - "for_you": "Per Te" - }, - "intro": "Questi sono i post che stanno guadagnando popolarità nel tuo angolo di Mastodon." - }, - "favorite": { - "title": "I tuoi preferiti" - }, - "notification": { - "title": { - "Everything": "Tutto", - "Mentions": "Menzioni" - }, - "notification_description": { - "followed_you": "ti ha seguito", - "favorited_your_post": "ha apprezzato il tuo post", - "reblogged_your_post": "ha ripostato il tuo post", - "mentioned_you": "ti ha menzionato", - "request_to_follow_you": "richiesta di seguirti", - "poll_has_ended": "sondaggio terminato" - }, - "keyobard": { - "show_everything": "Mostra Tutto", - "show_mentions": "Mostra Menzioni" - } - }, - "thread": { - "back_title": "Post", - "title": "Post da %s" - }, - "settings": { - "title": "Impostazioni", - "section": { - "appearance": { - "title": "Aspetto", - "automatic": "Automatico", - "light": "Sempre chiaro", - "dark": "Sempre scuro" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Predefinito di sistema", - "really_dark": "Davvero scuro", - "sorta_dark": "Un po' scuro", - "light": "Chiaro" - }, - "notifications": { - "title": "Notifiche", - "favorites": "Apprezza i miei post", - "follows": "Mi segue", - "boosts": "Condivide i miei post", - "mentions": "Mi menziona", - "trigger": { - "anyone": "chiunque", - "follower": "un seguace", - "follow": "chiunque io segua", - "noone": "nessuno", - "title": "Avvisami quando" - } - }, - "preference": { - "title": "Preferenze", - "true_black_dark_mode": "Modalità molto scura", - "disable_avatar_animation": "Disabilita avatar animati", - "disable_emoji_animation": "Disabilita emoji animate", - "using_default_browser": "Usa browser predefinito per aprire i collegamenti", - "open_links_in_mastodon": "Apri i link in Mastodon" - }, - "boring_zone": { - "title": "La zona boring", - "account_settings": "Impostazioni account", - "terms": "Termini di servizio", - "privacy": "Politica sulla Privacy" - }, - "spicy_zone": { - "title": "La zona piccante", - "clear": "Cancella la cache multimediale", - "signout": "Esci" - } - }, - "footer": { - "mastodon_description": "Mastodon è un software open source. Puoi segnalare problemi su GitHub a %s (%s)" - }, - "keyboard": { - "close_settings_window": "Chiudi la finestra Impostazioni" - } - }, - "report": { - "title_report": "Segnala", - "title": "Segnala %s", - "step1": "Fase 1 di 2", - "step2": "Fase 2 di 2", - "content1": "Ci sono altri post che vorresti aggiungere alla segnalazione?", - "content2": "C'è qualcosa che i moderatori dovrebbero sapere su questa segnalazione?", - "report_sent_title": "Grazie per la segnalazione, esamineremo questo aspetto.", - "send": "Invia segnalazione", - "skip_to_send": "Invia senza commento", - "text_placeholder": "Digita o incolla commenti aggiuntivi", - "reported": "SEGNALATO", - "step_one": { - "step_1_of_4": "Fase 1 di 4", - "whats_wrong_with_this_post": "Cosa c'è che non va con questo post?", - "whats_wrong_with_this_account": "Cosa c'è che non va con questo account?", - "whats_wrong_with_this_username": "Cosa c'è che non va con %s?", - "select_the_best_match": "Scegli la migliore corrispondenza", - "i_dont_like_it": "Non mi piace", - "it_is_not_something_you_want_to_see": "È qualcosa che non vuoi vedere", - "its_spam": "È spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Collegamenti malevoli, false interazioni o risposte ripetitive", - "it_violates_server_rules": "Viola le regole del server", - "you_are_aware_that_it_breaks_specific_rules": "Sei consapevole che violi regole specifiche", - "its_something_else": "È qualcos'altro", - "the_issue_does_not_fit_into_other_categories": "Il problema non rientra in altre categorie" - }, - "step_two": { - "step_2_of_4": "Fase 2 di 4", - "which_rules_are_being_violated": "Quali regole vengono violate?", - "select_all_that_apply": "Seleziona tutte le risposte pertinenti", - "i_just_don’t_like_it": "Non mi piace" - }, - "step_three": { - "step_3_of_4": "Fase 3 di 4", - "are_there_any_posts_that_back_up_this_report": "Ci sono post a sostegno di questa segnalazione?", - "select_all_that_apply": "Seleziona tutte le risposte pertinenti" - }, - "step_four": { - "step_4_of_4": "Fase 4 di 4", - "is_there_anything_else_we_should_know": "C'è altro che dovremmo sapere?" - }, - "step_final": { - "dont_want_to_see_this": "Non vuoi vedere questo?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quando vedi qualcosa che non ti piace su Mastodon, puoi rimuovere la persona dalla tua esperienza.", - "unfollow": "Smetti di seguire", - "unfollowed": "Non seguito", - "unfollow_user": "Smetti di seguire %s", - "mute_user": "Silenzia %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati.", - "block_user": "Blocca %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Non saranno più in grado di seguire o vedere i tuoi post, ma possono vedere se sono stati bloccati.", - "while_we_review_this_you_can_take_action_against_user": "Mentre controlliamo, puoi agire contro %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Chiudi anteprima", - "show_next": "Mostra successivo", - "show_previous": "Mostra precedente" - } - }, - "account_list": { - "tab_bar_hint": "Profilo corrente selezionato: %s. Doppio tocco e tieni premuto per mostrare il cambio account", - "dismiss_account_switcher": "Ignora il cambio account", - "add_account": "Aggiungi account" - }, - "wizard": { - "new_in_mastodon": "Nuovo su Mastodon", - "multiple_account_switch_intro_description": "Passa tra più account tenendo premuto il pulsante del profilo.", - "accessibility_hint": "Doppio tocco per eliminare questa procedura guidata" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/it_IT/ios-infoPlist.json b/Localization/StringsConvertor/input/it_IT/ios-infoPlist.json deleted file mode 100644 index bca6817f6..000000000 --- a/Localization/StringsConvertor/input/it_IT/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Usato per scattare foto per lo stato del post", - "NSPhotoLibraryAddUsageDescription": "Utilizzato per salvare la foto nella galleria immagini", - "NewPostShortcutItemTitle": "Nuovo post", - "SearchShortcutItemTitle": "Cerca" -} diff --git a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict deleted file mode 100644 index 87e4f8a5e..000000000 --- a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 件の未読通知 - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 文字 - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 文字 - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 投稿 - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld お気に入り - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ブースト - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld票 - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld人が投稿 - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld フォロー - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld フォロワー - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 残り%ld年 - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldか月前 - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 残り%ld日 - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 残り%ld時間 - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 残り%ld分 - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 残り%ld秒 - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 年前 - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldか月前 - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld日前 - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld時間前 - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld分前 - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld秒前 - - - - diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json deleted file mode 100644 index 8b84037ad..000000000 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "もう一度お試しください。", - "please_try_again_later": "後でもう一度お試しください。" - }, - "sign_up_failure": { - "title": "サインアップに失敗しました" - }, - "server_error": { - "title": "サーバーエラー" - }, - "vote_failure": { - "title": "投票の失敗", - "poll_ended": "投票は終了しました" - }, - "discard_post_content": { - "title": "投稿を破棄しますか?", - "message": "この操作は取り消しできません。下書きは失われます。" - }, - "publish_post_failure": { - "title": "失敗", - "message": "投稿に失敗しました。\nインターネットに接続されているか確認してください。", - "attachments_message": { - "video_attach_with_photo": "すでに画像が含まれている投稿に、動画を添付することはできません。", - "more_than_one_video": "複数の動画を添付することはできません。" - } - }, - "edit_profile_failure": { - "title": "プロフィールを編集できませんでした", - "message": "プロフィールを編集できません。もう一度お試しください。" - }, - "sign_out": { - "title": "サインアウト", - "message": "本当にサインアウトしますか?", - "confirm": "サインアウト" - }, - "block_domain": { - "title": "本当に%s全体をブロックしたいのですか? ほとんどの場合、いくつかのターゲットを絞ったブロックやミュートで十分ですし、それが望ましいです。そのドメインからのコンテンツが表示されなくなり、そのドメインからのフォロワーもすべて削除されます。", - "block_entire_domain": "ドメインをブロック" - }, - "save_photo_failure": { - "title": "写真の保存に失敗しました", - "message": "写真を保存するには、フォトライブラリへのアクセス許可を有効にしてください。" - }, - "delete_post": { - "title": "投稿を削除", - "message": "本当にこの投稿を削除しますか?" - }, - "clean_cache": { - "title": "キャッシュを消去", - "message": "%sのキャッシュを消去しました。" - } - }, - "controls": { - "actions": { - "back": "戻る", - "next": "次へ", - "previous": "前", - "open": "開く", - "add": "追加", - "remove": "消去", - "edit": "編集", - "save": "保存", - "ok": "OK", - "done": "完了", - "confirm": "確認", - "continue": "続ける", - "compose": "新規作成", - "cancel": "キャンセル", - "discard": "破棄", - "try_again": "再実行", - "take_photo": "写真を撮る", - "save_photo": "写真を撮る", - "copy_photo": "写真をコピー", - "sign_in": "サインイン", - "sign_up": "サインアップ", - "see_more": "もっと見る", - "preview": "プレビュー", - "share": "共有", - "share_user": "%sを共有", - "share_post": "投稿を共有", - "open_in_safari": "Safariで開く", - "open_in_browser": "ブラウザで開く", - "find_people": "フォローする人を見つける", - "manually_search": "手動で検索する", - "skip": "スキップ", - "reply": "返信", - "report_user": "%sを通報", - "block_domain": "%sをブロック", - "unblock_domain": "%sのブロックを解除", - "settings": "設定", - "delete": "削除" - }, - "tabs": { - "home": "ホーム", - "search": "検索", - "notification": "通知", - "profile": "プロフィール" - }, - "keyboard": { - "common": { - "switch_to_tab": "%sに切り替え", - "compose_new_post": "新しい投稿を作成", - "show_favorites": "お気に入りを表示", - "open_settings": "設定を開く" - }, - "timeline": { - "previous_status": "前の投稿", - "next_status": "次の投稿", - "open_status": "投稿を開く", - "open_author_profile": "プロフィールを見る", - "open_reblogger_profile": "ブーストした人のプロフィールを開く", - "reply_status": "投稿に返信", - "toggle_reblog": "ブーストを切り替える", - "toggle_favorite": "お気に入り登録を切り替える", - "toggle_content_warning": "閲覧注意を切り替える", - "preview_image": "画像をプレビュー" - }, - "segmented_control": { - "previous_section": "前のセクション", - "next_section": "次のセクション" - } - }, - "status": { - "user_reblogged": "%sがブースト", - "user_replied_to": "%sに返信", - "show_post": "投稿を見る", - "show_user_profile": "プロフィールを見る", - "content_warning": "コンテンツ警告", - "sensitive_content": "Sensitive Content", - "media_content_warning": "どこかをタップして表示", - "tap_to_reveal": "タップして表示", - "poll": { - "vote": "投票", - "closed": "クローズド" - }, - "actions": { - "reply": "返信", - "reblog": "ブースト", - "unreblog": "ブーストを戻す", - "favorite": "お気に入り", - "unfavorite": "お気に入り登録を取り消す", - "menu": "メニュー", - "hide": "非表示", - "show_image": "画像を表示", - "show_gif": "GIFを表示", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "メンション", - "link": "リンク", - "hashtag": "ハッシュタグ", - "email": "メール", - "emoji": "絵文字" - }, - "visibility": { - "unlisted": "この投稿は誰でも見ることができますが、公開タイムラインには表示されません。", - "private": "この投稿はフォロワーに限り見ることができます。", - "private_from_me": "この投稿はフォロワーに限り見ることができます。", - "direct": "この投稿はメンションされたユーザーに限り見ることができます。" - } - }, - "friendship": { - "follow": "フォロー", - "following": "フォロー中", - "request": "リクエスト", - "pending": "保留", - "block": "ブロック", - "block_user": "%sをブロック", - "block_domain": "%sをブロック", - "unblock": "ブロックを解除", - "unblock_user": "%sのブロックを解除", - "blocked": "ブロック済み", - "mute": "ミュート", - "mute_user": "%sをミュート", - "unmute": "ミュートを解除", - "unmute_user": "%sのミュートを解除", - "muted": "ミュート済み", - "edit_info": "編集" - }, - "timeline": { - "filtered": "フィルター済み", - "timestamp": { - "now": "今" - }, - "loader": { - "load_missing_posts": "不足している投稿を読み込む", - "loading_missing_posts": "読込中...", - "show_more_replies": "返信をさらに表示" - }, - "header": { - "no_status_found": "投稿が見つかりません", - "blocking_warning": "ブロックを解除するまでこのユーザーをみることはできません。\nそういうことです。", - "user_blocking_warning": "%sがブロックを解除しない限りプロフィールをみることはできません。\nそういうことです。", - "blocked_warning": "ブロックされているようです...", - "user_blocked_warning": "%sがブロックを解除しない限りプロフィールをみることはできません。", - "suspended_warning": "このユーザーは停止されています。", - "user_suspended_warning": "%sのアカウントは停止されました。" - } - } - } - }, - "scene": { - "welcome": { - "slogan": "ソーシャルネットワーキングを、あなたの手の中に.", - "get_started": "はじめる", - "log_in": "ログイン" - }, - "server_picker": { - "title": "サーバーを選択", - "subtitle": "あなたの興味分野・地域に合ったコミュニティや、汎用のものを選択してください。", - "subtitle_extend": "あなたの興味分野・地域に合ったコミュニティや、汎用のものを選択してください。各コミュニティはそれぞれ完全に独立した組織や個人によって運営されています。", - "button": { - "category": { - "all": "すべて", - "all_accessiblity_description": "カテゴリ: すべて", - "academia": "アカデミア", - "activism": "アクティビズム", - "food": "食べ物", - "furry": "ケモノ", - "games": "ゲーム", - "general": "全般", - "journalism": "言論", - "lgbt": "lgbt", - "regional": "地域", - "art": "アート", - "music": "音楽", - "tech": "技術" - }, - "see_less": "閉じる", - "see_more": "もっと見る" - }, - "label": { - "language": "言語", - "users": "ユーザー", - "category": "カテゴリー" - }, - "input": { - "placeholder": "サーバーを探す", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "利用可能なサーバーの検索...", - "bad_network": "データの読み込み中に何か問題が発生しました。インターネットの接続状況を確認してください。", - "no_results": "なし" - } - }, - "register": { - "title": "あなたのことを教えてください", - "input": { - "avatar": { - "delete": "削除" - }, - "username": { - "placeholder": "ユーザー名", - "duplicate_prompt": "このユーザー名は使用されています" - }, - "display_name": { - "placeholder": "表示名" - }, - "email": { - "placeholder": "メール" - }, - "password": { - "placeholder": "パスワード", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "パスワードは最低でも8文字必要です。" - }, - "invite": { - "registration_user_invite_request": "なぜ参加したいと思ったのですか?" - } - }, - "error": { - "item": { - "username": "ユーザー名", - "email": "メール", - "password": "パスワード", - "agreement": "契約", - "locale": "地域", - "reason": "理由" - }, - "reason": { - "blocked": "%s は許可されていないメールプロバイダを含んでいます", - "unreachable": "%sは存在しないようです", - "taken": "%sは既に使われています", - "reserved": "%sは予約語です", - "accepted": "%s に合意しなければなりません", - "blank": "%sが必要です", - "invalid": "%sは無効です", - "too_long": "%sは長すぎます", - "too_short": "%sは短すぎます", - "inclusion": "%s はサポートされていない値です" - }, - "special": { - "username_invalid": "ユーザーネームには、英数字とアンダースコアのみを使用してください。", - "username_too_long": "ユーザー名が長すぎます(30文字以内)", - "email_invalid": "有効なメールアドレスではありません", - "password_too_short": "パスワードが短すぎます(8文字以上)" - } - } - }, - "server_rules": { - "title": "いくつかのルールがあります。", - "subtitle": "これらのルールは、%sの管理者によって設定されています。", - "prompt": "同意することでお客様は以下のサービスの利用規約とプライバシーポリシーに従うことになります。 %s.", - "terms_of_service": "利用規約", - "privacy_policy": "プライバシーポリシー", - "button": { - "confirm": "同意する" - } - }, - "confirm_email": { - "title": "さいごにもうひとつ。", - "subtitle": "先程 %s にメールを送信しました。リンクをタップしてアカウントを確認してください。", - "button": { - "open_email_app": "メールアプリを開く", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "メールをチェックしてください", - "description": "メールアドレスが正しいかどうか、また、迷惑メールフォルダに入っていないかどうかも確認してください。", - "resend_email": "もう一度メールを送信" - }, - "open_email_app": { - "title": "メールを確認", - "description": "先ほどメールをお送りしました。まだの方は、迷惑メールフォルダをご確認ください。", - "mail": "メール", - "open_email_client": "メールアプリを開く" - } - }, - "home_timeline": { - "title": "ホーム", - "navigation_bar_state": { - "offline": "オフライン", - "new_posts": "新しい投稿を見る", - "published": "投稿しました!", - "Publishing": "投稿中...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "フォローする人を探す", - "follow_explain": "誰かをフォローすると、その人の投稿がタイムラインに表示されるようになります。" - }, - "compose": { - "title": { - "new_post": "新しい投稿", - "new_reply": "新しい返信" - }, - "media_selection": { - "camera": "写真を撮る", - "photo_library": "フォトライブラリ", - "browse": "ブラウズ" - }, - "content_input_placeholder": "気になることを入力またはペースト", - "compose_action": "投稿", - "replying_to_user": "%sに返信", - "attachment": { - "photo": "写真", - "video": "動画", - "attachment_broken": "%sは壊れていてMastodonにアップロードできません。", - "description_photo": "閲覧が難しいユーザーへの画像説明", - "description_video": "閲覧が難しいユーザーへの映像説明" - }, - "poll": { - "duration_time": "期間: %s", - "thirty_minutes": "30分", - "one_hour": "1時間", - "six_hours": "6時間", - "one_day": "1日", - "three_days": "3日", - "seven_days": "7日", - "option_number": "オプション %ld" - }, - "content_warning": { - "placeholder": "ここに警告を書いてください..." - }, - "visibility": { - "public": "パブリック", - "unlisted": "非表示", - "private": "フォロワーのみ", - "direct": "ダイレクト" - }, - "auto_complete": { - "space_to_add": "スペースを追加" - }, - "accessibility": { - "append_attachment": "アタッチメントの追加", - "append_poll": "投票を追加", - "remove_poll": "投票を消去", - "custom_emoji_picker": "カスタム絵文字ピッカー", - "enable_content_warning": "閲覧注意を有効にする", - "disable_content_warning": "閲覧注意を無効にする", - "post_visibility_menu": "投稿の表示メニュー" - }, - "keyboard": { - "discard_post": "投稿を破棄", - "publish_post": "投稿する", - "toggle_poll": "投票を切り替える", - "toggle_content_warning": "閲覧注意を切り替える", - "append_attachment_entry": "アタッチメントを追加 - %s", - "select_visibility_entry": "公開設定を選択 - %s" - } - }, - "profile": { - "dashboard": { - "posts": "投稿", - "following": "フォロー", - "followers": "フォロワー" - }, - "fields": { - "add_row": "行追加", - "placeholder": { - "label": "ラベル", - "content": "コンテンツ" - } - }, - "segmented_control": { - "posts": "投稿", - "replies": "返信", - "posts_and_replies": "投稿と返信", - "media": "メディア", - "about": "概要" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "ミュートを解除", - "message": "%sをミュートしますか?" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "他のサーバーからのフォロワーは表示されません。" - }, - "following": { - "footer": "他のサーバーにいるフォローは表示されません。" - }, - "search": { - "title": "検索", - "search_bar": { - "placeholder": "ハッシュタグとユーザーを検索", - "cancel": "キャンセル" - }, - "recommend": { - "button_text": "すべて見る", - "hash_tag": { - "title": "マストドンに関するトレンド", - "description": "注目されているハッシュタグ", - "people_talking": "%s人が話題について話しています" - }, - "accounts": { - "title": "おすすめのアカウント", - "description": "以下のアカウントをフォローしてみてはいかがでしょうか?", - "follow": "フォロー" - } - }, - "searching": { - "segment": { - "all": "すべて", - "people": "人々", - "hashtags": "ハッシュタグ", - "posts": "投稿" - }, - "empty_state": { - "no_results": "なし" - }, - "recent_search": "最近の検索", - "clear": "クリア" - } - }, - "discovery": { - "tabs": { - "posts": "投稿", - "hashtags": "ハッシュタグ", - "news": "ニュース", - "community": "コミュニティ", - "for_you": "おすすめ" - }, - "intro": "あなたのMastodonサーバーで注目を集めている投稿がここに表示されます。" - }, - "favorite": { - "title": "お気に入り" - }, - "notification": { - "title": { - "Everything": "すべて", - "Mentions": "メンション" - }, - "notification_description": { - "followed_you": "さんにフォローされました", - "favorited_your_post": "さんがあなたの投稿をお気に入りに登録しました", - "reblogged_your_post": "さんがあなたの投稿をブーストしました", - "mentioned_you": "さんがあなたに返信しました", - "request_to_follow_you": "さんがあなたにフォローリクエストしました", - "poll_has_ended": "アンケートが終了しました" - }, - "keyobard": { - "show_everything": "すべて見る", - "show_mentions": "メンションを見る" - } - }, - "thread": { - "back_title": "投稿", - "title": "%sの投稿" - }, - "settings": { - "title": "設定", - "section": { - "appearance": { - "title": "外観", - "automatic": "システムに合わせる", - "light": "ライト", - "dark": "ダーク" - }, - "look_and_feel": { - "title": "テーマ", - "use_system": "端末の設定を使う", - "really_dark": "ブラック", - "sorta_dark": "ダーク", - "light": "ライト" - }, - "notifications": { - "title": "通知", - "favorites": "お気に入り登録", - "follows": "フォロー", - "boosts": "ブースト", - "mentions": "メンション", - "trigger": { - "anyone": "誰でも", - "follower": "フォロワー", - "follow": "フォローしている人", - "noone": "なし", - "title": "通知を受け取る" - } - }, - "preference": { - "title": "環境設定", - "true_black_dark_mode": "真っ黒なダークテーマを使用する", - "disable_avatar_animation": "アバターのアニメーションを無効化する", - "disable_emoji_animation": "絵文字のアニメーションを無効化する", - "using_default_browser": "既定のブラウザでリンクを開く", - "open_links_in_mastodon": "Mastodonでリンクを開く" - }, - "boring_zone": { - "title": "アプリについて", - "account_settings": "アカウント設定", - "terms": "利用規約", - "privacy": "プライバシーポリシー" - }, - "spicy_zone": { - "title": "スパイシーゾーン", - "clear": "メディアキャッシュをクリア", - "signout": "サインアウト" - } - }, - "footer": { - "mastodon_description": "Mastodonはオープンソースです。バグの報告はGithubの%s (%s)で行うことができます。" - }, - "keyboard": { - "close_settings_window": "設定を閉じる" - } - }, - "report": { - "title_report": "報告する", - "title": "%sを通報", - "step1": "ステップ 1/2", - "step2": "ステップ 2/2", - "content1": "他に通報したい投稿はありますか?", - "content2": "この通報についてモデレーターに伝達しておきたい事項はありますか?", - "report_sent_title": "ご報告ありがとうございます、追って確認します。", - "send": "通報を送信", - "skip_to_send": "コメントなしで送信", - "text_placeholder": "追加コメントを入力", - "reported": "報告済み", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "プレビューを閉じる", - "show_next": "次を見る", - "show_previous": "前を見る" - } - }, - "account_list": { - "tab_bar_hint": "現在のアカウント: %s. ダブルタップしてアカウント切替画面を表示します", - "dismiss_account_switcher": "アカウント切替画面を閉じます", - "add_account": "アカウントを追加" - }, - "wizard": { - "new_in_mastodon": "Mastodon の新機能", - "multiple_account_switch_intro_description": "プロフィールボタンを押して複数のアカウントを切り替えます。", - "accessibility_hint": "チュートリアルを閉じるには、ダブルタップしてください" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json b/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json deleted file mode 100644 index bf4148e92..000000000 --- a/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "投稿用の写真撮影に使用します", - "NSPhotoLibraryAddUsageDescription": "写真をフォトライブラリに保存するために使用します", - "NewPostShortcutItemTitle": "新規投稿", - "SearchShortcutItemTitle": "検索" -} diff --git a/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict b/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict deleted file mode 100644 index 0fde8d68f..000000000 --- a/Localization/StringsConvertor/input/kab_KAB/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 wulɣu ur nettwaɣra - other - %ld yilɣa ur nettwaɣra - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Talast n unekcum tɛedda %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 usekkil - other - %ld yisekkilen - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Talast n unekcum yeqqim-d seg-s %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 usekkil - other - %ld yisekkilen - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - tasuffeɣt - other - tisuffaɣ - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tsuffeɣt - other - %ld n tsuffaɣ - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1unurif - other - %ld yinurifen - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1uɛiwed n usuffeɣ - other - %ld n uɛiwed n usuffeɣ - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tririt - other - %ld tririyin - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tefrant - other - %ld tefranin - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1umefran - other - %ld imefranen - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 umdan i yettmeslayen - other - %ld yimdanen i yettmeslayen - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 uneḍfar - other - %ld yineḍfaren - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 uneḍfar - other - %ld yineḍfaren - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Yeqqim-d 1 useggas - other - Qqimen-d %ld yiseggasen - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 wayyur i d-yeqqimen - other - %ld wayyuren i d-yeqqimen - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Yeqqim-d 1 wass - other - Qqimen-d %ld wussan - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Yeqqim-d 1 usrag - other - Qqimen-d %ld yisragen - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tesdat i d-yeqqimen - other - %ld tesdatin i d-yeqqimen - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tasint i d-yeqqimen - other - %ld tsinin i d-yeqqimen - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 useggas aya - other - %ld yiseggasen aya - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 wayyur aya - other - %ld wayyuren aya - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 wass aya - other - %ld wussan aya - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 usrag aya - other - %ld yisragen aya - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tesdat aya - other - %ld tesdatin aya - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tasint aya - other - %ld tsinin aya - - - - diff --git a/Localization/StringsConvertor/input/kab_KAB/app.json b/Localization/StringsConvertor/input/kab_KAB/app.json deleted file mode 100644 index 1e2cfa5f4..000000000 --- a/Localization/StringsConvertor/input/kab_KAB/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Ttxil εreḍ tikelt-nniḍen.", - "please_try_again_later": "Ttxil εreḍ tikelt-nniḍen ticki." - }, - "sign_up_failure": { - "title": "Tuccḍa deg unekcum" - }, - "server_error": { - "title": "Tuccḍa n uqeddac" - }, - "vote_failure": { - "title": "Tuccḍa deg ufran", - "poll_ended": "Tafrant tfuk" - }, - "discard_post_content": { - "title": "Kkes arewway", - "message": "Sentem i wakken ad yettusefsax ugbur n tsuffeɣt." - }, - "publish_post_failure": { - "title": "Yecceḍ usuffeɣ", - "message": "Yecceḍ usuffeɣ n tsuffeɣt.\nMa ulac aɣilif, senqed tuqqna-inek internet.", - "attachments_message": { - "video_attach_with_photo": "Ur tezmireḍ ara ad tsedduḍ tavidyut deg tsuffeɣt ideg llant yakan tugniwin.", - "more_than_one_video": "Ur tezmireḍ ara ad ugar n tvidyut." - } - }, - "edit_profile_failure": { - "title": "Ẓreg tuccḍa n umaɣnu", - "message": "Yegguma ad yettwaẓreg umaɣnu. Ɛreḍ tikkelt-nniḍen." - }, - "sign_out": { - "title": "Ffeɣ", - "message": "Tebɣiḍ ad teffɣeḍ?", - "confirm": "Ffeɣ" - }, - "block_domain": { - "title": "D tidet, d tidet tebɣiḍ ad tesweḥleḍ %s akken ma yella? Deg tuget, kra n yisewḥal d ugdal ad yili d ayen iwulmen, yettwafernen. Ur tettwaliḍ ara agbur seg taɣult-nni neɣ kra seg yineḍfaren-ik i tt-yesseqdacen.", - "block_entire_domain": "Sewḥel taɣult" - }, - "save_photo_failure": { - "title": "Tuccḍa deg usekles n tewlaft", - "message": "Ma ulac aɣilif, rmed tasiregt n unekcum ɣer temkarḍit n tewlafin i usekles n tewlaft." - }, - "delete_post": { - "title": "Tebɣiḍ s tidet ad tekkseḍ tasuffeɣt-agi?", - "message": "Tebɣiḍ s tidet ad tekkseḍ tasuffeɣt-agi?" - }, - "clean_cache": { - "title": "Sfeḍ tuffirt", - "message": "Yettwasfeḍ %s n tkatut tuffirt akken iwata." - } - }, - "controls": { - "actions": { - "back": "Tuɣalin", - "next": "Uḍfir", - "previous": "Uzwir", - "open": "Ldi", - "add": "Rnu", - "remove": "Kkes", - "edit": "Ẓreg", - "save": "Sekles", - "ok": "IH", - "done": "Immed", - "confirm": "Sentem", - "continue": "Kemmel", - "compose": "Sudes", - "cancel": "Sefsex", - "discard": "Sefsex", - "try_again": "Ɛreḍ tikkelt-nniḍen", - "take_photo": "Ṭṭef tawlaft", - "save_photo": "Sekles tawlaft", - "copy_photo": "Nɣel tawlaft", - "sign_in": "Qqen", - "sign_up": "Jerred amiḍan", - "see_more": "Wali ugar", - "preview": "Taskant", - "share": "Bḍu", - "share_user": "Bḍu %s", - "share_post": "Bḍu tasuffeɣt", - "open_in_safari": "Ldi deg Safari", - "open_in_browser": "Ldi deg yiminig", - "find_people": "Af imdanen ara tḍefreḍ", - "manually_search": "Anadi s ufus deg wadeg-is", - "skip": "Zgel", - "reply": "Err", - "report_user": "Cetki ɣef %s", - "block_domain": "Sewḥel %s", - "unblock_domain": "Serreḥ i %s", - "settings": "Iɣewwaṛen", - "delete": "Kkes" - }, - "tabs": { - "home": "Agejdan", - "search": "Nadi", - "notification": "Tilɣa", - "profile": "Amaɣnu" - }, - "keyboard": { - "common": { - "switch_to_tab": "Ddu ɣer %s", - "compose_new_post": "Aru tasuffeɣt tamaynut", - "show_favorites": "Sken-d ismenyifen", - "open_settings": "Ldi iɣewwaren" - }, - "timeline": { - "previous_status": "Amagrad uzwir", - "next_status": "Amagrad uḍfir", - "open_status": "Ldi tasuffeɣt", - "open_author_profile": "Ldi amaɣnu n umeskar", - "open_reblogger_profile": "Ldi amaɣnu n win i yulsen asuffeɣ", - "reply_status": "Err ɣef tsuffeɣt", - "toggle_reblog": "Abeddel n unallas n tsuffeɣt", - "toggle_favorite": "Abeddel n usmenyaf i tsuffeɣt", - "toggle_content_warning": "Beddel alɣu n ugbur", - "preview_image": "Asenqed n tugna" - }, - "segmented_control": { - "previous_section": "Tafrant tuzwirt", - "next_section": "Tigezmi tuḍfirt" - } - }, - "status": { - "user_reblogged": "Tettwasuffeɣ-d %s i tikkelt-nniḍen", - "user_replied_to": "Yerra ɣef %s", - "show_post": "Sken-d tasuffeɣt", - "show_user_profile": "Ssken-d amaɣnu n useqdac", - "content_warning": "Alɣu n ugbur", - "sensitive_content": "Agbur amḥulfu", - "media_content_warning": "Sit anida tebɣiḍ i wakken ad twaliḍ", - "tap_to_reveal": "Sit i uskan", - "poll": { - "vote": "Dɣeṛ", - "closed": "Ifukk" - }, - "actions": { - "reply": "Err", - "reblog": "Aɛiwed n usuffeɣ", - "unreblog": "Sefsex allus n usuffeɣ", - "favorite": "Anurif", - "unfavorite": "Kkes seg yismenyifen", - "menu": "Umuɣ", - "hide": "Ffer", - "show_image": "Sken tugna", - "show_gif": "Sken GIF", - "show_video_player": "Sken ameɣri n tvidyut", - "tap_then_hold_to_show_menu": "Sit teǧǧeḍ aḍad-ik•im i wakken ad d-iffeɣ wumuɣ" - }, - "tag": { - "url": "URL", - "mention": "Tabdart", - "link": "Aseɣwen", - "hashtag": "Ahacṭag", - "email": "Imayl", - "emoji": "Emuji" - }, - "visibility": { - "unlisted": "Yal wa yezmer ad iwali tsuffeɣt-a maca ur d-tettwaskaneḍ ara deg yizirig n wakud azayaz.", - "private": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a.", - "private_from_me": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a.", - "direct": "D ineḍfaren-is kan i izemren ad walin tsuffeɣ-a." - } - }, - "friendship": { - "follow": "Ḍfeṛ", - "following": "Yettwaḍfar", - "request": "Tuttra", - "pending": "Yegguni", - "block": "Sewḥel", - "block_user": "Sewḥel %s", - "block_domain": "Sewḥel %s", - "unblock": "Serreḥ", - "unblock_user": "Serreḥ i %s", - "blocked": "Yettusewḥel", - "mute": "Sgugem", - "mute_user": "Sgugem %s", - "unmute": "Kkes asgugem", - "unmute_user": "Kkes asgugem ɣef %s", - "muted": "Yettwasgugem", - "edit_info": "Ẓreg talɣut" - }, - "timeline": { - "filtered": "Yettwasizdeg", - "timestamp": { - "now": "Tura" - }, - "loader": { - "load_missing_posts": "Sali tisuffaɣ i iruḥen", - "loading_missing_posts": "Asali n tsuffaɣ i iruḥen...", - "show_more_replies": "Ssken-d ugar n tririyin" - }, - "header": { - "no_status_found": "Ulac tasuffeɣt yettwafen", - "blocking_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n useqdac-a\nalamma tekkseḍ-as asewḥel.\nAkka i as-d-yettban umaɣnu-inek.", - "user_blocking_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n %s\nalamma tekkseḍ-as asewḥel.\nAkka i as-d-yettban umaɣnu-inek.", - "blocked_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n useqdac-a\nAkka i as-d-yettban umaɣnu-inek.", - "user_blocked_warning": "Ur tezmireḍ ara ad twaliḍ amaɣnu n %s\nAkka i as-d-yettban umaɣnu-inek.", - "suspended_warning": "Yettwaseḥbes useqdac-a.", - "user_suspended_warning": "Yettwaseḥbes umiḍan n %s." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Izeḍwa inmettiyen\nuɣalen-d ɣer ufus-ik.", - "get_started": "Aha bdu tura", - "log_in": "Qqen" - }, - "server_picker": { - "title": "Mastodon yettwaxdem i yiseqdacen deg waṭas n temɣiwnin.", - "subtitle": "Fren tamɣiwent almend n wayen tḥemmleḍ, n tmurt-ik neɣ n yiswi-inek amatu.", - "subtitle_extend": "Fren tamɣiwent almend n wayen tḥemmleḍ, n tmurt-ik neɣ n yiswi-inek amatu. Yal tamɣiwent tsedday-itt tkebbanit neɣ amdan ilelliyen.", - "button": { - "category": { - "all": "Akk", - "all_accessiblity_description": "Taggayt: Akk", - "academia": "akadimi", - "activism": "tinuɣmest", - "food": "učči", - "furry": "s taḍut", - "games": "uraren", - "general": "amatu", - "journalism": "taɣamsa", - "lgbt": "lgbt", - "regional": "amnaḍan", - "art": "taẓuri", - "music": "aẓawan", - "tech": "atiknikan" - }, - "see_less": "Sken cwiṭ", - "see_more": "Wali ugar" - }, - "label": { - "language": "TUTLAYT", - "users": "ISEQDACEN", - "category": "TAGGAYT" - }, - "input": { - "placeholder": "Nadi timɣiwnin", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Tifin n yiqeddacen yellan...", - "bad_network": "Tella-d tuccḍa lawan n usali n yisefka. Senqed tuqqna-ink internet.", - "no_results": "Ulac igemmaḍ" - } - }, - "register": { - "title": "Aha ad nebdu asbadu ɣef %s", - "input": { - "avatar": { - "delete": "Kkes" - }, - "username": { - "placeholder": "isem n useqdac", - "duplicate_prompt": "Isem-ayi n umseqdac yettwaṭṭef yakan." - }, - "display_name": { - "placeholder": "isem ara d-yettwaskanen" - }, - "email": { - "placeholder": "imayl" - }, - "password": { - "placeholder": "awal uffir", - "require": "Awal-ik uffir yesra ma drus:", - "character_limit": "8 n yisekkilen", - "accessibility": { - "checked": "yettwasenqed", - "unchecked": "ur yettwasenqed ara" - }, - "hint": "Awal-ik uffir yesra ma drus ṭam n yisekkilen" - }, - "invite": { - "registration_user_invite_request": "Acimi tebγiḍ ad ternuḍ iman-ik?" - } - }, - "error": { - "item": { - "username": "Isem n useqdac", - "email": "Imayl", - "password": "Awal uffir", - "agreement": "Amtawa", - "locale": "Tadigant", - "reason": "Taɣẓint" - }, - "reason": { - "blocked": "%s deg-s asaǧǧăw n yimayl ur nettusireg ara", - "unreachable": "%s ur yettban ara yella", - "taken": "%s yettwaseqdec yakan", - "reserved": "%s d awal uffir yettwaḥarren", - "accepted": "%s ilaq ad yettwaqbal", - "blank": "isra %s", - "invalid": "%s d arameɣtu", - "too_long": "%s ɣezzif aṭas", - "too_short": "%s wezzil aṭas", - "inclusion": "%s mačči d azal yettusefraken" - }, - "special": { - "username_invalid": "Isem n useqdac ilaq ad yesɛu kan isekkilen igmumḍinen d wid yettujerrden", - "username_too_long": "Isem n useqdac ɣezzif aṭas (ur ilaq ara ad iɛeddi nnig 30 yisekkilen)", - "email_invalid": "Tagi mačči d tansa n yimayl tameɣtut", - "password_too_short": "Awal uffir wezzil aṭas (ilaq ad yesɛu ma drus 8 yisekkilen)" - } - } - }, - "server_rules": { - "title": "Kra n yilugan igejdanen.", - "subtitle": "Ilugan-a ttusbadun sɣur inedbalen n %s.", - "prompt": "Mi ara tkemmleḍ, ilaq ad tqebleḍ tiwtilin n yimeẓla d tsertit tabaḍnit n %s.", - "terms_of_service": "tiwetlin n useqdec", - "privacy_policy": "tasertit tabaḍnit", - "button": { - "confirm": "Qebleɣ" - } - }, - "confirm_email": { - "title": "Taɣawsa taneggarut.", - "subtitle": "Sit ɣef useɣwen i ak-n-uznen i wakken ad tesneqdeḍ amiḍan-ik.", - "button": { - "open_email_app": "Ldi asnas n yimayl", - "resend": "Ales tuzna" - }, - "dont_receive_email": { - "title": "Senqed imayl-ik·im", - "description": "Senqed ma yella tansa-inek n imayl d tameɣut akked uspam ma yella ur t-tufiḍ ara.", - "resend_email": "Ales tuzna n yimayl" - }, - "open_email_app": { - "title": "Sefqed Tanaka-inek.", - "description": "Akken kan i ak-n-nuzen imayl. Sefqed aspam ma yella ur t-tufiḍ ara.", - "mail": "Imayl", - "open_email_client": "Ldi amsaɣ n yimayl" - } - }, - "home_timeline": { - "title": "Agejdan", - "navigation_bar_state": { - "offline": "Beṛṛa n tuqqna", - "new_posts": "Tissufaɣ timaynutin", - "published": "Yettwasuffeɣ!", - "Publishing": "Asuffeɣ tasuffeɣt...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Af imdanen ara tḍefreḍ", - "follow_explain": "Mi ara teṭṭafareḍ albaɛḍ, ad twaliḍ tisuffaɣ-is deg usuddem-inek agejdan." - }, - "compose": { - "title": { - "new_post": "Tasuffeɣt tamaynut", - "new_reply": "Tiririt tamaynut" - }, - "media_selection": { - "camera": "Ṭṭef tawlaft", - "photo_library": "Tanedlist n tewlaft", - "browse": "Snirem" - }, - "content_input_placeholder": "Aru neɣ senteḍ ayen yellan deg wallaɣ-ik", - "compose_action": "Sufeɣ", - "replying_to_user": "tiririt ɣef %s", - "attachment": { - "photo": "tawlaft", - "video": "tavidyutt", - "attachment_broken": "%s-a yerreẓ, ur yezmir ara\nAd d-yettwasali ɣef Mastodon.", - "description_photo": "Glem-d tawlaft i wid yesɛan ugur deg yiẓri...", - "description_video": "Glem-d tavidyut i wid yesɛan ugur deg yiẓri..." - }, - "poll": { - "duration_time": "Tangazt: %s", - "thirty_minutes": "30 n tesdatin", - "one_hour": "1 n wesrag", - "six_hours": "6 n yisragen", - "one_day": "1 n wass", - "three_days": "3 n wussan", - "seven_days": "7 n wussan", - "option_number": "Taxtiṛt %ld" - }, - "content_warning": { - "placeholder": "Aru alɣu-inek s telqeyt da..." - }, - "visibility": { - "public": "Azayez", - "unlisted": "War tabdert", - "private": "Imeḍfaṛen kan", - "direct": "Imdanen i d-bedreɣ kan" - }, - "auto_complete": { - "space_to_add": "Tallunt ara yettwarnun" - }, - "accessibility": { - "append_attachment": "Rnu taceqquft yeddan", - "append_poll": "Rnu asenqed", - "remove_poll": "Kkes asenqed", - "custom_emoji_picker": "Amefran n yimujiten udmawanen", - "enable_content_warning": "Rmed alɣu n ugbur", - "disable_content_warning": "Sens alɣu n ugbur", - "post_visibility_menu": "Umuɣ n ubani n tsuffeɣt" - }, - "keyboard": { - "discard_post": "Sefsex tasuffeɣt", - "publish_post": "Suffeɣ tasuffeɣt", - "toggle_poll": "Beddel asenqed", - "toggle_content_warning": "Beddel alɣu n ugbur", - "append_attachment_entry": "Rnu taceqquft yeddan - %s", - "select_visibility_entry": "Fren timeẓriwt - %s" - } - }, - "profile": { - "dashboard": { - "posts": "tisuffaɣ", - "following": "iṭafaṛ", - "followers": "imeḍfaren" - }, - "fields": { - "add_row": "Rnu izirig", - "placeholder": { - "label": "Tabzimt", - "content": "Agbur" - } - }, - "segmented_control": { - "posts": "Imagraden", - "replies": "Tiririyin", - "posts_and_replies": "Tisuffaɣ d tririyin", - "media": "Amidya", - "about": "Ɣef" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Sgugem amiḍan", - "message": "Sentem asgugem i %s" - }, - "confirm_unmute_user": { - "title": "Kkes asgugem i umiḍan", - "message": "Sentem tukksa n usgugem i %s" - }, - "confirm_block_user": { - "title": "Sewḥel amiḍan", - "message": "Sentem asewḥel n %s" - }, - "confirm_unblock_user": { - "title": "Kkes asewḥel i umiḍan", - "message": "Sentem tukksa n usgugem i %s" - } - }, - "accessibility": { - "show_avatar_image": "Sken tugna n avaṭar", - "edit_avatar_image": "Ẓreg tugna n avaṭar", - "show_banner_image": "Sken tugna n uɣerrac", - "double_tap_to_open_the_list": "Sin isitiyen i twaledyawt n tebdart" - } - }, - "follower": { - "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." - }, - "following": { - "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." - }, - "search": { - "title": "Nadi", - "search_bar": { - "placeholder": "Nadi hashtags d yiseqdacen", - "cancel": "Sefsex" - }, - "recommend": { - "button_text": "Wali akk", - "hash_tag": { - "title": "Ayen mucaɛen ɣef Mastodon", - "description": "Hashtags i d-ijebbden aṭas lwelha", - "people_talking": "%s yimdanen i yettmeslayen" - }, - "accounts": { - "title": "Imiḍanen i tzemreḍ ad tḥemmleḍ", - "description": "Ahat tebɣiḍ ad tḍefreḍ imiḍanen-a", - "follow": "Ḍfeṛ" - } - }, - "searching": { - "segment": { - "all": "Akk", - "people": "Imdanen", - "hashtags": "Ihacṭagen", - "posts": "Tisuffaɣ" - }, - "empty_state": { - "no_results": "Ulac igemmaḍ" - }, - "recent_search": "Inadiyen imaynuten", - "clear": "Sfeḍ" - } - }, - "discovery": { - "tabs": { - "posts": "Tisuffaɣ", - "hashtags": "Ihacṭagen", - "news": "Isallen", - "community": "Community", - "for_you": "I kečč·kem" - }, - "intro": "Tigi d tisuffaɣ i d-ijebbden s waṭas deg tama-inek•inem n Mastodon." - }, - "favorite": { - "title": "Ismenyifen-ik·im" - }, - "notification": { - "title": { - "Everything": "Akk", - "Mentions": "Abdar" - }, - "notification_description": { - "followed_you": "iṭṭafar-ik·ikem", - "favorited_your_post": "yesmenyef tasuffeɣt-ik·im", - "reblogged_your_post": "iɛawed-as asuffeɣ i tsuffeɣt-ik·im", - "mentioned_you": "yebder-ik·ikem-id", - "request_to_follow_you": "issuter aḍfar-inek", - "poll_has_ended": "asenqed iffuk" - }, - "keyobard": { - "show_everything": "Sken yal taɣawsa", - "show_mentions": "Sken tisedmirin" - } - }, - "thread": { - "back_title": "Amagrad", - "title": "Tasuffeɣt sɣur %s" - }, - "settings": { - "title": "Iɣewwaṛen", - "section": { - "appearance": { - "title": "Apparence", - "automatic": "Awurman", - "light": "Yezga d aceεlal", - "dark": "Yezga d aberkan" - }, - "look_and_feel": { - "title": "Wali, tḥalfuḍ", - "use_system": "Seqdec anagraw", - "really_dark": "D aberkan s tidet", - "sorta_dark": "D aberkan cwiya", - "light": "Aceɛlal" - }, - "notifications": { - "title": "Tilɣa", - "favorites": "Yerna tasuffeɣt-iw ɣer yismenyafen-ines", - "follows": "Yeṭṭafar-iyi", - "boosts": "Yules asuffeɣ n tduffeɣt-iw", - "mentions": "Ibder-iyi-d", - "trigger": { - "anyone": "yal yiwen", - "follower": "ameḍfar", - "follow": "yal win ara ḍefreɣ", - "noone": "ula yiwen", - "title": "Selɣu-yi-d mi ara" - } - }, - "preference": { - "title": "Imenyafen", - "true_black_dark_mode": "Askar aberkan n tidet", - "disable_avatar_animation": "Sens ivaṭaren yettembiwilen", - "disable_emoji_animation": "Sens imujiten yettembiwilen", - "using_default_browser": "Seqdec iminig amezwer i twaledyawt n yiseɣwan", - "open_links_in_mastodon": "Ldi iseɣwan deg Mastodon" - }, - "boring_zone": { - "title": "Tamnaḍt yessefcalen", - "account_settings": "Iɣewwaṛen n umiḍan", - "terms": "Tiwtilin n useqdec", - "privacy": "Tasertit tabaḍnit" - }, - "spicy_zone": { - "title": "Tamnaḍt tamihawt", - "clear": "Sfeḍ takatut tuffirt n umidyat", - "signout": "Senser" - } - }, - "footer": { - "mastodon_description": "Maṣṭudun d aseɣzan s uɣbalu yeldin. Tzemreḍ ad temmleḍ uguren deg GitHub %s (%s)" - }, - "keyboard": { - "close_settings_window": "Mdel asfaylu n iɣewwaṛen" - } - }, - "report": { - "title_report": "Aneqqis", - "title": "Aneqqis %s", - "step1": "Aḥric 1 seg 2", - "step2": "Aḥric 2 seg 2", - "content1": "Tebɣiḍ ad ternuḍ tisuffaɣ-nniḍen ɣer uneqqis?", - "content2": "Yella wayen i ilaqen ad teẓren yimḍebbren ɣef uneqqis-a?", - "report_sent_title": "Tanemmirt ɣef uneqqis, ad nwali deg waya.", - "send": "Azen aneqis", - "skip_to_send": "Azen s war awennit", - "text_placeholder": "Aru neɣ senteḍ iwenniten-nniḍen", - "reported": "YETTWAMMEL", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Mdel timeẓri", - "show_next": "Sken uḍfir", - "show_previous": "Sken udfir" - } - }, - "account_list": { - "tab_bar_hint": "Amaɣnu amiran yettwafernen: %s. Sit berdayen syen teǧǧeḍ aḍad-ik·im i uskan abeddel n umiḍan", - "dismiss_account_switcher": "Sefsex abeddel n umiḍan", - "add_account": "Rnu amiḍan" - }, - "wizard": { - "new_in_mastodon": "Amaynut deg Maṣṭudun", - "multiple_account_switch_intro_description": "Beddel gar waṭas n yimiḍanen s tussda ɣezzifen ɣef tqeffalt n umaɣnu.", - "accessibility_hint": "Sin isitiyen i usefsex n umarag-a" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/kab_KAB/ios-infoPlist.json b/Localization/StringsConvertor/input/kab_KAB/ios-infoPlist.json deleted file mode 100644 index 41128876a..000000000 --- a/Localization/StringsConvertor/input/kab_KAB/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Yettwaseqdac i tuṭṭfa n tewlafin deg usuffeɣ n waddaden", - "NSPhotoLibraryAddUsageDescription": "Yettwaseqdac i usekles n tewlafin deg temkarḍit n tewlafin", - "NewPostShortcutItemTitle": "Tasuffeɣt tamaynut", - "SearchShortcutItemTitle": "Nadi" -} diff --git a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict deleted file mode 100644 index 7b2e40773..000000000 --- a/Localization/StringsConvertor/input/kmr_TR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 agahdariya nexwendî - other - %ld agahdariyên nexwendî - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Sînorê têketinê derbas kir %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tîp - other - %ld tîp - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Sînorê têketinê %#@character_count@ maye - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tîp - other - %ld tîp - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - şandî - other - şandî - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 medya - other - %ld medya - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 şandî - other - %ld şandî - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hezkirin - other - %ld hezkirin - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ji nû ve nivîsandin - other - %ld ji nû ve nivîsandin - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 bersiv - other - %ld bersiv - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 deng - other - %ld deng - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hilbijêr - other - %ld hilbijêr - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mirov diaxive - other - %ld mirov diaxive - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dişopîne - other - %ld dişopîne - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 şopîner - other - %ld şopîner - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 sal berê - other - %ld sal berê - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 meh berê - other - %ld meh berê - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 roj berê - other - %ld roj berê - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 demjimêr berê - other - %ld demjimêr berê - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 xulek berê - other - %ld xulek berê - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 çirke berê - other - %ld çirke berê - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 sal berê - other - %ld sal berê - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 xulek berê - other - %ld xulek berê - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 roj berê - other - %ld roj berê - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 demjimêr berê - other - %ld demjimêr berê - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 xulek berê - other - %ld xulek berê - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 çirke berê - other - %ld çirke berê - - - - diff --git a/Localization/StringsConvertor/input/kmr_TR/app.json b/Localization/StringsConvertor/input/kmr_TR/app.json deleted file mode 100644 index a705c433a..000000000 --- a/Localization/StringsConvertor/input/kmr_TR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Ji kerema xwe dîsa biceribîne.", - "please_try_again_later": "Ji kerema xwe paşê dîsa biceribîne." - }, - "sign_up_failure": { - "title": "Tomarkirin têkçû" - }, - "server_error": { - "title": "Çewtiya rajekar" - }, - "vote_failure": { - "title": "Dengdayîn têkçû", - "poll_ended": "Rapirsîya qediya" - }, - "discard_post_content": { - "title": "Reşnivîsê paşguh bike", - "message": "Bipejrîne ku naveroka şandiyê ya hatiye nivîsandin paşguh bikî." - }, - "publish_post_failure": { - "title": "Weşandin têkçû", - "message": "Weşandina şandiyê têkçû.\nJkx girêdana înternetê xwe kontrol bike.", - "attachments_message": { - "video_attach_with_photo": "Nikare vîdyoyekê tevlî şandiyê ku berê wêne tê de heye bike.", - "more_than_one_video": "Nikare ji bêtirî yek vîdyoyekê tevlî şandiyê bike." - } - }, - "edit_profile_failure": { - "title": "Di serrastkirina profîlê çewtî", - "message": "Nikare profîlê serrast bike. Jkx dîsa biceribîne." - }, - "sign_out": { - "title": "Derkeve", - "message": "Ma tu dixwazî ku derkevî?", - "confirm": "Derkeve" - }, - "block_domain": { - "title": "Tu ji xwe bawerî, bi rastî tu dixwazî hemû %s asteng bikî? Di gelek rewşan de asteng kirin an jî bêdeng kirin têrê dike û tê tercîh kirin. Tu nikarî naveroka vê navperê di demnameyê an jî agahdariyên xwe de bibînî. Şopînerên te yê di vê navperê were jêbirin.", - "block_entire_domain": "Navperê asteng bike" - }, - "save_photo_failure": { - "title": "Tomarkirina wêneyê têkçû", - "message": "Ji kerema xwe mafê bide gihîştina wênegehê çalak bike da ku wêne werin tomarkirin." - }, - "delete_post": { - "title": "Şandiyê jê bibe", - "message": "Ma tu dixwazî vê şandiyê jê bibî?" - }, - "clean_cache": { - "title": "Pêşbîrê pak bike", - "message": "Pêşbîra %s biserketî hate pakkirin." - } - }, - "controls": { - "actions": { - "back": "Vegere", - "next": "Pêş", - "previous": "Paş", - "open": "Veke", - "add": "Tevlî bike", - "remove": "Rake", - "edit": "Serrast bike", - "save": "Tomar bike", - "ok": "BAŞ E", - "done": "Qediya", - "confirm": "Bipejirîne", - "continue": "Bidomîne", - "compose": "Binivîsîne", - "cancel": "Dev jê berde", - "discard": "Biavêje", - "try_again": "Dîsa biceribîne", - "take_photo": "Wêne bikişîne", - "save_photo": "Wêneyê tomar bike", - "copy_photo": "Wêneyê jê bigire", - "sign_in": "Têkeve", - "sign_up": "Tomar bibe", - "see_more": "Bêtir bibîne", - "preview": "Pêşdîtin", - "share": "Parve bike", - "share_user": "%s parve bike", - "share_post": "Şandiyê parve bike", - "open_in_safari": "Di Safariyê de veke", - "open_in_browser": "Di gerokê de veke", - "find_people": "Mirovan bo şopandinê bibîne", - "manually_search": "Ji devlê bi destan lêgerînê bike", - "skip": "Derbas bike", - "reply": "Bersivê bide", - "report_user": "%s ragihîne", - "block_domain": "%s asteng bike", - "unblock_domain": "%s asteng neke", - "settings": "Sazkarî", - "delete": "Jê bibe" - }, - "tabs": { - "home": "Serrûpel", - "search": "Bigere", - "notification": "Agahdarî", - "profile": "Profîl" - }, - "keyboard": { - "common": { - "switch_to_tab": "Biguherîne bo %s", - "compose_new_post": "Şandiyeke nû binivsîne", - "show_favorites": "Bijarteyan nîşan bide", - "open_settings": "Sazkariyan Veke" - }, - "timeline": { - "previous_status": "Şandeya paş", - "next_status": "Şandiya pêş", - "open_status": "Şandiyê veke", - "open_author_profile": "Profîla nivîskaran veke", - "open_reblogger_profile": "Profîla nivîskaran veke", - "reply_status": "Bersivê bide şandiyê", - "toggle_reblog": "Ji nû ve nivîsandin di şandiyê de biguherîne", - "toggle_favorite": "Li ser şandiyê bijarte biguherîne", - "toggle_content_warning": "Hişyariya naverokê biguherîne", - "preview_image": "Pêşdîtina wêneyê" - }, - "segmented_control": { - "previous_section": "Beşa paş", - "next_section": "Beşa pêş" - } - }, - "status": { - "user_reblogged": "%s ji nû ve nivîsand", - "user_replied_to": "Bersiv da %s", - "show_post": "Şandiyê nîşan bide", - "show_user_profile": "Profîla bikarhêner nîşan bide", - "content_warning": "Hişyariya naverokê", - "sensitive_content": "Naveroka hestiyarî", - "media_content_warning": "Ji bo eşkerekirinê li derekî bitikîne", - "tap_to_reveal": "Ji bo dîtinê bitikîne", - "poll": { - "vote": "Deng bide", - "closed": "Girtî" - }, - "actions": { - "reply": "Bersivê bide", - "reblog": "Ji nû ve nivîsandin", - "unreblog": "Ji nû ve nivîsandinê vegere", - "favorite": "Bijarte", - "unfavorite": "Nebijarte", - "menu": "Kulîn", - "hide": "Veşêre", - "show_image": "Wêneyê nîşan bide", - "show_gif": "GIF nîşan bide", - "show_video_player": "Lêdera vîdyoyê nîşan bide", - "tap_then_hold_to_show_menu": "Ji bo nîşandana menuyê dirêj bitikîne" - }, - "tag": { - "url": "URL", - "mention": "Qalkirin", - "link": "Girêdan", - "hashtag": "Hashtag", - "email": "E-name", - "emoji": "Emojî" - }, - "visibility": { - "unlisted": "Her kes dikare vê şandiyê bibîne lê nayê nîşandan di demnameya gelemperî de.", - "private": "Tenê şopînerên wan dikarin vê şandiyê bibînin.", - "private_from_me": "Tenê şopînerên min dikarin vê şandiyê bibînin.", - "direct": "Tenê bikarhênerê qalkirî dikare vê şandiyê bibîne." - } - }, - "friendship": { - "follow": "Bişopîne", - "following": "Dişopîne", - "request": "Daxwaz bike", - "pending": "Tê nirxandin", - "block": "Asteng bike", - "block_user": "%s asteng bike", - "block_domain": "%s asteng bike", - "unblock": "Astengiyê rake", - "unblock_user": "%s asteng neke", - "blocked": "Astengkirî", - "mute": "Bêdeng bike", - "mute_user": "%s bêdeng bike", - "unmute": "Bêdeng neke", - "unmute_user": "%s bêdeng neke", - "muted": "Bêdengkirî", - "edit_info": "Zanyariyan serrast bike" - }, - "timeline": { - "filtered": "Parzûnkirî", - "timestamp": { - "now": "Niha" - }, - "loader": { - "load_missing_posts": "Şandiyên wendayî bar bike", - "loading_missing_posts": "Şandiyên wendayî tên barkirin...", - "show_more_replies": "Bêtir bersivan nîşan bide" - }, - "header": { - "no_status_found": "Tu şandî nehate dîtin", - "blocking_warning": "Tu nikarî profîla vî/ê bikarhênerî bibînî\nHeya ku tu astengiyê li ser wî/ê ranekî.\nProfîla te ji wan ra wiha xuya dike.", - "user_blocking_warning": "Tu nikarî profîla %s bibînî\nHeya ku tu astengiyê li ser wî/ê ranekî.\nProfîla te ji wan ra wiha xuya dike.", - "blocked_warning": "Tu nikarî profîla vî/ê bikarhênerî bibînî\nheya ku ew astengiyê li ser te rakin.", - "user_blocked_warning": "Tu nikarî profîla %s bibînî\nHeta ku astengîya te rakin.", - "suspended_warning": "Ev bikarhêner hatiye rawestandin.", - "user_suspended_warning": "Ajimêra %s hatiye rawestandin." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Torên civakî\ndi destên te de.", - "get_started": "Dest pê bike", - "log_in": "Têkeve" - }, - "server_picker": { - "title": "Mastodon ji bikarhênerên di civakên cuda de pêk tê.", - "subtitle": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre.", - "subtitle_extend": "Li gorî berjewendî, herêm, an jî armancek gelemperî civakekê hilbijêre. Her civakek ji hêla rêxistinek an kesek bi tevahî serbixwe ve tê xebitandin.", - "button": { - "category": { - "all": "Hemû", - "all_accessiblity_description": "Beş: Hemû", - "academia": "akademî", - "activism": "çalakî", - "food": "xwarin", - "furry": "furry", - "games": "lîsk", - "general": "giştî", - "journalism": "rojnamevanî", - "lgbt": "lgbt", - "regional": "herêmî", - "art": "huner", - "music": "muzîk", - "tech": "teknolojî" - }, - "see_less": "Kêmtir bibîne", - "see_more": "Bêtir bibîne" - }, - "label": { - "language": "ZIMAN", - "users": "BIKARHÊNER", - "category": "BEŞ" - }, - "input": { - "placeholder": "Li rajekaran bigere", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Peydakirina rajekarên berdest...", - "bad_network": "Di dema barkirina daneyan da çewtî derket. Girêdana xwe ya înternetê kontrol bike.", - "no_results": "Encam tune" - } - }, - "register": { - "title": "Ji me re hinekî qala xwe bike %s", - "input": { - "avatar": { - "delete": "Jê bibe" - }, - "username": { - "placeholder": "navê bikarhêner", - "duplicate_prompt": "Navê vê bikarhêner tê girtin." - }, - "display_name": { - "placeholder": "navê nîşanê" - }, - "email": { - "placeholder": "e-name" - }, - "password": { - "placeholder": "pêborîn", - "require": "Pêdiviya pêborîna te ya herî kêm:", - "character_limit": "8 tîp", - "accessibility": { - "checked": "hate kontrolkirin", - "unchecked": "nehate kontrolkirin" - }, - "hint": "Pêborîna te herî kêm divê ji 8 tîpan pêk bê" - }, - "invite": { - "registration_user_invite_request": "Tu çima dixwazî beşdar bibî?" - } - }, - "error": { - "item": { - "username": "Navê bikarhêner", - "email": "E-name", - "password": "Pêborîn", - "agreement": "Peyman", - "locale": "Zimanê navrûyê", - "reason": "Sedem" - }, - "reason": { - "blocked": "%s peydekerê e-peyamê yê qedexekirî dihewîne", - "unreachable": "%s xuya ye ku tune ye", - "taken": "%s jixwe tê bikaranîn", - "reserved": "%s peyveke parastî ye", - "accepted": "%s divê were pejirandin", - "blank": "%s pêwist e", - "invalid": "%s ne derbasdar e", - "too_long": "%s pir dirêj e", - "too_short": "%s pir kurt e", - "inclusion": "%s ne nirxek piştgirî ye" - }, - "special": { - "username_invalid": "Navê bikarhêner divê tenê ji tîpên alfajimarî û binxêz pêk be", - "username_too_long": "Navê bikarhêner pir dirêj e (ji 30 tîpan dirêjtir nabe)", - "email_invalid": "Ev navnîşaneke e-nameyê ne derbasdar e", - "password_too_short": "Pêborîn pir kurt e (divê herî kêm 8 tîp be)" - } - } - }, - "server_rules": { - "title": "Hinek rêzikên bingehîn.", - "subtitle": "Ev rêzik ji aliyê çavdêrên %s ve tên sazkirin.", - "prompt": "Bi domandinê, tu ji bo %s di bin mercên bikaranînê û polîtîkaya nepenîtiyê dipejirînî.", - "terms_of_service": "mercên bikaranînê", - "privacy_policy": "polîtikaya nihêniyê", - "button": { - "confirm": "Ez dipejirînim" - } - }, - "confirm_email": { - "title": "Tiştekî dawî.", - "subtitle": "Me tenê e-nameyek ji %s re şand,\ngirêdanê bitikne da ku ajimêra xwe bidî piştrastkirin.", - "button": { - "open_email_app": "Sepana e-nameyê veke", - "resend": "Ji nû ve bişîne" - }, - "dont_receive_email": { - "title": "E-nameyê xwe kontrol bike", - "description": "Kontrol bike ka navnîşana e-nameya te rast e û her wiha peldanka xwe ya spam.", - "resend_email": "E-namyê yê dîsa bişîne" - }, - "open_email_app": { - "title": "Nameyên xwe yên wergirtî kontrol bike.", - "description": "Me tenê ji te re e-nameyek şand. Heke nehatiye peldanka xwe ya spamê kontrol bike.", - "mail": "E-name", - "open_email_client": "Rajegirê e-nameyê veke" - } - }, - "home_timeline": { - "title": "Serrûpel", - "navigation_bar_state": { - "offline": "Derhêl", - "new_posts": "Şandiyên nû bibîne", - "published": "Hate weşandin!", - "Publishing": "Şandî tê weşandin...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Kesên bo ku bişopînî bibîne", - "follow_explain": "Gava tu kesekî dişopînî, tu yê şandiyê wan di serrûpelê de bibîne." - }, - "compose": { - "title": { - "new_post": "Şandiya nû", - "new_reply": "Bersiva nû" - }, - "media_selection": { - "camera": "Wêne bikişîne", - "photo_library": "Wênegeh", - "browse": "Bigere" - }, - "content_input_placeholder": "Tiştê ku di hişê te de ye binivîsin an jî pêve bike", - "compose_action": "Biweşîne", - "replying_to_user": "bersiv bide %s", - "attachment": { - "photo": "wêne", - "video": "vîdyo", - "attachment_broken": "Ev %s naxebite û nayê barkirin\n li ser Mastodon.", - "description_photo": "Wêneyê ji bo kêmbînên dîtbar bide nasîn...", - "description_video": "Vîdyoyê ji bo kêmbînên dîtbar bide nasîn..." - }, - "poll": { - "duration_time": "Dirêjî: %s", - "thirty_minutes": "30 xulek", - "one_hour": "1 Demjimêr", - "six_hours": "6 Demjimêr", - "one_day": "1 Roj", - "three_days": "3 Roj", - "seven_days": "7 Roj", - "option_number": "Vebijêrk %ld" - }, - "content_warning": { - "placeholder": "Li vir hişyariyek hûrgilî binivîsine..." - }, - "visibility": { - "public": "Gelemperî", - "unlisted": "Nerêzokkirî", - "private": "Tenê şopîneran", - "direct": "Tenê mirovên ku min qalkirî" - }, - "auto_complete": { - "space_to_add": "Bicîhkirinê tevlî bike" - }, - "accessibility": { - "append_attachment": "Pêvek tevlî bike", - "append_poll": "Rapirsî tevlî bike", - "remove_poll": "Rapirsî rake", - "custom_emoji_picker": "Hilbijêrê emojî yên kesanekirî", - "enable_content_warning": "Hişyariya naverokê çalak bike", - "disable_content_warning": "Hişyariya naverokê neçalak bike", - "post_visibility_menu": "Kulîna xuyabûna şandiyê" - }, - "keyboard": { - "discard_post": "Şandî paşguh bike", - "publish_post": "Şandiyê biweşîne", - "toggle_poll": "Rapirsiyê biguherîne", - "toggle_content_warning": "Hişyariya naverokê biguherîne", - "append_attachment_entry": "Pêvek tevlî bike - %s", - "select_visibility_entry": "Xuyabûnê hilbijêre - %s" - } - }, - "profile": { - "dashboard": { - "posts": "şandî", - "following": "dişopîne", - "followers": "şopîner" - }, - "fields": { - "add_row": "Rêzê tevlî bike", - "placeholder": { - "label": "Nîşan", - "content": "Naverok" - } - }, - "segmented_control": { - "posts": "Şandî", - "replies": "Bersiv", - "posts_and_replies": "Şandî û bersiv", - "media": "Medya", - "about": "Derbar" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Ajimêrê bêdeng bike", - "message": "Ji bo bêdengkirina %s bipejirîne" - }, - "confirm_unmute_user": { - "title": "Ajimêrê bêdeng neke", - "message": "Ji bo vekirina bêdengkirinê %s bipejirîne" - }, - "confirm_block_user": { - "title": "Ajimêr asteng bike", - "message": "Ji bo rakirina astengkirinê %s bipejirîne" - }, - "confirm_unblock_user": { - "title": "Astengiyê li ser ajimêr rake", - "message": "Ji bo rakirina astengkirinê %s bipejirîne" - } - }, - "accessibility": { - "show_avatar_image": "Wêneya avatar nîşan bide", - "edit_avatar_image": "Wêneya avatar serrast bike", - "show_banner_image": "Wêneya paşrûyê nîşan bide", - "double_tap_to_open_the_list": "Ducaran bitikîne bo vekirina listeyê" - } - }, - "follower": { - "footer": "Şopîner ji rajekerên din nayê dîtin." - }, - "following": { - "footer": "Şopandin ji rajekerên din nayê dîtin." - }, - "search": { - "title": "Bigere", - "search_bar": { - "placeholder": "Li hashtag û bikarhêneran bigere", - "cancel": "Dev jê berde" - }, - "recommend": { - "button_text": "Hemûyan bibîne", - "hash_tag": { - "title": "Rojev li ser Mastodon", - "description": "Hashtag ên ku pir balê dikişînin", - "people_talking": "%s kes diaxivin" - }, - "accounts": { - "title": "Ajimêrên ku belkî tu jê hez bikî", - "description": "Dibe ku tu bixwazî van ajimêran bişopînî", - "follow": "Bişopîne" - } - }, - "searching": { - "segment": { - "all": "Hemû", - "people": "Mirov", - "hashtags": "Hashtag", - "posts": "Şandî" - }, - "empty_state": { - "no_results": "Encam tune" - }, - "recent_search": "Lêgerînên dawî", - "clear": "Pak bike" - } - }, - "discovery": { - "tabs": { - "posts": "Şandî", - "hashtags": "Hashtag", - "news": "Nûçe", - "community": "Civak", - "for_you": "Ji bo te" - }, - "intro": "Ev şandiyên ku di quncika Mastodon balê dikişîne." - }, - "favorite": { - "title": "Bijarteyên te" - }, - "notification": { - "title": { - "Everything": "Her tişt", - "Mentions": "Qalkirin" - }, - "notification_description": { - "followed_you": "te şopand", - "favorited_your_post": "şandiya te hez kir", - "reblogged_your_post": "şandiya te ji nû ve nivisand", - "mentioned_you": "qale te kir", - "request_to_follow_you": "dixwazê te bişopîne", - "poll_has_ended": "rapirsî qediya" - }, - "keyobard": { - "show_everything": "Her tiştî nîşan bide", - "show_mentions": "Qalkirinan nîşan bike" - } - }, - "thread": { - "back_title": "Şandî", - "title": "Şandî ji %s" - }, - "settings": { - "title": "Sazkarî", - "section": { - "appearance": { - "title": "Xuyang", - "automatic": "Xweber", - "light": "Her dem ronahî", - "dark": "Her dem tarî" - }, - "look_and_feel": { - "title": "Xuyang", - "use_system": "Pergalê bi kar bîne", - "really_dark": "Tarî", - "sorta_dark": "Hinekî tarî", - "light": "Ronahî" - }, - "notifications": { - "title": "Agahdarî", - "favorites": "Şandiyên min hez kir", - "follows": "Min dişopîne", - "boosts": "Şandiya min ji nû ve nivîsand", - "mentions": "Qale min kir", - "trigger": { - "anyone": "her kes", - "follower": "şopînerek", - "follow": "her kesê ku dişopînim", - "noone": "ne yek", - "title": "Min agahdar bike gava" - } - }, - "preference": { - "title": "Sazkarî", - "true_black_dark_mode": "Moda tarî ya reş a rastîn", - "disable_avatar_animation": "Avatarên anîmasyonî neçalak bike", - "disable_emoji_animation": "Emojiyên anîmasyonî neçalak bike", - "using_default_browser": "Ji bo vekirina girêdanan geroka berdest bi kar bîne", - "open_links_in_mastodon": "Girêdanan di Mastodon de veke" - }, - "boring_zone": { - "title": "Devera acizker", - "account_settings": "Sazkariyên ajimêr", - "terms": "Mercên bikaranînê", - "privacy": "Polîtikaya nihêniyê" - }, - "spicy_zone": { - "title": "Devera germ", - "clear": "Pêşbîra medyayê pak bike", - "signout": "Derkeve" - } - }, - "footer": { - "mastodon_description": "Mastodon nermalava çavkaniya vekirî ye. Tu dikarî pirsgirêkan li ser GitHub-ê ragihînî di %s (%s) de" - }, - "keyboard": { - "close_settings_window": "Sazkariyên çarçoveyê bigire" - } - }, - "report": { - "title_report": "Ragihandin", - "title": "%s ragihîne", - "step1": "Gav 1 ji 2", - "step2": "Gav 2 ji 2", - "content1": "Şandiyên din hene ku tu dixwazî tevlî ragihandinê bikî?", - "content2": "Derbarê vê ragihandinê de tiştek heye ku divê çavdêr bizanin?", - "report_sent_title": "Spas ji bo ragihandina te, em ê binirxînin.", - "send": "Ragihandinê bişîne", - "skip_to_send": "Bêyî şirove bişîne", - "text_placeholder": "Şiroveyên daxwazkirê binivîsine an jî pê ve bike", - "reported": "HATE RAGIHANDIN", - "step_one": { - "step_1_of_4": "Gav 1 ji 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "Ez jê hez nakim", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "Ew spam e", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Gav 2 ji 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "Tenê ez jê hez nakim" - }, - "step_three": { - "step_3_of_4": "Gav 3 ji 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Gav 4 ji 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Tu naxwazî vê bibînî?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Neşopîne", - "unfollowed": "Ji şopê hate derketin", - "unfollow_user": "%s neşopîne", - "mute_user": "%s bêdeng bike", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "%s asteng bike", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Pêşdîtin bigire", - "show_next": "A pêş nîşan bide", - "show_previous": "A paş nîşan bide" - } - }, - "account_list": { - "tab_bar_hint": "Profîla hilbijartî ya niha: %s. Du caran bitikîne û paşê dest bide ser da ku guhêrbara ajimêr were nîşandan", - "dismiss_account_switcher": "Guherkera ajimêrê paş guh bike", - "add_account": "Ajimêr tevlî bike" - }, - "wizard": { - "new_in_mastodon": "Nû di Mastodon de", - "multiple_account_switch_intro_description": "Dest bide ser bişkoja profîlê da ku di navbera gelek ajimêrann de biguherînî.", - "accessibility_hint": "Du caran bitikîne da ku çarçoveyahilpekok ji holê rakî" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/kmr_TR/ios-infoPlist.json b/Localization/StringsConvertor/input/kmr_TR/ios-infoPlist.json deleted file mode 100644 index cdb286c00..000000000 --- a/Localization/StringsConvertor/input/kmr_TR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Bo kişandina wêneyê ji bo rewşa şandiyan tê bikaranîn", - "NSPhotoLibraryAddUsageDescription": "Ji bo tomarkirina wêneyê di pirtûkxaneya wêneyan de tê bikaranîn", - "NewPostShortcutItemTitle": "Şandiya nû", - "SearchShortcutItemTitle": "Bigere" -} diff --git a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict deleted file mode 100644 index c5ecb53b3..000000000 --- a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 게시물 - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 미디어 %ld개 - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 개의 즐겨찾기 - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 개의 리블로그 - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 개의 투표 - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld명의 투표자 - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 명이 말하고 있음 - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/ko_KR/app.json b/Localization/StringsConvertor/input/ko_KR/app.json deleted file mode 100644 index d4819afea..000000000 --- a/Localization/StringsConvertor/input/ko_KR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "다시 시도해주세요.", - "please_try_again_later": "나중에 다시 시도해 주세요" - }, - "sign_up_failure": { - "title": "가입 실패" - }, - "server_error": { - "title": "서버 오류" - }, - "vote_failure": { - "title": "투표 실패", - "poll_ended": "투표가 끝났습니다" - }, - "discard_post_content": { - "title": "초안 버리기", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "게시 실패", - "message": "글을 게시하는데 실패했습니다.\n인터넷 연결을 확인해 주세요.", - "attachments_message": { - "video_attach_with_photo": "이미 그림이 첨부된 글에는 영상을 첨부할 수 없습니다.", - "more_than_one_video": "영상은 한 개까지만 첨부할 수 있습니다." - } - }, - "edit_profile_failure": { - "title": "프로필 수정 오류", - "message": "프로필을 수정할 수 없습니다. 다시 시도해 주세요." - }, - "sign_out": { - "title": "로그아웃", - "message": "정말로 로그아웃 하시겠습니까?", - "confirm": "로그아웃" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "도메인 차단" - }, - "save_photo_failure": { - "title": "사진 저장 실패", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "정말로 이 게시물을 삭제하시겠습니까?", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "캐시 삭제", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "뒤로가기", - "next": "다음", - "previous": "이전", - "open": "열기", - "add": "추가", - "remove": "삭제", - "edit": "수정", - "save": "저장", - "ok": "확인", - "done": "완료", - "confirm": "확인", - "continue": "계속", - "compose": "Compose", - "cancel": "취소", - "discard": "버리기", - "try_again": "다시 시도", - "take_photo": "사진 촬영", - "save_photo": "사진 저장", - "copy_photo": "사진 복사", - "sign_in": "로그인", - "sign_up": "회원가입", - "see_more": "더 보기", - "preview": "미리보기", - "share": "공유", - "share_user": "%s를 공유", - "share_post": "게시물 공유", - "open_in_safari": "사파리에서 열기", - "open_in_browser": "Open in Browser", - "find_people": "팔로우 할 사람들 찾기", - "manually_search": "대신 수동으로 검색하기", - "skip": "건너뛰기", - "reply": "답장", - "report_user": "%s 신고하기", - "block_domain": "%s 차단하기", - "unblock_domain": "%s 차단 해제", - "settings": "설정", - "delete": "삭제" - }, - "tabs": { - "home": "홈", - "search": "검색", - "notification": "알림", - "profile": "프로필" - }, - "keyboard": { - "common": { - "switch_to_tab": "%s로 전환", - "compose_new_post": "새 글 작성", - "show_favorites": "즐겨찾기 보이기", - "open_settings": "설정 열기" - }, - "timeline": { - "previous_status": "이전 글", - "next_status": "다음 글", - "open_status": "게시물 열기", - "open_author_profile": "작성자의 프로필 열기", - "open_reblogger_profile": "리블로거의 프로필 열기", - "reply_status": "게시물에 답장", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "이미지 미리보기" - }, - "segmented_control": { - "previous_section": "이전 구역", - "next_section": "다음 구역" - } - }, - "status": { - "user_reblogged": "%s 님이 리블로그 하였습니다", - "user_replied_to": "%s 님에게 답장", - "show_post": "게시물 보기", - "show_user_profile": "사용자 프로필 보기", - "content_warning": "열람 주의", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "투표", - "closed": "마감" - }, - "actions": { - "reply": "답글", - "reblog": "리블로그", - "unreblog": "리블로그 취소", - "favorite": "즐겨찾기", - "unfavorite": "즐겨찾기 해제", - "menu": "메뉴", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "멘션", - "link": "링크", - "hashtag": "해시태그", - "email": "이메일", - "emoji": "에모지" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "팔로우", - "following": "팔로잉", - "request": "요청", - "pending": "대기중", - "block": "차단", - "block_user": "%s 차단", - "block_domain": "%s 차단", - "unblock": "차단 해제", - "unblock_user": "%s 차단 해제", - "blocked": "차단됨", - "mute": "뮤트", - "mute_user": "%s 뮤트", - "unmute": "뮤트 해제", - "unmute_user": "%s 뮤트 해제", - "muted": "뮤트됨", - "edit_info": "정보 편집" - }, - "timeline": { - "filtered": "필터됨", - "timestamp": { - "now": "지금" - }, - "loader": { - "load_missing_posts": "빈 게시물 불러오기", - "loading_missing_posts": "빈 게시물 불러오는 중…", - "show_more_replies": "답글 더 보기" - }, - "header": { - "no_status_found": "게시물이 없습니다", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "이 사용자는 정지된 상태입니다.", - "user_suspended_warning": "%s의 계정은 정지된 상태입니다." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "소셜 네트워킹을\n여러분의 손에 돌려드립니다.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "서버를 고르세요,\n아무 서버나 좋습니다.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "모두", - "all_accessiblity_description": "분류: 전체", - "academia": "학술", - "activism": "사회운동", - "food": "음식", - "furry": "수인", - "games": "게임", - "general": "일반", - "journalism": "언론", - "lgbt": "성소수자", - "regional": "지역", - "art": "예술", - "music": "음악", - "tech": "기술" - }, - "see_less": "간략히 보기", - "see_more": "더 보기" - }, - "label": { - "language": "언어", - "users": "사용자", - "category": "분류" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "결과 없음" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "삭제" - }, - "username": { - "placeholder": "사용자명", - "duplicate_prompt": "이 사용자명은 이미 사용중입니다." - }, - "display_name": { - "placeholder": "표시되는 이름" - }, - "email": { - "placeholder": "이메일" - }, - "password": { - "placeholder": "암호", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "암호는 최소 8글자 이상이어야 합니다" - }, - "invite": { - "registration_user_invite_request": "가입하려는 이유가 무엇인가요?" - } - }, - "error": { - "item": { - "username": "사용자명", - "email": "이메일", - "password": "암호", - "agreement": "Agreement", - "locale": "지역설정", - "reason": "사유" - }, - "reason": { - "blocked": "%s는 허용되지 않은 이메일 제공자를 포함합니다", - "unreachable": "%s는 존재하지 않는 것 같습니다", - "taken": "%s는 이미 사용 중입니다", - "reserved": "%s는 예약된 키워드입니다", - "accepted": "%s는 반드시 동의해야 합니다", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "동의합니다" - } - }, - "confirm_email": { - "title": "마지막으로.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "오프라인", - "new_posts": "새 글 보기", - "published": "게시됨!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "시각장애인을 위한 사진 설명…", - "description_video": "시각장애인을 위한 영상 설명…" - }, - "poll": { - "duration_time": "기간: %s", - "thirty_minutes": "30분", - "one_hour": "1시간", - "six_hours": "6시간", - "one_day": "1일", - "three_days": "3일", - "seven_days": "7일", - "option_number": "옵션 %ld" - }, - "content_warning": { - "placeholder": "정확한 경고 문구를 여기에 작성하세요…" - }, - "visibility": { - "public": "공개", - "unlisted": "비표시", - "private": "팔로워 전용", - "direct": "내가 멘션한 사람만" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "첨부파일 추가", - "append_poll": "투표 추가", - "remove_poll": "투표 삭제", - "custom_emoji_picker": "커스텀 에모지 선택기", - "enable_content_warning": "열람 주의 설정", - "disable_content_warning": "열람 주의 해제", - "post_visibility_menu": "게시물 공개범위 메뉴" - }, - "keyboard": { - "discard_post": "글 버리기", - "publish_post": "게시", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "게시물", - "following": "팔로잉", - "followers": "팔로워" - }, - "fields": { - "add_row": "행 추가", - "placeholder": { - "label": "라벨", - "content": "내용" - } - }, - "segmented_control": { - "posts": "게시물", - "replies": "답글", - "posts_and_replies": "Posts and Replies", - "media": "미디어", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "계정 뮤트 해제", - "message": "%s 뮤트 해제 확인" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "검색", - "search_bar": { - "placeholder": "해시태그와 사용자 검색", - "cancel": "취소" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "설정", - "true_black_dark_mode": "트루 블랙 어두운 모드", - "disable_avatar_animation": "움직이는 아바타 비활성화", - "disable_emoji_animation": "움직이는 에모지 비활성화", - "using_default_browser": "기본 브라우저로 링크 열기", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "지루한 영역", - "account_settings": "계정 설정", - "terms": "서비스 약관", - "privacy": "개인정보 정책" - }, - "spicy_zone": { - "title": "매운 영역", - "clear": "미디어 캐시 삭제", - "signout": "로그아웃" - } - }, - "footer": { - "mastodon_description": "마스토돈은 오픈소스 소프트웨어입니다. Github의 %s (%s)에서 문제를 보고할 수 있습니다." - }, - "keyboard": { - "close_settings_window": "설정 창 닫기" - } - }, - "report": { - "title_report": "Report", - "title": "%s 신고하기", - "step1": "1단계 (총 2단계)", - "step2": "2단계 (총 2단계)", - "content1": "신고에 추가하고 싶은 다른 게시물이 존재하나요?", - "content2": "이 신고에 대해 중재자들이 알아야 할 것이 있나요?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "신고 전송", - "skip_to_send": "추가설명 없이 보내기", - "text_placeholder": "추가 설명을 적거나 붙여넣으세요", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "서버의 중재자들이 이것을 심사하는 동안, 당신은 %s에 대한 행동을 취할 수 있습니다" - } - }, - "preview": { - "keyboard": { - "close_preview": "미리보기 닫기", - "show_next": "다음 보기", - "show_previous": "이전 보기" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ko_KR/ios-infoPlist.json b/Localization/StringsConvertor/input/ko_KR/ios-infoPlist.json deleted file mode 100644 index 1b073eb0f..000000000 --- a/Localization/StringsConvertor/input/ko_KR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "갤러리에 사진을 저장하기 위해 쓰임", - "NewPostShortcutItemTitle": "새 글", - "SearchShortcutItemTitle": "검색" -} diff --git a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict b/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict deleted file mode 100644 index e6f9353de..000000000 --- a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Invoer limiet overschrijdt %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 teken - other - %ld tekens - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Invoerlimiet blijft %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 teken - other - %ld tekens - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - bericht - other - berichten - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 bericht - other - %ld berichten - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favoriet - other - %ld favorieten - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 gedeeld bericht - other - %ld gedeelde berichten - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 stem - other - %ld stemmen - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 kiezer - other - %ld kiezers - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 gebruiker die praat - other - %ld gebruikers die praten - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 volgend - other - %ld volgend - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 volger - other - %ld volgers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 jaar resterend - other - %ld jaren resterend - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 maanden resterend - other - %ld maanden resterend - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dag resterend - other - %ld dagen resterend - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 uur resterend - other - %ld uur resterend - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuut resterend - other - %ld minuten resterend - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seconde resterend - other - %ld seconden resterend - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/nl_NL/app.json b/Localization/StringsConvertor/input/nl_NL/app.json deleted file mode 100644 index e4844f83d..000000000 --- a/Localization/StringsConvertor/input/nl_NL/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Probeer het opnieuw.", - "please_try_again_later": "Probeer het later nog eens." - }, - "sign_up_failure": { - "title": "Registratiefout" - }, - "server_error": { - "title": "Serverfout" - }, - "vote_failure": { - "title": "Stemmen Mislukt", - "poll_ended": "De peiling is beëindigd" - }, - "discard_post_content": { - "title": "Verwijder concept", - "message": "Bevestig het verwijderen van het concept bericht." - }, - "publish_post_failure": { - "title": "Publicatiefout", - "message": "Het publiceren van het bericht is mislukt. Controleer je internetverbinding.", - "attachments_message": { - "video_attach_with_photo": "Een video kan niet aan een bericht met afbeeldingen worden gekoppeld.", - "more_than_one_video": "Kan niet meer dan één video toevoegen." - } - }, - "edit_profile_failure": { - "title": "Profiel bewerken mislukt", - "message": "Je profiel kan niet bewerkt worden. Probeer het opnieuw." - }, - "sign_out": { - "title": "Log-uit", - "message": "Weet je zeker dat je wilt uitloggen?", - "confirm": "Log-uit" - }, - "block_domain": { - "title": "Weet je het echt heel erg zeker dat je alles van %s wilt negeren? In de meeste gevallen is het blokkeren of negeren van een paar specifieke personen voldoende. Je zult geen berichten van deze server op openbare tijdlijnen zien of in jouw meldingen. Jouw volgers van deze server worden verwijderd.", - "block_entire_domain": "Blokkeer domein" - }, - "save_photo_failure": { - "title": "Foto Opslaan Mislukt", - "message": "Geef toestemming om de foto op te slaan." - }, - "delete_post": { - "title": "Verwijder Bericht", - "message": "Weet je zeker dat je dit bericht wilt verwijderen?" - }, - "clean_cache": { - "title": "Cache-geheugen Wissen", - "message": "Cache-geheugen (%s) succesvol gewist." - } - }, - "controls": { - "actions": { - "back": "Terug", - "next": "Volgende", - "previous": "Vorige", - "open": "Open", - "add": "Voeg toe", - "remove": "Verwijder", - "edit": "Bewerk", - "save": "Bewaar", - "ok": "Ok", - "done": "Klaar", - "confirm": "Bevestigen", - "continue": "Ga verder", - "compose": "Schrijf bericht", - "cancel": "Annuleer", - "discard": "Weggooien", - "try_again": "Probeer Opnieuw", - "take_photo": "Maak foto", - "save_photo": "Bewaar foto", - "copy_photo": "Kopieer foto", - "sign_in": "Aanmelden", - "sign_up": "Registreren", - "see_more": "Meer", - "preview": "Voorvertoning", - "share": "Deel", - "share_user": "Delen %s", - "share_post": "Deel bericht", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in browser", - "find_people": "Zoek mensen om te volgen", - "manually_search": "Handmatig zoeken", - "skip": "Overslaan", - "reply": "Reageer", - "report_user": "Rapporteer %s", - "block_domain": "Blokkeer %s", - "unblock_domain": "Deblokkeer %s", - "settings": "Instellingen", - "delete": "Verwijder" - }, - "tabs": { - "home": "Start", - "search": "Zoek", - "notification": "Melding", - "profile": "Profiel" - }, - "keyboard": { - "common": { - "switch_to_tab": "Overschakelen naar %s", - "compose_new_post": "Nieuw Bericht Opstellen", - "show_favorites": "Favorieten Weergeven", - "open_settings": "Open Instellingen" - }, - "timeline": { - "previous_status": "Vorig Bericht", - "next_status": "Volgend Bericht", - "open_status": "Open Bericht", - "open_author_profile": "Open Auteursprofiel", - "open_reblogger_profile": "Open Delersprofiel", - "reply_status": "Reageer", - "toggle_reblog": "Delen bij berichten omschakelen", - "toggle_favorite": "Favoriet in-/uitschakelen bij Post", - "toggle_content_warning": "Inhoudswaarschuwing", - "preview_image": "Voorvertoning Afbeelding" - }, - "segmented_control": { - "previous_section": "Vorige Sectie", - "next_section": "Volgende Sectie" - } - }, - "status": { - "user_reblogged": "%s heeft gedeeld", - "user_replied_to": "Reactie op %s", - "show_post": "Toon Bericht", - "show_user_profile": "Toon Gebruikersprofiel", - "content_warning": "Inhoudswaarschuwing", - "sensitive_content": "Gevoelige inhoud", - "media_content_warning": "Tap hier om te tonen", - "tap_to_reveal": "Tik om te onthullen", - "poll": { - "vote": "Stemmen", - "closed": "Gesloten" - }, - "actions": { - "reply": "Reageren", - "reblog": "Delen", - "unreblog": "Delen ongedaan maken", - "favorite": "Toevoegen aan Favorieten", - "unfavorite": "Verwijderen uit Favorieten", - "menu": "Menu", - "hide": "Verberg", - "show_image": "Toon afbeelding", - "show_gif": "GIF weergeven", - "show_video_player": "Toon videospeler", - "tap_then_hold_to_show_menu": "Tik en houd vast om menu te tonen" - }, - "tag": { - "url": "URL", - "mention": "Vermelden", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Iedereen kan dit bericht zien maar het wordt niet in de publieke tijdlijn getoond.", - "private": "Alleen hun volgers kunnen dit bericht zien.", - "private_from_me": "Alleen mijn volgers kunnen dit bericht zien.", - "direct": "Alleen de vermelde persoon kan dit bericht zien." - } - }, - "friendship": { - "follow": "Volgen", - "following": "Gevolgd", - "request": "Verzoeken", - "pending": "In afwachting", - "block": "Blokkeren", - "block_user": "Blokkeer %s", - "block_domain": "Blokkeer %s", - "unblock": "Deblokkeer", - "unblock_user": "Deblokkeer %s", - "blocked": "Geblokkeerd", - "mute": "Negeren", - "mute_user": "Negeer %s", - "unmute": "Niet langer negeren", - "unmute_user": "%s niet langer negeren", - "muted": "Genegeerd", - "edit_info": "Bewerken" - }, - "timeline": { - "filtered": "Gefilterd", - "timestamp": { - "now": "Nu" - }, - "loader": { - "load_missing_posts": "Resterende berichten laden", - "loading_missing_posts": "Resterende berichten laden...", - "show_more_replies": "Toon meer reacties" - }, - "header": { - "no_status_found": "Geen Berichten Gevonden", - "blocking_warning": "U kunt het profiel van deze geblokkeerde gebruiker niet bekijken.\nUw profiel ziet er zo uit voor hen.", - "user_blocking_warning": "U kunt het profiel van %s niet bekijken zolang deze gebruiker geblokkeerd is.\nUw profiel ziet er zo uit voor hen.", - "blocked_warning": "U kunt het profiel van deze gebruiker niet bekijken zolang u geblokkeerd bent.", - "user_blocked_warning": "U kunt het profiel van %s niet bekijken zolang u geblokkeerd bent.", - "suspended_warning": "Deze gebruiker is geschorst.", - "user_suspended_warning": "%s's account is geschorst." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Sociale media terug in uw handen.", - "get_started": "Aan de slag", - "log_in": "Log in" - }, - "server_picker": { - "title": "Kies een server, welke dan ook.", - "subtitle": "Kies een gemeenschap gebaseerd op jouw interesses, regio of een algemeen doel.", - "subtitle_extend": "Kies een gemeenschap gebaseerd op jouw interesses, regio, of een algemeen doel. Elke gemeenschap wordt beheerd door een volledig onafhankelijke organisatie of individu.", - "button": { - "category": { - "all": "Alles", - "all_accessiblity_description": "Categorie: Alles", - "academia": "academisch", - "activism": "activisme", - "food": "eten", - "furry": "furry", - "games": "spellen", - "general": "algemeen", - "journalism": "journalistiek", - "lgbt": "lgbt", - "regional": "regionaal", - "art": "kunst", - "music": "muziek", - "tech": "technologie" - }, - "see_less": "Minder Weergeven", - "see_more": "Meer Weergeven" - }, - "label": { - "language": "TAAL", - "users": "GEBRUIKERS", - "category": "CATEGORIE" - }, - "input": { - "placeholder": "Zoek uw server of sluit u bij een nieuwe server aan...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Beschikbare servers zoeken...", - "bad_network": "Er is een fout opgetreden bij het laden van de gegevens. Controleer uw internetverbinding.", - "no_results": "Geen resultaten" - } - }, - "register": { - "title": "Vertel ons over uzelf.", - "input": { - "avatar": { - "delete": "Verwijderen" - }, - "username": { - "placeholder": "gebruikersnaam", - "duplicate_prompt": "Deze gebruikersnaam is al in gebruik." - }, - "display_name": { - "placeholder": "weergavenaam" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "wachtwoord", - "require": "Je wachtwoord moet ten minste:", - "character_limit": "8 tekens", - "accessibility": { - "checked": "ingeschakeld", - "unchecked": "uitgeschakeld" - }, - "hint": "Uw wachtwoord moet ten minste acht tekens bevatten" - }, - "invite": { - "registration_user_invite_request": "Waarom wil u zich hier registreren?" - } - }, - "error": { - "item": { - "username": "Gebruikersnaam", - "email": "Email", - "password": "Wachtwoord", - "agreement": "Overeenkomst", - "locale": "Taal", - "reason": "Reden" - }, - "reason": { - "blocked": "%s gebruikt een niet-toegestane emailprovider", - "unreachable": "%s lijkt niet te bestaan", - "taken": "%s is reeds in gebruik", - "reserved": "%s is een gereserveerd woord", - "accepted": "%s moet geaccepteerd worden", - "blank": "%s is vereist", - "invalid": "%s is ongeldig", - "too_long": "%s is te lang", - "too_short": "%s is te kort", - "inclusion": "%s is een niet-ondersteunde waarde" - }, - "special": { - "username_invalid": "Een gebruikersnaam mag alleen alfanumerieke karakters en lage streepjes bevatten", - "username_too_long": "De gebruikersnaam is te lang (het kan maximaal 30 karakters bevatten)", - "email_invalid": "Dit is geen geldig emailadres", - "password_too_short": "Het wachtwoord is te kort (het moet ten minste 8 tekens bevatten)" - } - } - }, - "server_rules": { - "title": "Enkele basisregels.", - "subtitle": "Deze regels zijn ingesteld door de beheerders van %s.", - "prompt": "Als u verder gaat dan gaat u akkoord met de servicevoorwaarden en privacybeleid van %s.", - "terms_of_service": "servicevoorwaarden", - "privacy_policy": "privacybeleid", - "button": { - "confirm": "Ik Ga Akkoord" - } - }, - "confirm_email": { - "title": "Nog één ding.", - "subtitle": "We hebben een e-mail gestuurd naar %s,\nklik op de link om uw account te bevestigen.", - "button": { - "open_email_app": "Email Openen", - "resend": "Verstuur opnieuw" - }, - "dont_receive_email": { - "title": "Controleer uw emailadres", - "description": "Controleer of uw emailadres correct is en of the email in de ongewenste email filter terecht is gekomen.", - "resend_email": "Email Opnieuw Versturen" - }, - "open_email_app": { - "title": "Ga naar uw inbox.", - "description": "We hebben u een e-mail gestuurd. Controleer ook uw de ongewenste email filter.", - "mail": "Mail", - "open_email_client": "Open Email Applicatie" - } - }, - "home_timeline": { - "title": "Start", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "Bekijk nieuwe berichten", - "published": "Gepubliceerd!", - "Publishing": "Bericht publiceren...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Zoek Mensen om te Volgen", - "follow_explain": "Wanneer u iemand volgt, ziet u hun berichten op de startpagina." - }, - "compose": { - "title": { - "new_post": "Nieuw Bericht", - "new_reply": "Nieuwe Reactie" - }, - "media_selection": { - "camera": "Foto Maken", - "photo_library": "Fotobibliotheek", - "browse": "Bladeren" - }, - "content_input_placeholder": "Schrijf of plak wat in je hoofd rondzweeft", - "compose_action": "Publiceren", - "replying_to_user": "reageren op %s", - "attachment": { - "photo": "foto", - "video": "video", - "attachment_broken": "Deze %s is corrupt en kan niet geüpload worden naar Mastodon.", - "description_photo": "Omschrijf de foto voor mensen met een visuele beperking...", - "description_video": "Omschrijf de video voor mensen met een visuele beperking..." - }, - "poll": { - "duration_time": "Duur: %s", - "thirty_minutes": "30 minuten", - "one_hour": "1 Uur", - "six_hours": "6 Uur", - "one_day": "1 Dag", - "three_days": "3 Dagen", - "seven_days": "7 Dagen", - "option_number": "Optie %ld" - }, - "content_warning": { - "placeholder": "Schrijf hier een nauwkeurige waarschuwing..." - }, - "visibility": { - "public": "Openbaar", - "unlisted": "Niet-vermeld", - "private": "Alleen volgers", - "direct": "Alleen vermelde gebruikers" - }, - "auto_complete": { - "space_to_add": "Spaties toe te voegen" - }, - "accessibility": { - "append_attachment": "Bijlage Toevoegen", - "append_poll": "Peiling Toevoegen", - "remove_poll": "Peiling verwijderen", - "custom_emoji_picker": "Eigen Emojikiezer", - "enable_content_warning": "Inhoudswaarschuwing inschakelen", - "disable_content_warning": "Inhoudswaarschuwing Uitschakelen", - "post_visibility_menu": "Berichtzichtbaarheidsmenu" - }, - "keyboard": { - "discard_post": "Bericht Verwijderen", - "publish_post": "Bericht Publiceren", - "toggle_poll": "Peiling omschakelen", - "toggle_content_warning": "Inhoudswaarschuwing Omschakelen", - "append_attachment_entry": "Bijlage Toevoegen - %s", - "select_visibility_entry": "Zichtbaarheid Selecteren - %s" - } - }, - "profile": { - "dashboard": { - "posts": "berichten", - "following": "volgend", - "followers": "volgers" - }, - "fields": { - "add_row": "Rij Toevoegen", - "placeholder": { - "label": "Etiket", - "content": "Inhoud" - } - }, - "segmented_control": { - "posts": "Berichten", - "replies": "Reacties", - "posts_and_replies": "Berichten en reacties", - "media": "Media", - "about": "Informatie" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Negeer account", - "message": "Bevestig om %s te negeren" - }, - "confirm_unmute_user": { - "title": "Account Negeren", - "message": "Bevestig om %s te negeren" - }, - "confirm_block_user": { - "title": "Blokkeer account", - "message": "Bevestig om %s te blokkeren" - }, - "confirm_unblock_user": { - "title": "Deblokkeer Account", - "message": "Bevestig om %s te deblokkeren" - } - }, - "accessibility": { - "show_avatar_image": "Toon avatar-afbeelding", - "edit_avatar_image": "Bewerk avatar-afbeelding", - "show_banner_image": "Toon banner-afbeelding", - "double_tap_to_open_the_list": "Dubbel tikken om de lijst te openen" - } - }, - "follower": { - "footer": "Volgers van andere servers worden niet weergegeven." - }, - "following": { - "footer": "Volgers van andere servers worden niet weergegeven." - }, - "search": { - "title": "Zoeken", - "search_bar": { - "placeholder": "Zoek hashtags en gebruikers", - "cancel": "Annuleren" - }, - "recommend": { - "button_text": "Alles weergeven", - "hash_tag": { - "title": "Trending op Mastodon", - "description": "Hashtags die behoorlijk wat aandacht krijgen", - "people_talking": "%s gebruikers praten hierover" - }, - "accounts": { - "title": "Interessante accounts voor u", - "description": "Misschien dat u geïnteresseerd bent in deze accounts", - "follow": "Volgen" - } - }, - "searching": { - "segment": { - "all": "Alles", - "people": "Gebruikers", - "hashtags": "Hashtags", - "posts": "Berichten" - }, - "empty_state": { - "no_results": "Geen resultaten" - }, - "recent_search": "Recente zoekopdrachten", - "clear": "Wissen" - } - }, - "discovery": { - "tabs": { - "posts": "Berichten", - "hashtags": "Hashtags", - "news": "Nieuws", - "community": "Community", - "for_you": "Voor jou" - }, - "intro": "Dit zijn de berichten die populair zijn in jouw Mastodon-kringen." - }, - "favorite": { - "title": "Uw favorieten" - }, - "notification": { - "title": { - "Everything": "Alles", - "Mentions": "Vermeldingen" - }, - "notification_description": { - "followed_you": "volgt je", - "favorited_your_post": "heeft je bericht als favoriet gemrkeerd", - "reblogged_your_post": "deelde je bericht", - "mentioned_you": "noemde je", - "request_to_follow_you": "verzoek je te volgen", - "poll_has_ended": "de peiling is beëindigd" - }, - "keyobard": { - "show_everything": "Alles weergeven", - "show_mentions": "Vermeldingen weergeven" - } - }, - "thread": { - "back_title": "Bericht", - "title": "Bericht van %s" - }, - "settings": { - "title": "Instellingen", - "section": { - "appearance": { - "title": "Uiterlijk", - "automatic": "Automatisch", - "light": "Altijd Licht", - "dark": "Altijd Donker" - }, - "look_and_feel": { - "title": "Opmaak", - "use_system": "Gebruik systeem", - "really_dark": "Echt donker", - "sorta_dark": "Donker", - "light": "Licht" - }, - "notifications": { - "title": "Meldingen", - "favorites": "Mijn bericht als favoriet toevoegt", - "follows": "Mij volgt", - "boosts": "Mijn bericht deelt", - "mentions": "Mij vermeldt", - "trigger": { - "anyone": "iemand", - "follower": "een volger", - "follow": "iemand die ik volg", - "noone": "niemand", - "title": "Stuur mij een melding wanneer" - } - }, - "preference": { - "title": "Instellingen", - "true_black_dark_mode": "Echt zwarte donker uiterlijk", - "disable_avatar_animation": "Geanimeerde avatars uitschakelen", - "disable_emoji_animation": "Geanimeerde emojis uitschakelen", - "using_default_browser": "Gebruik de standaard browser om links te openen", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "De Saaie Instellingen", - "account_settings": "Accountinstellingen", - "terms": "Servicevoorwaarden", - "privacy": "Privacybeleid" - }, - "spicy_zone": { - "title": "De Gevaarlijke Instellingen", - "clear": "Mediacache wissen", - "signout": "Afmelden" - } - }, - "footer": { - "mastodon_description": "Mastodon is vrije software. Je kunt problemen melden op GitHub via %s (%s)" - }, - "keyboard": { - "close_settings_window": "Instellingsvenster Sluiten" - } - }, - "report": { - "title_report": "Rapporteer", - "title": "Rapporteer %s", - "step1": "Stap 1 van 2", - "step2": "Stap 2 van 2", - "content1": "Zijn er nog meer berichten die u aan het rapport wilt toevoegen?", - "content2": "Is er iets anders over dit rapport dat de moderators zouden moeten weten?", - "report_sent_title": "Bedankt voor het rapporteren, we zullen hiernaar kijken.", - "send": "Stuur rapport", - "skip_to_send": "Verstuur zonder opmerkingen", - "text_placeholder": "Schrijf of plak aanvullende opmerkingen", - "reported": "Gerapporteerd", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Voorbeeldweergave Sluiten", - "show_next": "Volgende", - "show_previous": "Vorige" - } - }, - "account_list": { - "tab_bar_hint": "Huidige geselecteerde profiel: %s. Dubbel-tik en houd vast om account te wisselen", - "dismiss_account_switcher": "Annuleer account wisselen", - "add_account": "Voeg account toe" - }, - "wizard": { - "new_in_mastodon": "Nieuw in Mastodon", - "multiple_account_switch_intro_description": "Schakel tussen meerdere accounts door de profielknop in te drukken en vast te houden.", - "accessibility_hint": "Tik tweemaal om het popup-scherm te sluiten" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/nl_NL/ios-infoPlist.json b/Localization/StringsConvertor/input/nl_NL/ios-infoPlist.json deleted file mode 100644 index 66b6a9571..000000000 --- a/Localization/StringsConvertor/input/nl_NL/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Gebruikt om foto's te nemen voor je berichten", - "NSPhotoLibraryAddUsageDescription": "Gebruikt om foto's op te slaan in de fotobibliotheek", - "NewPostShortcutItemTitle": "Nieuw Bericht", - "SearchShortcutItemTitle": "Zoek" -} diff --git a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict deleted file mode 100644 index 688ee2b14..000000000 --- a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificação não lida - other - %ld notificações não lidas - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Limite de caracteres excedido %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carácter - other - %ld caracteres - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Limite de caracteres continua excedido %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 carácter - other - %ld caracteres - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 toot - other - %ld toots - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorito - other - %ld favoritos - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 resposta - other - %ld respostas - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld votos - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votantes - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 pessoa falando - other - %ld pessoas falando - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguindo - other - %ld seguindo - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidor - other - %ld seguidores - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ano restante - other - %ld anos restantes - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mês restante - other - %ld meses restantes - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dia restante - other - %ld dias restantes - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hora restante - other - %ld horas restantes - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto restante - other - %ld minutos restantes - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 segundo restante - other - %ld segundos restantes - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ano atrás - other - %ldy anos atrás - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mês atrás - other - %ldM meses atrás - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dia atrás - other - %ldd dias atrás - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h atrás - other - %ldh horas atrás - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Há 1 min - other - Há %ldm minutos - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Há 1 segundo - other - Há %lds segundos - - - - diff --git a/Localization/StringsConvertor/input/pt_BR/app.json b/Localization/StringsConvertor/input/pt_BR/app.json deleted file mode 100644 index d483e1895..000000000 --- a/Localization/StringsConvertor/input/pt_BR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Por favor tente novamente.", - "please_try_again_later": "Tente novamente mais tarde." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Erro do servidor" - }, - "vote_failure": { - "title": "Falha ao votar", - "poll_ended": "Essa enquete terminou" - }, - "discard_post_content": { - "title": "Deletar Rascunho", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Falha ao publicar", - "message": "Falha ao publicar o post.\nPor favor verifique a sua conexão de internet.", - "attachments_message": { - "video_attach_with_photo": "Não é possível adicionar um vídeo à um toot que já contém imagens.", - "more_than_one_video": "Não é possível adicionar mais de um vídeo." - } - }, - "edit_profile_failure": { - "title": "Falha ao atualizar perfil", - "message": "Não foi possível atualizar o perfil. Por favor tente novamente." - }, - "sign_out": { - "title": "Sair", - "message": "Você tem certeza que deseja sair?", - "confirm": "Sair" - }, - "block_domain": { - "title": "Você tem absoluta certeza de que quer bloquear todo %s? Na maioria dos casos é suficiente e preferível bloquear ou ignorar algumas contas específicas. Você não verá conteúdos desse domínio, e todos os seus seguidores desse domínio serão removidos.", - "block_entire_domain": "Bloquear Domínio" - }, - "save_photo_failure": { - "title": "Falha ao salvar foto", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Deletar Toot", - "message": "Você tem certeza que deseja deletar esse toot?" - }, - "clean_cache": { - "title": "Limpar Cache", - "message": "%s do cache removidos com sucesso." - } - }, - "controls": { - "actions": { - "back": "Voltar", - "next": "Próximo", - "previous": "Anterior", - "open": "Abrir", - "add": "Adicionar", - "remove": "Remover", - "edit": "Editar", - "save": "Salvar", - "ok": "OK", - "done": "Concluir", - "confirm": "Confirmar", - "continue": "Continuar", - "compose": "Compor", - "cancel": "Cancelar", - "discard": "Descartar", - "try_again": "Tente novamente", - "take_photo": "Take Photo", - "save_photo": "Salvar foto", - "copy_photo": "Copiar foto", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Compartilhar", - "share_user": "Compartilhar %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Responder", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/pt_BR/ios-infoPlist.json b/Localization/StringsConvertor/input/pt_BR/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/pt_BR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict deleted file mode 100644 index 80cfd3d62..000000000 --- a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorite - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/pt_PT/app.json b/Localization/StringsConvertor/input/pt_PT/app.json deleted file mode 100644 index 12dd1e030..000000000 --- a/Localization/StringsConvertor/input/pt_PT/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Please try again.", - "please_try_again_later": "Please try again later." - }, - "sign_up_failure": { - "title": "Sign Up Failure" - }, - "server_error": { - "title": "Server Error" - }, - "vote_failure": { - "title": "Vote Failure", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Discard Draft", - "message": "Confirm to discard composed post content." - }, - "publish_post_failure": { - "title": "Publish Failure", - "message": "Failed to publish the post.\nPlease check your internet connection.", - "attachments_message": { - "video_attach_with_photo": "Cannot attach a video to a post that already contains images.", - "more_than_one_video": "Cannot attach more than one video." - } - }, - "edit_profile_failure": { - "title": "Edit Profile Error", - "message": "Cannot edit profile. Please try again." - }, - "sign_out": { - "title": "Sign Out", - "message": "Are you sure you want to sign out?", - "confirm": "Sign Out" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Delete Post", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Open", - "add": "Add", - "remove": "Remove", - "edit": "Edit", - "save": "Save", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/pt_PT/ios-infoPlist.json b/Localization/StringsConvertor/input/pt_PT/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/pt_PT/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict b/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict deleted file mode 100644 index 457dcd5e1..000000000 --- a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict +++ /dev/null @@ -1,474 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - few - %ld unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - few - %ld characters - other - %ld characters - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Input limit remains %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 character - few - %ld characters - other - %ld characters - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - post - few - posts - other - posts - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - few - %ld media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 post - few - %ld posts - other - %ld posts - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorite - few - %ld favorites - other - %ld favorites - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reblog - few - %ld reblogs - other - %ld reblogs - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - few - %ld replies - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vote - few - %ld votes - other - %ld votes - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - few - %ld voters - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - few - %ld people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - few - %ld following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - few - %ld followers - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - few - %ld years left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - few - %ld months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - few - %ld days left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - few - %ld hours left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - few - %ld minutes left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - few - %ld seconds left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - few - %ldy ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - few - %ldM ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - few - %ldd ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - few - %ldh ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - few - %ldm ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - few - %lds ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/ro_RO/app.json b/Localization/StringsConvertor/input/ro_RO/app.json deleted file mode 100644 index e29dcc614..000000000 --- a/Localization/StringsConvertor/input/ro_RO/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Vă rugăm să încercaţi din nou.", - "please_try_again_later": "Vă rugăm să încercaţi din nou mai târziu." - }, - "sign_up_failure": { - "title": "Înregistrare Eșuată" - }, - "server_error": { - "title": "Eroare Server" - }, - "vote_failure": { - "title": "Eșec la vot", - "poll_ended": "The poll has ended" - }, - "discard_post_content": { - "title": "Șterge Schită", - "message": "Confirmă renunțarea la conținutul postării." - }, - "publish_post_failure": { - "title": "Eșec la publicare", - "message": "Datele nu au putut fi încărcate. Te rugăm să-ți verifici conexiunea la internet.", - "attachments_message": { - "video_attach_with_photo": "Nu se poate atașa un videoclip la o stare care conține deja imagini.", - "more_than_one_video": "Nu se poate ataşa mai mult de un videoclip." - } - }, - "edit_profile_failure": { - "title": "Eroare în editarea profilului", - "message": "Nu se poate edita profilul. Vă rugăm să încercaţi din nou." - }, - "sign_out": { - "title": "Deconectați-vă", - "message": "Sigur doriți să vă deconectați?", - "confirm": "Deconectați-vă" - }, - "block_domain": { - "title": "Are you really, really sure you want to block the entire %s? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed.", - "block_entire_domain": "Block Domain" - }, - "save_photo_failure": { - "title": "Save Photo Failure", - "message": "Please enable the photo library access permission to save the photo." - }, - "delete_post": { - "title": "Delete Post", - "message": "Are you sure you want to delete this post?" - }, - "clean_cache": { - "title": "Clean Cache", - "message": "Successfully cleaned %s cache." - } - }, - "controls": { - "actions": { - "back": "Back", - "next": "Next", - "previous": "Previous", - "open": "Deschide", - "add": "Add", - "remove": "Elimină", - "edit": "Edit", - "save": "Salvează", - "ok": "OK", - "done": "Done", - "confirm": "Confirm", - "continue": "Continue", - "compose": "Compose", - "cancel": "Cancel", - "discard": "Discard", - "try_again": "Try Again", - "take_photo": "Take Photo", - "save_photo": "Save Photo", - "copy_photo": "Copy Photo", - "sign_in": "Sign In", - "sign_up": "Sign Up", - "see_more": "See More", - "preview": "Preview", - "share": "Share", - "share_user": "Share %s", - "share_post": "Share Post", - "open_in_safari": "Open in Safari", - "open_in_browser": "Open in Browser", - "find_people": "Find people to follow", - "manually_search": "Manually search instead", - "skip": "Skip", - "reply": "Reply", - "report_user": "Report %s", - "block_domain": "Block %s", - "unblock_domain": "Unblock %s", - "settings": "Settings", - "delete": "Delete" - }, - "tabs": { - "home": "Home", - "search": "Search", - "notification": "Notification", - "profile": "Profile" - }, - "keyboard": { - "common": { - "switch_to_tab": "Switch to %s", - "compose_new_post": "Compose New Post", - "show_favorites": "Show Favorites", - "open_settings": "Open Settings" - }, - "timeline": { - "previous_status": "Previous Post", - "next_status": "Next Post", - "open_status": "Open Post", - "open_author_profile": "Open Author's Profile", - "open_reblogger_profile": "Open Reblogger's Profile", - "reply_status": "Reply to Post", - "toggle_reblog": "Toggle Reblog on Post", - "toggle_favorite": "Toggle Favorite on Post", - "toggle_content_warning": "Toggle Content Warning", - "preview_image": "Preview Image" - }, - "segmented_control": { - "previous_section": "Previous Section", - "next_section": "Next Section" - } - }, - "status": { - "user_reblogged": "%s reblogged", - "user_replied_to": "Replied to %s", - "show_post": "Show Post", - "show_user_profile": "Show user profile", - "content_warning": "Content Warning", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", - "poll": { - "vote": "Vote", - "closed": "Closed" - }, - "actions": { - "reply": "Reply", - "reblog": "Reblog", - "unreblog": "Undo reblog", - "favorite": "Favorite", - "unfavorite": "Unfavorite", - "menu": "Menu", - "hide": "Hide", - "show_image": "Show image", - "show_gif": "Show GIF", - "show_video_player": "Show video player", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" - }, - "tag": { - "url": "URL", - "mention": "Mention", - "link": "Link", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Follow", - "following": "Following", - "request": "Request", - "pending": "Pending", - "block": "Block", - "block_user": "Block %s", - "block_domain": "Block %s", - "unblock": "Unblock", - "unblock_user": "Unblock %s", - "blocked": "Blocked", - "mute": "Mute", - "mute_user": "Mute %s", - "unmute": "Unmute", - "unmute_user": "Unmute %s", - "muted": "Muted", - "edit_info": "Edit Info" - }, - "timeline": { - "filtered": "Filtered", - "timestamp": { - "now": "Now" - }, - "loader": { - "load_missing_posts": "Load missing posts", - "loading_missing_posts": "Loading missing posts...", - "show_more_replies": "Show more replies" - }, - "header": { - "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\nuntil you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\nuntil they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\nuntil they unblock you.", - "suspended_warning": "This user has been suspended.", - "user_suspended_warning": "%s’s account has been suspended." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Social networking\nback in your hands.", - "get_started": "Get Started", - "log_in": "Log In" - }, - "server_picker": { - "title": "Mastodon is made of users in different servers.", - "subtitle": "Pick a server based on your interests, region, or a general purpose one.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "All", - "all_accessiblity_description": "Category: All", - "academia": "academia", - "activism": "activism", - "food": "food", - "furry": "furry", - "games": "games", - "general": "general", - "journalism": "journalism", - "lgbt": "lgbt", - "regional": "regional", - "art": "art", - "music": "music", - "tech": "tech" - }, - "see_less": "See Less", - "see_more": "See More" - }, - "label": { - "language": "LANGUAGE", - "users": "USERS", - "category": "CATEGORY" - }, - "input": { - "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Finding available servers...", - "bad_network": "Something went wrong while loading the data. Check your internet connection.", - "no_results": "No results" - } - }, - "register": { - "title": "Let’s get you set up on %s", - "input": { - "avatar": { - "delete": "Delete" - }, - "username": { - "placeholder": "username", - "duplicate_prompt": "This username is taken." - }, - "display_name": { - "placeholder": "display name" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "password", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Your password needs at least eight characters" - }, - "invite": { - "registration_user_invite_request": "Why do you want to join?" - } - }, - "error": { - "item": { - "username": "Username", - "email": "Email", - "password": "Password", - "agreement": "Agreement", - "locale": "Locale", - "reason": "Reason" - }, - "reason": { - "blocked": "%s contains a disallowed email provider", - "unreachable": "%s does not seem to exist", - "taken": "%s is already in use", - "reserved": "%s is a reserved keyword", - "accepted": "%s must be accepted", - "blank": "%s is required", - "invalid": "%s is invalid", - "too_long": "%s is too long", - "too_short": "%s is too short", - "inclusion": "%s is not a supported value" - }, - "special": { - "username_invalid": "Username must only contain alphanumeric characters and underscores", - "username_too_long": "Username is too long (can’t be longer than 30 characters)", - "email_invalid": "This is not a valid email address", - "password_too_short": "Password is too short (must be at least 8 characters)" - } - } - }, - "server_rules": { - "title": "Some ground rules.", - "subtitle": "These are set and enforced by the %s moderators.", - "prompt": "By continuing, you’re subject to the terms of service and privacy policy for %s.", - "terms_of_service": "terms of service", - "privacy_policy": "privacy policy", - "button": { - "confirm": "I Agree" - } - }, - "confirm_email": { - "title": "One last thing.", - "subtitle": "Tap the link we emailed to you to verify your account.", - "button": { - "open_email_app": "Open Email App", - "resend": "Resend" - }, - "dont_receive_email": { - "title": "Check your email", - "description": "Check if your email address is correct as well as your junk folder if you haven’t.", - "resend_email": "Resend Email" - }, - "open_email_app": { - "title": "Check your inbox.", - "description": "We just sent you an email. Check your junk folder if you haven’t.", - "mail": "Mail", - "open_email_client": "Open Email Client" - } - }, - "home_timeline": { - "title": "Home", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "See new posts", - "published": "Published!", - "Publishing": "Publishing post...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Find People to Follow", - "follow_explain": "When you follow someone, you’ll see their posts in your home feed." - }, - "compose": { - "title": { - "new_post": "New Post", - "new_reply": "New Reply" - }, - "media_selection": { - "camera": "Take Photo", - "photo_library": "Photo Library", - "browse": "Browse" - }, - "content_input_placeholder": "Type or paste what’s on your mind", - "compose_action": "Publish", - "replying_to_user": "replying to %s", - "attachment": { - "photo": "photo", - "video": "video", - "attachment_broken": "This %s is broken and can’t be\nuploaded to Mastodon.", - "description_photo": "Describe the photo for the visually-impaired...", - "description_video": "Describe the video for the visually-impaired..." - }, - "poll": { - "duration_time": "Duration: %s", - "thirty_minutes": "30 minutes", - "one_hour": "1 Hour", - "six_hours": "6 Hours", - "one_day": "1 Day", - "three_days": "3 Days", - "seven_days": "7 Days", - "option_number": "Option %ld" - }, - "content_warning": { - "placeholder": "Write an accurate warning here..." - }, - "visibility": { - "public": "Public", - "unlisted": "Unlisted", - "private": "Followers only", - "direct": "Only people I mention" - }, - "auto_complete": { - "space_to_add": "Space to add" - }, - "accessibility": { - "append_attachment": "Add Attachment", - "append_poll": "Add Poll", - "remove_poll": "Remove Poll", - "custom_emoji_picker": "Custom Emoji Picker", - "enable_content_warning": "Enable Content Warning", - "disable_content_warning": "Disable Content Warning", - "post_visibility_menu": "Post Visibility Menu" - }, - "keyboard": { - "discard_post": "Discard Post", - "publish_post": "Publish Post", - "toggle_poll": "Toggle Poll", - "toggle_content_warning": "Toggle Content Warning", - "append_attachment_entry": "Add Attachment - %s", - "select_visibility_entry": "Select Visibility - %s" - } - }, - "profile": { - "dashboard": { - "posts": "posts", - "following": "following", - "followers": "followers" - }, - "fields": { - "add_row": "Add Row", - "placeholder": { - "label": "Label", - "content": "Content" - } - }, - "segmented_control": { - "posts": "Posts", - "replies": "Replies", - "posts_and_replies": "Posts and Replies", - "media": "Media", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Unmute Account", - "message": "Confirm to unmute %s" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Search", - "search_bar": { - "placeholder": "Search hashtags and users", - "cancel": "Cancel" - }, - "recommend": { - "button_text": "See All", - "hash_tag": { - "title": "Trending on Mastodon", - "description": "Hashtags that are getting quite a bit of attention", - "people_talking": "%s people are talking" - }, - "accounts": { - "title": "Accounts you might like", - "description": "You may like to follow these accounts", - "follow": "Follow" - } - }, - "searching": { - "segment": { - "all": "All", - "people": "People", - "hashtags": "Hashtags", - "posts": "Posts" - }, - "empty_state": { - "no_results": "No results" - }, - "recent_search": "Recent searches", - "clear": "Clear" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Community", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Your Favorites" - }, - "notification": { - "title": { - "Everything": "Everything", - "Mentions": "Mentions" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Show Everything", - "show_mentions": "Show Mentions" - } - }, - "thread": { - "back_title": "Post", - "title": "Post from %s" - }, - "settings": { - "title": "Settings", - "section": { - "appearance": { - "title": "Appearance", - "automatic": "Automatic", - "light": "Always Light", - "dark": "Always Dark" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Notifications", - "favorites": "Favorites my post", - "follows": "Follows me", - "boosts": "Reblogs my post", - "mentions": "Mentions me", - "trigger": { - "anyone": "anyone", - "follower": "a follower", - "follow": "anyone I follow", - "noone": "no one", - "title": "Notify me when" - } - }, - "preference": { - "title": "Preferences", - "true_black_dark_mode": "True black dark mode", - "disable_avatar_animation": "Disable animated avatars", - "disable_emoji_animation": "Disable animated emojis", - "using_default_browser": "Use default browser to open links", - "open_links_in_mastodon": "Open links in Mastodon" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "Account Settings", - "terms": "Terms of Service", - "privacy": "Privacy Policy" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "Clear Media Cache", - "signout": "Sign Out" - } - }, - "footer": { - "mastodon_description": "Mastodon is open source software. You can report issues on GitHub at %s (%s)" - }, - "keyboard": { - "close_settings_window": "Close Settings Window" - } - }, - "report": { - "title_report": "Report", - "title": "Report %s", - "step1": "Step 1 of 2", - "step2": "Step 2 of 2", - "content1": "Are there any other posts you’d like to add to the report?", - "content2": "Is there anything the moderators should know about this report?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Send Report", - "skip_to_send": "Send without comment", - "text_placeholder": "Type or paste additional comments", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Close Preview", - "show_next": "Show Next", - "show_previous": "Show Previous" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "New in Mastodon", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ro_RO/ios-infoPlist.json b/Localization/StringsConvertor/input/ro_RO/ios-infoPlist.json deleted file mode 100644 index c6db73de0..000000000 --- a/Localization/StringsConvertor/input/ro_RO/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Search" -} diff --git a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict deleted file mode 100644 index 026815a8e..000000000 --- a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict +++ /dev/null @@ -1,526 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 unread notification - few - %ld unread notification - many - %ld unread notification - other - %ld unread notification - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Лимит превышен на %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld символ - few - %ld символа - many - %ld символов - other - %ld символа - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld символ остался - few - %ld символа осталось - many - %ld символов осталось - other - %ld символа осталось - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - пост - few - поста - many - постов - other - поста - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld медиафайл - few - %ld медиафайла - many - %ld медиафайлов - other - %ld медиафайла - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld пост - few - %ld поста - many - %ld постов - other - %ld поста - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld добавил(а) в избранное - few - %ld добавили в избранное - many - %ld добавили в избранное - other - %ld добавили в избранное - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld продвинул(а) - few - %ld продвинули - many - %ld продвинули - other - %ld продвинули - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 reply - few - %ld replies - many - %ld replies - other - %ld replies - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld голос - few - %ld голоса - many - %ld голосов - other - %ld голоса - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voter - few - %ld voters - many - %ld voters - other - %ld voters - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 people talking - few - %ld people talking - many - %ld people talking - other - %ld people talking - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 following - few - %ld following - many - %ld following - other - %ld following - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 follower - few - %ld followers - many - %ld followers - other - %ld followers - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 year left - few - %ld years left - many - %ld years left - other - %ld years left - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 months left - few - %ld months left - many - %ld months left - other - %ld months left - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 day left - few - %ld days left - many - %ld days left - other - %ld days left - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hour left - few - %ld hours left - many - %ld hours left - other - %ld hours left - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minute left - few - %ld minutes left - many - %ld minutes left - other - %ld minutes left - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 second left - few - %ld seconds left - many - %ld seconds left - other - %ld seconds left - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1y ago - few - %ldy ago - many - %ldy ago - other - %ldy ago - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1M ago - few - %ldM ago - many - %ldM ago - other - %ldM ago - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1d ago - few - %ldd ago - many - %ldd ago - other - %ldd ago - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1h ago - few - %ldh ago - many - %ldh ago - other - %ldh ago - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1m ago - few - %ldm ago - many - %ldm ago - other - %ldm ago - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s ago - few - %lds ago - many - %lds ago - other - %lds ago - - - - diff --git a/Localization/StringsConvertor/input/ru_RU/app.json b/Localization/StringsConvertor/input/ru_RU/app.json deleted file mode 100644 index 7d5f330f1..000000000 --- a/Localization/StringsConvertor/input/ru_RU/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Пожалуйста, попробуйте ещё раз.", - "please_try_again_later": "Пожалуйста, попробуйте позже." - }, - "sign_up_failure": { - "title": "Ошибка регистрации" - }, - "server_error": { - "title": "Ошибка сервера" - }, - "vote_failure": { - "title": "Не удалось проголосовать", - "poll_ended": "Опрос уже завершился" - }, - "discard_post_content": { - "title": "Удалить черновик", - "message": "Вы действительно хотите удалить набранное содержимое поста?" - }, - "publish_post_failure": { - "title": "Ошибка публикации", - "message": "Не удалось опубликовать пост.\nПожалуйста, проверьте подключение к интернету.", - "attachments_message": { - "video_attach_with_photo": "Невозможно прикрепить видео к посту, содержащему изображения.", - "more_than_one_video": "Невозможно прикрепить более одного видео." - } - }, - "edit_profile_failure": { - "title": "Ошибка изменения профиля", - "message": "Не удаётся изменить профиль. Пожалуйста, попробуйте ещё раз." - }, - "sign_out": { - "title": "Выход", - "message": "Вы действительно хотите выйти из учётной записи?", - "confirm": "Выйти" - }, - "block_domain": { - "title": "Вы очень точно уверены, что хотите полностью заблокировать %s? В большинстве случаев пары блокировок и добавлений в игнорируемые вполне достаточно. Вы перестанете видеть содержимое с этого узла и все ваши подписчики оттуда будут убраны.", - "block_entire_domain": "Заблокировать узел" - }, - "save_photo_failure": { - "title": "Ошибка сохранения изображения", - "message": "Пожалуйста, предоставьте доступ к библиотеке фотографий, чтобы сохранить это изображение." - }, - "delete_post": { - "title": "Вы уверены, что хотите удалить этот пост?", - "message": "Вы уверены, что хотите удалить этот пост?" - }, - "clean_cache": { - "title": "Очистка кэша", - "message": "Успешно очищено %s кэша." - } - }, - "controls": { - "actions": { - "back": "Назад", - "next": "Далее", - "previous": "Прошлые", - "open": "Открыть", - "add": "Добавить", - "remove": "Убрать", - "edit": "Изменить", - "save": "Сохранить", - "ok": "ОК", - "done": "Готово", - "confirm": "Подтвердить", - "continue": "Продолжить", - "compose": "Написать", - "cancel": "Отмена", - "discard": "Отмена", - "try_again": "Попробовать снова", - "take_photo": "Сделать фото", - "save_photo": "Сохранить изображение", - "copy_photo": "Скопировать изображение", - "sign_in": "Войти", - "sign_up": "Зарегистрироваться", - "see_more": "Ещё", - "preview": "Предпросмотр", - "share": "Поделиться", - "share_user": "Поделиться %s", - "share_post": "Поделиться постом", - "open_in_safari": "Открыть в Safari", - "open_in_browser": "Открыть в браузере", - "find_people": "Подпишитесь на людей", - "manually_search": "Найти вручную", - "skip": "Пропустить", - "reply": "Ответить", - "report_user": "Пожаловаться на %s", - "block_domain": "Заблокировать %s", - "unblock_domain": "Разблокировать %s", - "settings": "Настройки", - "delete": "Удалить" - }, - "tabs": { - "home": "Главная", - "search": "Поиск", - "notification": "Уведомление", - "profile": "Профиль" - }, - "keyboard": { - "common": { - "switch_to_tab": "Переключиться на %s", - "compose_new_post": "Создать новый пост", - "show_favorites": "Показать избранные", - "open_settings": "Открыть настройки" - }, - "timeline": { - "previous_status": "Прошлый пост", - "next_status": "Следующий пост", - "open_status": "Открыть пост", - "open_author_profile": "Открыть профиль автора", - "open_reblogger_profile": "Открыть профиль продвинувшего", - "reply_status": "Ответить на пост", - "toggle_reblog": "Продвинуть или убрать продвижение", - "toggle_favorite": "Добавить или убрать из избранного", - "toggle_content_warning": "Раскрыть или спрятать содержимое", - "preview_image": "Предпросмотр изображения" - }, - "segmented_control": { - "previous_section": "Предыдущий раздел", - "next_section": "Следующий раздел" - } - }, - "status": { - "user_reblogged": "%s продвинул(а)", - "user_replied_to": "Ответил(а) %s", - "show_post": "Показать пост", - "show_user_profile": "Показать профиль пользователя", - "content_warning": "Предупреждение о содержании", - "sensitive_content": "Sensitive Content", - "media_content_warning": "Нажмите в любом месте, чтобы показать", - "tap_to_reveal": "Нажмите, чтобы показать", - "poll": { - "vote": "Проголосовать", - "closed": "Завершён" - }, - "actions": { - "reply": "Ответить", - "reblog": "Продвинуть", - "unreblog": "Убрать продвижение", - "favorite": "Добавить в избранное", - "unfavorite": "Убрать из избранного", - "menu": "Меню", - "hide": "Скрыть", - "show_image": "Показать изображение", - "show_gif": "Показать GIF", - "show_video_player": "Показать видеопроигрыватель", - "tap_then_hold_to_show_menu": "Нажмите и удерживайте, чтобы показать меню" - }, - "tag": { - "url": "Ссылка", - "mention": "Упоминание", - "link": "Ссылка", - "hashtag": "Хэштег", - "email": "E-mail", - "emoji": "Эмодзи" - }, - "visibility": { - "unlisted": "Everyone can see this post but not display in the public timeline.", - "private": "Only their followers can see this post.", - "private_from_me": "Only my followers can see this post.", - "direct": "Only mentioned user can see this post." - } - }, - "friendship": { - "follow": "Подписаться", - "following": "В подписках", - "request": "Отправить запрос", - "pending": "Отправлен", - "block": "Заблокировать", - "block_user": "Заблокировать %s", - "block_domain": "Заблокировать %s", - "unblock": "Разблокировать", - "unblock_user": "Разблокировать %s", - "blocked": "В заблокированных", - "mute": "Игнорировать", - "mute_user": "Игнорировать %s", - "unmute": "Убрать из игнорируемых", - "unmute_user": "Убрать %s из игнорируемых", - "muted": "В игнорируемых", - "edit_info": "Изменить" - }, - "timeline": { - "filtered": "Отфильтровано", - "timestamp": { - "now": "Только что" - }, - "loader": { - "load_missing_posts": "Загрузить недостающие посты", - "loading_missing_posts": "Загрузка недостающих постов...", - "show_more_replies": "Показать больше ответов" - }, - "header": { - "no_status_found": "Пост не найден", - "blocking_warning": "Вы не можете просматривать\nпрофиль этого пользователя\nпока не разблокируете его.\n\nПримерно так выглядит\nваш профиль для него.", - "user_blocking_warning": "Вы не можете просматривать\nпрофиль %s\nпока не разблокируете его/её.\n\nПримерно так выглядит\nваш профиль для него/неё.", - "blocked_warning": "Вы не можете просматривать\nпрофиль этого пользователя\nпока он не разблокирует вас.", - "user_blocked_warning": "Вы не можете просматривать\nпрофиль %s\nпока он(а) не разблокирует вас.", - "suspended_warning": "Этот пользователь был заморожен.", - "user_suspended_warning": "Учётная запись %s заморожена." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Социальная сеть\nпод вашим контролем.", - "get_started": "Присоединиться", - "log_in": "Вход" - }, - "server_picker": { - "title": "Выберите сервер,\nлюбой сервер.", - "subtitle": "Выберите сообщество на основе своих интересов, региона или общей тематики.", - "subtitle_extend": "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual.", - "button": { - "category": { - "all": "Все", - "all_accessiblity_description": "Категория: все", - "academia": "академия", - "activism": "активизм", - "food": "еда", - "furry": "фурри", - "games": "игры", - "general": "общей тематики", - "journalism": "журнализм", - "lgbt": "ЛГБТКИА+", - "regional": "региональные", - "art": "арт", - "music": "музыка", - "tech": "технологии" - }, - "see_less": "Показать меньше", - "see_more": "Ещё" - }, - "label": { - "language": "ЯЗЫК", - "users": "ПОЛЬЗОВАТЕЛИ", - "category": "КАТЕГОРИЯ" - }, - "input": { - "placeholder": "Найдите сервер или присоединитесь к своему...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Ищем доступные сервера...", - "bad_network": "Что-то пошло не так при загрузке данных. Проверьте подключение к интернету.", - "no_results": "Нет результатов" - } - }, - "register": { - "title": "Расскажите нам о себе.", - "input": { - "avatar": { - "delete": "Удалить" - }, - "username": { - "placeholder": "имя пользователя", - "duplicate_prompt": "Это имя пользователя занято." - }, - "display_name": { - "placeholder": "отображаемое имя" - }, - "email": { - "placeholder": "e-mail" - }, - "password": { - "placeholder": "пароль", - "require": "Your password needs at least:", - "character_limit": "8 characters", - "accessibility": { - "checked": "checked", - "unchecked": "unchecked" - }, - "hint": "Пароль должен содержать не менее восьми символов" - }, - "invite": { - "registration_user_invite_request": "Почему вы хотите присоединиться?" - } - }, - "error": { - "item": { - "username": "Имя пользователя", - "email": "E-mail", - "password": "Пароль", - "agreement": "Соглашение", - "locale": "Язык", - "reason": "Причина" - }, - "reason": { - "blocked": "%s содержит запрещённый e-mail сервис", - "unreachable": "%s не существует", - "taken": "%s уже используется", - "reserved": "%s является зарезервированным ключевым словом", - "accepted": "%s должно быть принято", - "blank": "Поле «%s» обязательно", - "invalid": "Недопустимое значение поля «%s»", - "too_long": "%s слишком длинный", - "too_short": "%s слишком короткий", - "inclusion": "Неподдерживаемое значение «%s»" - }, - "special": { - "username_invalid": "Имя пользователя может содержать только латинские буквы, цифры и подчёркивания", - "username_too_long": "Слишком длинное имя пользователя (не может быть длиннее 30 символов)", - "email_invalid": "Недопустимый e-mail адрес", - "password_too_short": "Пароль слишком короткий (должен содержать не менее 8 символов)" - } - } - }, - "server_rules": { - "title": "Несколько основных правил.", - "subtitle": "Эти правила установлены администраторами %s.", - "prompt": "Продолжая, вы соглашаетесь с условиям использования и политикой конфиденциальности %s.", - "terms_of_service": "условия использования", - "privacy_policy": "политика конфиденциальности", - "button": { - "confirm": "Принимаю" - } - }, - "confirm_email": { - "title": "И ещё кое-что.", - "subtitle": "Мы только что отправили письмо на\n%s.\nНажмите на ссылку в нём, чтобы\nподтвердить свою учётную запись.", - "button": { - "open_email_app": "Открыть приложение почты", - "resend": "Отправить заново" - }, - "dont_receive_email": { - "title": "Проверьте свой e-mail адрес", - "description": "Проверьте, правильно ли указан ваш e-mail адрес, а также папку «спам», если ещё не сделали этого.", - "resend_email": "Отправить ещё раз" - }, - "open_email_app": { - "title": "Проверьте вашу почту.", - "description": "Мы только что отправили вам e-mail. Проверьте спам, если не нашли его.", - "mail": "Почта", - "open_email_client": "Открыть почтовый клиент" - } - }, - "home_timeline": { - "title": "Главная", - "navigation_bar_state": { - "offline": "Не в сети", - "new_posts": "Показать новые", - "published": "Опубликовано!", - "Publishing": "Публикуем пост...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Подпишитесь на людей", - "follow_explain": "Посты людей, на которых вы подписались, будут видны на главной странице." - }, - "compose": { - "title": { - "new_post": "Новый пост", - "new_reply": "Новый ответ" - }, - "media_selection": { - "camera": "Сделать фото", - "photo_library": "Медиатека", - "browse": "Выбрать" - }, - "content_input_placeholder": "Напишите то, о чём думаете", - "compose_action": "Опубликовать", - "replying_to_user": "ответ %s", - "attachment": { - "photo": "изображение", - "video": "видео", - "attachment_broken": "Это %s повреждено и не может\nбыть отправлено в Mastodon.", - "description_photo": "Опишите фото для людей с нарушениями зрения...", - "description_video": "Опишите видео для людей с нарушениями зрения..." - }, - "poll": { - "duration_time": "Продолжительность: %s", - "thirty_minutes": "30 минут", - "one_hour": "1 час", - "six_hours": "6 часов", - "one_day": "1 день", - "three_days": "3 дня", - "seven_days": "7 дней", - "option_number": "Вариант %ld" - }, - "content_warning": { - "placeholder": "Напишите предупреждение здесь..." - }, - "visibility": { - "public": "Публичный", - "unlisted": "Скрытый", - "private": "Для подписчиков", - "direct": "Только для упомянутых людей" - }, - "auto_complete": { - "space_to_add": "Пробел, чтобы добавить" - }, - "accessibility": { - "append_attachment": "Прикрепить файл", - "append_poll": "Добавить опрос", - "remove_poll": "Убрать опрос", - "custom_emoji_picker": "Меню пользовательских эмодзи", - "enable_content_warning": "Добавить предупреждение о содержании", - "disable_content_warning": "Убрать предупреждение о содержании", - "post_visibility_menu": "Меню видимости поста" - }, - "keyboard": { - "discard_post": "Удалить пост", - "publish_post": "Опубликовать пост", - "toggle_poll": "Добавить/убрать опрос", - "toggle_content_warning": "Добавить/убрать предупреждение о содержании", - "append_attachment_entry": "Прикрепить файл — %s", - "select_visibility_entry": "Выбрать видимость — %s" - } - }, - "profile": { - "dashboard": { - "posts": "посты", - "following": "подписки", - "followers": "подписчики" - }, - "fields": { - "add_row": "Добавить строку", - "placeholder": { - "label": "Ярлык", - "content": "Содержимое" - } - }, - "segmented_control": { - "posts": "Посты", - "replies": "Ответы", - "posts_and_replies": "Посты и ответы", - "media": "Медиа", - "about": "About" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Mute Account", - "message": "Confirm to mute %s" - }, - "confirm_unmute_user": { - "title": "Убрать из игнорируемых", - "message": "Убрать %s из игнорируемых?" - }, - "confirm_block_user": { - "title": "Block Account", - "message": "Confirm to block %s" - }, - "confirm_unblock_user": { - "title": "Unblock Account", - "message": "Confirm to unblock %s" - } - }, - "accessibility": { - "show_avatar_image": "Show avatar image", - "edit_avatar_image": "Edit avatar image", - "show_banner_image": "Show banner image", - "double_tap_to_open_the_list": "Double tap to open the list" - } - }, - "follower": { - "footer": "Followers from other servers are not displayed." - }, - "following": { - "footer": "Follows from other servers are not displayed." - }, - "search": { - "title": "Поиск", - "search_bar": { - "placeholder": "Поиск хэштегов и пользователей", - "cancel": "Отмена" - }, - "recommend": { - "button_text": "Посмотреть все", - "hash_tag": { - "title": "Популярно в Mastodon", - "description": "Хэштеги, которым сейчас уделяется немного внимания", - "people_talking": "%s людей разговаривают" - }, - "accounts": { - "title": "Вам может понравится", - "description": "Возможно, вы захотите подписаться на эти профили", - "follow": "Подписаться" - } - }, - "searching": { - "segment": { - "all": "Всё", - "people": "Люди", - "hashtags": "Хэштеги", - "posts": "Посты" - }, - "empty_state": { - "no_results": "Нет результатов" - }, - "recent_search": "Последние запросы", - "clear": "Очистить" - } - }, - "discovery": { - "tabs": { - "posts": "Posts", - "hashtags": "Hashtags", - "news": "News", - "community": "Сообщество", - "for_you": "For You" - }, - "intro": "These are the posts gaining traction in your corner of Mastodon." - }, - "favorite": { - "title": "Ваше избранное" - }, - "notification": { - "title": { - "Everything": "Все", - "Mentions": "Упоминания" - }, - "notification_description": { - "followed_you": "followed you", - "favorited_your_post": "favorited your post", - "reblogged_your_post": "reblogged your post", - "mentioned_you": "mentioned you", - "request_to_follow_you": "request to follow you", - "poll_has_ended": "poll has ended" - }, - "keyobard": { - "show_everything": "Показать все", - "show_mentions": "Показать упоминания" - } - }, - "thread": { - "back_title": "Пост", - "title": "Пост %s" - }, - "settings": { - "title": "Настройки", - "section": { - "appearance": { - "title": "Внешний вид", - "automatic": "Автоматически", - "light": "Светлая тема", - "dark": "Тёмная тема" - }, - "look_and_feel": { - "title": "Look and Feel", - "use_system": "Use System", - "really_dark": "Really Dark", - "sorta_dark": "Sorta Dark", - "light": "Light" - }, - "notifications": { - "title": "Уведомления", - "favorites": "Добавляет мой пост в избранное", - "follows": "Подписался на меня", - "boosts": "Продвигает мой пост", - "mentions": "Упоминает меня", - "trigger": { - "anyone": "кто угодно", - "follower": "мой подписчик", - "follow": "любой, на кого я подписан(а)", - "noone": "никто", - "title": "Уведомлять меня, когда" - } - }, - "preference": { - "title": "Предпочтения", - "true_black_dark_mode": "Полноценно чёрный режим", - "disable_avatar_animation": "Отключить анимацию аватарок", - "disable_emoji_animation": "Отключить анимацию эмодзи", - "using_default_browser": "Использовать браузер по умолчанию для открытия ссылок", - "open_links_in_mastodon": "Открывать ссылки в Мастодоне" - }, - "boring_zone": { - "title": "Зона скукотищи", - "account_settings": "Настройки аккаунта", - "terms": "Условия использования", - "privacy": "Политика конфиденциальности" - }, - "spicy_zone": { - "title": "Пикантная зона", - "clear": "Очистить кэш медиа", - "signout": "Выйти из учётной записи" - } - }, - "footer": { - "mastodon_description": "Mastodon — проект с открытым исходным кодом. Сообщить о проблемах можно на GitHub по адресу %s (%s)" - }, - "keyboard": { - "close_settings_window": "Закрыть окно настроек" - } - }, - "report": { - "title_report": "Жалоба", - "title": "Пожаловаться на %s", - "step1": "Шаг 1 из 2", - "step2": "Шаг 2 из 2", - "content1": "Есть ли другие сообщения, которые вы хотите добавить в отчёт?", - "content2": "Есть ли что-то, что модераторы должны знать об этом сообщении?", - "report_sent_title": "Thanks for reporting, we’ll look into this.", - "send": "Пожаловаться", - "skip_to_send": "Отправить без комментария", - "text_placeholder": "Дополнительные комментарии", - "reported": "REPORTED", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "Пока мы рассматриваем его, вот действия, которые вы можете предпринять лично против %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Закрыть предпросмотр", - "show_next": "Следующее изображение", - "show_previous": "Предыдущее изображение" - } - }, - "account_list": { - "tab_bar_hint": "Current selected profile: %s. Double tap then hold to show account switcher", - "dismiss_account_switcher": "Dismiss Account Switcher", - "add_account": "Add Account" - }, - "wizard": { - "new_in_mastodon": "Новое в Мастодоне", - "multiple_account_switch_intro_description": "Switch between multiple accounts by holding the profile button.", - "accessibility_hint": "Double tap to dismiss this wizard" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/ru_RU/ios-infoPlist.json b/Localization/StringsConvertor/input/ru_RU/ios-infoPlist.json deleted file mode 100644 index 3dabe4322..000000000 --- a/Localization/StringsConvertor/input/ru_RU/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Used to take photo for post status", - "NSPhotoLibraryAddUsageDescription": "Used to save photo into the Photo Library", - "NewPostShortcutItemTitle": "New Post", - "SearchShortcutItemTitle": "Поиск" -} diff --git a/Localization/StringsConvertor/input/sv_FI/Localizable.stringsdict b/Localization/StringsConvertor/input/sv_FI/Localizable.stringsdict deleted file mode 100644 index 091c8555e..000000000 --- a/Localization/StringsConvertor/input/sv_FI/Localizable.stringsdict +++ /dev/null @@ -1,406 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 lukematon ilmoitus - other - %ld lukematonta ilmoitusta - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 merkki - other - %ld merkkiä - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ päästä - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 merkki - other - %ld merkkiä - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - julkaisu - other - julkaisut - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 julkaisu - other - %ld julkaisua - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 suosikki - other - %ld suosikkia - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 edelleen jako - other - %ld edelleen jakoa - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 svar - other - %ld svar - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ääni - other - %ld ääntä - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vastaaja - other - %ld vastaajaa - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ihminen puhuu - other - %ld ihmistä puhuu - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seurataan - other - %ld seurataan - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seuraaja - other - %ld seuraajaa - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 vuosi jäljellä - other - %ld vuotta jäljellä - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 kuukausi jäljellä - other - %ld kuukautta jäljellä - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 päivä jäljellä - other - %ld päivää jäljellä - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tunti jäljellä - other - %ld tuntia jäljellä - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuutti jäljellä - other - %ld minuuttia jäljellä - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 sekuntti - other - %ld sekunttia jäljellä - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1v sitten - other - %ldv sitten - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1kk sitten - other - %ldkk sitten - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1pv sitten - other - %ldpv sitten - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1t sitten - other - %ldt sitten - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1min sitten - other - %ldmin sitten - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1s sitten - other - %lds sitten - - - - diff --git a/Localization/StringsConvertor/input/sv_FI/app.json b/Localization/StringsConvertor/input/sv_FI/app.json deleted file mode 100644 index 5712e4c06..000000000 --- a/Localization/StringsConvertor/input/sv_FI/app.json +++ /dev/null @@ -1,619 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Yritä uudelleen.", - "please_try_again_later": "Yritä uudelleen myöhemmin." - }, - "sign_up_failure": { - "title": "Rekisteröinti epäonnistui" - }, - "server_error": { - "title": "Palvelinvirhe" - }, - "vote_failure": { - "title": "Röstning misslyckades", - "poll_ended": "Kysely on päättynyt" - }, - "discard_post_content": { - "title": "Hylkää luonnos", - "message": "Bekräfta för att slänga inläggsutkast." - }, - "publish_post_failure": { - "title": "Julkaiseminen epäonnistui", - "message": "Julkaisun julkaiseminen epäonnistui.\nTarkista internet-yhteytesi.", - "attachments_message": { - "video_attach_with_photo": "Det går inte att bifoga en video till en status som redan innehåller bilder.", - "more_than_one_video": "Ei voi liittä yhtä videota enempää." - } - }, - "edit_profile_failure": { - "title": "Virhe profiilin muokkauksessa", - "message": "Profiilia ei voida muoka. Yritä uudelleen." - }, - "sign_out": { - "title": "Kirjaudu ulos", - "message": "Haluatko varmasti kirjautua ulos?", - "confirm": "Kirjaudu ulos" - }, - "block_domain": { - "title": "Är du verkligen, verkligen säker på att du vill blockera hela %s? I de flesta fall är några riktade blockeringar eller nedtystade konton tillräckligt och att föredra. Du kommer inte se innehåll från den domänen och dina följare från den domänen kommer att tas bort.", - "block_entire_domain": "Estä verkkotunnus" - }, - "save_photo_failure": { - "title": "Kuvan tallentaminen epäonnistui", - "message": "Aktivera åtkomst till Bilder för att spara bilden." - }, - "delete_post": { - "title": "Haluatko varmasti poistaa tämän julkaisun?", - "message": "Är du säker på att du vill radera detta inlägg?" - }, - "clean_cache": { - "title": "Puhdista välimuisti", - "message": "%s välimuisti tyhjennetty onnistuneesti." - } - }, - "controls": { - "actions": { - "back": "Takaisin", - "next": "Seuraava", - "previous": "Edellinen", - "open": "Avaa", - "add": "Lisää", - "remove": "Poista", - "edit": "Muokkaa", - "save": "Tallenna", - "ok": "OK", - "done": "Valmis", - "confirm": "Vahvista", - "continue": "Jatka", - "compose": "Koosta", - "cancel": "Kumoa", - "discard": "Hylkää", - "try_again": "Yritä uudelleen", - "take_photo": "Ota kuva", - "save_photo": "Tallenna kuva", - "copy_photo": "Kopioi kuva", - "sign_in": "Kirjaudu sisään", - "sign_up": "Rekisteröidy", - "see_more": "Näytä lisää", - "preview": "Esikatselu", - "share": "Jaa", - "share_user": "Jaa %s", - "share_post": "Jaa julkaisu", - "open_in_safari": "Avaa Safarissa", - "open_in_browser": "Öppna i webbläsare", - "find_people": "Löydä tilejä seurattavaksi", - "manually_search": "Sök manuellt istället", - "skip": "Ohita", - "reply": "Vastaa", - "report_user": "Ilmianna %s", - "block_domain": "Estä %s", - "unblock_domain": "Poista esto %s", - "settings": "Asetukset", - "delete": "Poista" - }, - "tabs": { - "home": "Koti", - "search": "Haku", - "notification": "Ilmoitus", - "profile": "Profiili" - }, - "keyboard": { - "common": { - "switch_to_tab": "Vaihda %s", - "compose_new_post": "Koosta uusi julkaisu", - "show_favorites": "Näytä suosikit", - "open_settings": "Avaa asetukset" - }, - "timeline": { - "previous_status": "Edellinen julkaisu", - "next_status": "Seuraava julkaisu", - "open_status": "Avaa julkaisu", - "open_author_profile": "Avaa tekijän profiili", - "open_reblogger_profile": "Avaa edelleen jakajan profiili", - "reply_status": "Vastaa julkaisuun", - "toggle_reblog": "Växla ompostning på inlägg", - "toggle_favorite": "Växla favorit på inlägg", - "toggle_content_warning": "Vaihda sisältövaroitus", - "preview_image": "Förhandsgranska bild" - }, - "segmented_control": { - "previous_section": "Föregående avsnitt", - "next_section": "Seuraava lohko" - } - }, - "status": { - "user_reblogged": "%s jakoi edelleen", - "user_replied_to": "Vastasi %s:lle", - "show_post": "Näytä julkaisu", - "show_user_profile": "Näytä tili", - "content_warning": "Sisältövaroitus", - "sensitive_content": "Känsligt innehåll", - "media_content_warning": "Napauta mistä tahansa paljastaaksesi", - "tap_to_reveal": "Tryck för att visa", - "poll": { - "vote": "Rösta", - "closed": "Suljettu" - }, - "actions": { - "reply": "Vastaa", - "reblog": "Jaa edelleen", - "unreblog": "Peru edelleen jako", - "favorite": "Favorit", - "unfavorite": "Ta bort favorit", - "menu": "Valikko", - "hide": "Dölj", - "show_image": "Visa bild", - "show_gif": "Visa GIF", - "show_video_player": "Visa videospelare", - "tap_then_hold_to_show_menu": "Tryck och håll ned för att visa menyn" - }, - "tag": { - "url": "URL", - "mention": "Nämn", - "link": "Linkki", - "hashtag": "Hashtagi", - "email": "Sähköposti", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen.", - "private": "Endast deras följare kan se detta inlägg.", - "private_from_me": "Bara mina följare kan se det här inlägget.", - "direct": "Endast nämnda användare kan se detta inlägg." - } - }, - "friendship": { - "follow": "Seuraa", - "following": "Seurataan", - "request": "Pyydä", - "pending": "Pyydetty", - "block": "Estä", - "block_user": "Estä %s", - "block_domain": "Estä %s", - "unblock": "Poista esto", - "unblock_user": "Avblockera %s", - "blocked": "Estetty", - "mute": "Mykistä", - "mute_user": "Mykistä %s", - "unmute": "Poista mykistys", - "unmute_user": "Poista mykistys tililtä %s", - "muted": "Mykistetty", - "edit_info": "Muokkaa profiilia" - }, - "timeline": { - "filtered": "Suodatettu", - "timestamp": { - "now": "Nyt" - }, - "loader": { - "load_missing_posts": "Lataa puuttuvat julkaisut", - "loading_missing_posts": "Ladataan puuttuvia julkaisuja...", - "show_more_replies": "Näytä lisää vastauksia" - }, - "header": { - "no_status_found": "Julkaisua ei löytynyt", - "blocking_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", - "user_blocking_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin poistat sen esto.\nProfiilisi näyttää tältä hänelle.", - "blocked_warning": "Et voi tarkastella tämän tilin profiilia\nennen kuin hän poistaa eston.", - "user_blocked_warning": "Et voi tarkastella tilin %s profiilia\nennen kuin hän poistaa eston.", - "suspended_warning": "Tämä tili on lakkautettu.", - "user_suspended_warning": "Tili %s on lakkautettu." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Sosiaalinen verkostoituminen\ntakaisin käsissäsi.", - "get_started": "Kom igång", - "log_in": "Logga in" - }, - "server_picker": { - "title": "Valitse palvelin,\nmikä tahansa palvelin.", - "subtitle": "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte.", - "subtitle_extend": "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte. Varje gemenskap drivs av en helt oberoende organisation eller individ.", - "button": { - "category": { - "all": "Kaikki", - "all_accessiblity_description": "Kategoria: Kaikki", - "academia": "akateeminen", - "activism": "aktivismi", - "food": "ruoka", - "furry": "turri", - "games": "pelit", - "general": "yleinen", - "journalism": "journalismi", - "lgbt": "hlbt", - "regional": "alueellinen", - "art": "taide", - "music": "musiikki", - "tech": "tekniikka" - }, - "see_less": "Näytä vähemmän", - "see_more": "Näytä lisää" - }, - "label": { - "language": "KIELI", - "users": "TILIÄ", - "category": "KATEGORIA" - }, - "input": { - "placeholder": "Etsi palvelin tai liity omaan..." - }, - "empty_state": { - "finding_servers": "Etsistään saatavilla olevia palvelimia...", - "bad_network": "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi.", - "no_results": "Ei hakutuloksia" - } - }, - "register": { - "title": "Kerro meille sinusta.", - "input": { - "avatar": { - "delete": "Poista" - }, - "username": { - "placeholder": "käyttäjänimi", - "duplicate_prompt": "Tämä käyttäjänimi on varattu." - }, - "display_name": { - "placeholder": "näyttönimi" - }, - "email": { - "placeholder": "sähköposti" - }, - "password": { - "placeholder": "salasana", - "require": "Ditt lösenord behöver minst:", - "character_limit": "8 tecken", - "accessibility": { - "checked": "markerad", - "unchecked": "avmarkerad" - }, - "hint": "Salasanassasi on oltava vähintään kahdeksan merkkiä" - }, - "invite": { - "registration_user_invite_request": "Miksi haluat liittyä?" - } - }, - "error": { - "item": { - "username": "Käyttäjänimi", - "email": "Sähköposti", - "password": "Salasana", - "agreement": "Hyväksy", - "locale": "Språk", - "reason": "Syy" - }, - "reason": { - "blocked": "%s sisältää estetyn sähköpostipalveluntarjoajan", - "unreachable": "%s ei näytä olevan olemassa", - "taken": "%s on jo käytössä", - "reserved": "%s är ett reserverat nyckelord", - "accepted": "%s täytyy hyväksyä", - "blank": "%s vaaditaan", - "invalid": "%s on virheellinen", - "too_long": "%s on liian pitkä", - "too_short": "%s on liian lyhyt", - "inclusion": "%s ei ole tuettu arvo" - }, - "special": { - "username_invalid": "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja", - "username_too_long": "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)", - "email_invalid": "Tämä ei ole kelvollinen sähköpostiosoite", - "password_too_short": "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)" - } - } - }, - "server_rules": { - "title": "Joitakin perussääntöjä.", - "subtitle": "Nämä säännöt ovat %s -palvelun asettamia.", - "prompt": "Jatkamalla, hyväksyt palvelun %s palveluehdot ja tietosuojakäytönnön.", - "terms_of_service": "käyttöehdot", - "privacy_policy": "tietosuojakäytäntö", - "button": { - "confirm": "Hyväksyn" - } - }, - "confirm_email": { - "title": "Viimeinen asia.", - "subtitle": "Lähetimme juuri sähköpostin osoitteeseen %s, napauta siinä olevaa linkkiä vahvistaaksesi tilisi.", - "button": { - "open_email_app": "Avaa sähköpostisovellus", - "resend": "Skicka igen" - }, - "dont_receive_email": { - "title": "Tarkista sähköpostisi", - "description": "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole.", - "resend_email": "Lähetä sähköposti uudelleen" - }, - "open_email_app": { - "title": "Tarkasta postilaatikkosi.", - "description": "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole.", - "mail": "Sähköposti", - "open_email_client": "Avaa sähköpostisovellus" - } - }, - "home_timeline": { - "title": "Koti", - "navigation_bar_state": { - "offline": "Yhteydetön", - "new_posts": "Uusia julkaisuja", - "published": "Julkaistu!", - "Publishing": "Julkaistaan julkaisua..." - } - }, - "suggestion_account": { - "title": "Löydä tilejä seurattavaksi", - "follow_explain": "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi." - }, - "compose": { - "title": { - "new_post": "Uusi julkaisu", - "new_reply": "Uusi vastaus" - }, - "media_selection": { - "camera": "Ota kuva", - "photo_library": "Kuvakirjasto", - "browse": "Selaa" - }, - "content_input_placeholder": "Kirjoita tai liitä, siitä mitä ajattelet", - "compose_action": "Julkaise", - "replying_to_user": "vastaamassa tilille %s", - "attachment": { - "photo": "kuva", - "video": "video", - "attachment_broken": "Denna %s är trasig och kan inte\nladdas upp till Mastodon.", - "description_photo": "Kuvaile kuva näkövammaisille...", - "description_video": "Kuvaile video näkövammaisille..." - }, - "poll": { - "duration_time": "Kesto: %s", - "thirty_minutes": "30 minuuttia", - "one_hour": "1 tunti", - "six_hours": "6 tuntia", - "one_day": "1 päivä", - "three_days": "3 päivää", - "seven_days": "7 päivää", - "option_number": "Vaihtoehto %ld" - }, - "content_warning": { - "placeholder": "Kirjoita tarkka varoitus tähän..." - }, - "visibility": { - "public": "Julkinen", - "unlisted": "Listaamaton", - "private": "Vain seuraajat", - "direct": "Vain mainitsemani tilit" - }, - "auto_complete": { - "space_to_add": "Mellanslag att lägga till" - }, - "accessibility": { - "append_attachment": "Lisää liite", - "append_poll": "Lisää kysely", - "remove_poll": "Poista kysely", - "custom_emoji_picker": "Mukautettu emojivalitsin", - "enable_content_warning": "Ota sisältövaroitus käyttöön", - "disable_content_warning": "Poista sisältövaroitus käytöstä", - "post_visibility_menu": "Julkaisun näkyvyysvalikko" - }, - "keyboard": { - "discard_post": "Hylkää julkaisu", - "publish_post": "Julkaise julkaisu", - "toggle_poll": "Vaihda kysely", - "toggle_content_warning": "Vaihda sisältövaroitus", - "append_attachment_entry": "Lisää liite - %s", - "select_visibility_entry": "Valitse näkyvyys - %s" - } - }, - "profile": { - "dashboard": { - "posts": "julkaisut", - "following": "seurataan", - "followers": "seuraajat" - }, - "fields": { - "add_row": "Lisää rivi", - "placeholder": { - "label": "Nimi", - "content": "Sisältö" - } - }, - "segmented_control": { - "posts": "Julkaisut", - "replies": "Vastaukset", - "posts_and_replies": "Inlägg och svar", - "media": "Media", - "about": "Om" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Tysta konto", - "message": "Bekräfta för att tysta %s" - }, - "confirm_unmute_user": { - "title": "Poista tilin mykistys", - "message": "Vahvista, että haluat poistaa mykistyksen tililtä %s" - }, - "confirm_block_user": { - "title": "Blockera konto", - "message": "Bekräfta för att blockera %s" - }, - "confirm_unblock_user": { - "title": "Avblockera konto", - "message": "Bekräfta för att avblockera %s" - } - }, - "accessibility": { - "show_avatar_image": "Visa profilbild", - "edit_avatar_image": "Redigera profilbild", - "show_banner_image": "Visa banner", - "double_tap_to_open_the_list": "Dubbeltryck för att öppna listan" - } - }, - "follower": { - "footer": "Seuraajia muilta palvelimilta ei näytetä." - }, - "following": { - "footer": "Seurauksia muilta palvelimilta ei näytetä." - }, - "search": { - "title": "Haku", - "search_bar": { - "placeholder": "Haku", - "cancel": "Kumoa" - }, - "recommend": { - "button_text": "Katso kaikki", - "hash_tag": { - "title": "Trendaavat Mastodonissa", - "description": "Hashtagit, jotka saavat melkoisesti huomiota", - "people_talking": "%s ihmistä puhuu" - }, - "accounts": { - "title": "Saatat pitää näistä tileistä", - "description": "Haluta ehkä seurata näitä tilejä", - "follow": "Seuraa" - } - }, - "searching": { - "segment": { - "all": "Kaikki", - "people": "Tilit", - "hashtags": "Hashtagit", - "posts": "Julkaisut" - }, - "empty_state": { - "no_results": "Ei hakutuloksia" - }, - "recent_search": "Viimeaikaiset", - "clear": "Tyhjennä" - } - }, - "discovery": { - "tabs": { - "posts": "Inlägg", - "hashtags": "Hashtaggar", - "news": "Nyheter", - "community": "Community", - "for_you": "För dig" - }, - "intro": "Detta är de inlägg som engagerar i ditt hörn av Mastodon." - }, - "favorite": { - "title": "Omat suosikit" - }, - "notification": { - "title": { - "Everything": "Kaikki", - "Mentions": "Maininnat" - }, - "notification_description": { - "followed_you": "följde dig", - "favorited_your_post": "favoriserade ditt inlägg", - "reblogged_your_post": "ompostade ditt inlägg", - "mentioned_you": "nämnde dig", - "request_to_follow_you": "begär att följa dig", - "poll_has_ended": "omröstningen har avslutats" - }, - "keyobard": { - "show_everything": "Näytä kaikki", - "show_mentions": "Näytä maininnat" - } - }, - "thread": { - "back_title": "Julkaisu", - "title": "Julkaisu tililtä %s" - }, - "settings": { - "title": "Asetukset", - "section": { - "appearance": { - "title": "Ulkoasu", - "automatic": "Seuraa järjestelmää", - "light": "Vaalea", - "dark": "Tumma" - }, - "look_and_feel": { - "title": "Utseende och känsla", - "use_system": "Följ systeminställningarna", - "really_dark": "Verkligen mörk", - "sorta_dark": "Ganska mörk", - "light": "Ljust" - }, - "notifications": { - "title": "Ilmoitukset", - "favorites": "Favoriserar mitt inlägg", - "follows": "Seuraa minua", - "boosts": "Omien julkaisujen edelleen jaot", - "mentions": "Mainitsee minut", - "trigger": { - "anyone": "kuka tahansa", - "follower": "seuraaja", - "follow": "kuka tahansa, jota seuraan", - "noone": "ei kukaan", - "title": "Ilmoita minulle, kun" - } - }, - "preference": { - "title": "Lisäasetukset", - "true_black_dark_mode": "Todellinen mustan tumma tila", - "disable_avatar_animation": "Poista käytöstä animoidut avatarit", - "disable_emoji_animation": "Poista käytöstä animoidut emojit", - "using_default_browser": "Käytä oletusselainta linkkien avaamiseen", - "open_links_in_mastodon": "Öppna länkar i Mastodon" - }, - "boring_zone": { - "title": "Tylsä alue", - "account_settings": "Tiliasetukset", - "terms": "Palveluehdot", - "privacy": "Tietosuojakäytäntö" - }, - "spicy_zone": { - "title": "Varovainen alue", - "clear": "Tyhjennä median välimuisti", - "signout": "Kirjaudu ulos" - } - }, - "footer": { - "mastodon_description": "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %s (%s)" - }, - "keyboard": { - "close_settings_window": "Sulje asetukset" - } - }, - "report": { - "title_report": "Rapportera", - "title": "Ilmianna %s", - "step1": "Vaihe 1/2", - "step2": "Vaihe 2/2", - "content1": "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?", - "content2": "Onko valvojien syytä tietää tästä ilmiannosta?", - "report_sent_title": "Tack för din rapport, vi ska titta på det.", - "send": "Lähetä ilmianto", - "skip_to_send": "Lähetä ilman kommentteja", - "text_placeholder": "Kirjoita tai liitä lisäkommentteja", - "reported": "RAPPORTERAD" - }, - "preview": { - "keyboard": { - "close_preview": "Sulje esikatselu", - "show_next": "Näytä seuraava", - "show_previous": "Näytä edellinen" - } - }, - "account_list": { - "tab_bar_hint": "Nykyinen valittu profiili: %s. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan", - "dismiss_account_switcher": "Sulje tilin vaihtaja", - "add_account": "Lisää tili" - }, - "wizard": { - "new_in_mastodon": "Uutta Mastodonissa", - "multiple_account_switch_intro_description": "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna.", - "accessibility_hint": "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/sv_FI/ios-infoPlist.json b/Localization/StringsConvertor/input/sv_FI/ios-infoPlist.json deleted file mode 100644 index eb389f3b3..000000000 --- a/Localization/StringsConvertor/input/sv_FI/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Käytetään kuvan ottamiseen julkaisua varten", - "NSPhotoLibraryAddUsageDescription": "Käytetään kuvan tallentamiseen kuvakirjastoon", - "NewPostShortcutItemTitle": "Uusi julkaisu", - "SearchShortcutItemTitle": "Haku" -} diff --git a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict b/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict deleted file mode 100644 index 653a69373..000000000 --- a/Localization/StringsConvertor/input/sv_SE/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 oläst notis - other - %ld olästa notiser - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Inmatningsgränsen överskrider %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tecken - other - %ld tecken - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Inmatningsgränsen återstår %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 tecken - other - %ld tecken - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - inlägg - other - inläggen - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 inlägg - other - %ld inlägg - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorit - other - %ld favoriter - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld ompostning - other - %ld ompostningar - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 svar - other - %ld svar - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 röst - other - %ld röster - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld röstare - other - %ld röster - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld person diskuterar - other - %ld personer diskuterar - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld följer - other - %ld följer - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 följare - other - %ld följare - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld år kvar - other - %ld år kvar - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld månad kvar - other - %ld månader kvar - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld dag kvar - other - %ld dagar kvar - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld timme kvar - other - %ld timmar kvar - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld minut kvar - other - %ld minuter kvar - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld sekund kvar - other - %ld sekunder kvar - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld år sedan - other - %ldå sedan - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld mån sedan - other - %ld mån sedan - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ldd sedan - other - %ldd sedan - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ldt sedan - other - %ldt sedan - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld min sedan - other - %ld min sedan - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %lds sedan - other - %lds sedan - - - - diff --git a/Localization/StringsConvertor/input/sv_SE/app.json b/Localization/StringsConvertor/input/sv_SE/app.json deleted file mode 100644 index 83853b94a..000000000 --- a/Localization/StringsConvertor/input/sv_SE/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Var god försök igen.", - "please_try_again_later": "Var god försök igen senare." - }, - "sign_up_failure": { - "title": "Registrering misslyckades" - }, - "server_error": { - "title": "Serverfel" - }, - "vote_failure": { - "title": "Röstning misslyckades", - "poll_ended": "Omröstningen har avslutats" - }, - "discard_post_content": { - "title": "Släng utkast", - "message": "Bekräfta för att slänga inläggsutkast." - }, - "publish_post_failure": { - "title": "Publicering misslyckades", - "message": "Det gick inte att publicera inlägget.\nKontrollera din internetanslutning.", - "attachments_message": { - "video_attach_with_photo": "Det går inte att bifoga en video till ett inlägg som redan innehåller bilder.", - "more_than_one_video": "Det går inte att bifoga mer än en video." - } - }, - "edit_profile_failure": { - "title": "Profilredigering misslyckades", - "message": "Kan inte redigera profil. Var god försök igen." - }, - "sign_out": { - "title": "Logga ut", - "message": "Är du säker på att du vill logga ut?", - "confirm": "Logga ut" - }, - "block_domain": { - "title": "Är du verkligen, verkligen säker på att du vill blockera hela %s? I de flesta fall är några riktade blockeringar eller nedtystade konton tillräckligt och att föredra. Du kommer inte se innehåll från den domänen och dina följare från den domänen kommer att tas bort.", - "block_entire_domain": "Blockera domän" - }, - "save_photo_failure": { - "title": "Spara foto misslyckades", - "message": "Aktivera åtkomst till Bilder för att spara bilden." - }, - "delete_post": { - "title": "Radera inlägg", - "message": "Är du säker på att du vill radera detta inlägg?" - }, - "clean_cache": { - "title": "Rensa cache", - "message": "Rensade %s cache." - } - }, - "controls": { - "actions": { - "back": "Tillbaka", - "next": "Nästa", - "previous": "Föregående", - "open": "Öppna", - "add": "Lägg till", - "remove": "Radera", - "edit": "Redigera", - "save": "Spara", - "ok": "OK", - "done": "Klar", - "confirm": "Bekräfta", - "continue": "Fortsätt", - "compose": "Skriv", - "cancel": "Avbryt", - "discard": "Släng", - "try_again": "Försök igen", - "take_photo": "Ta foto", - "save_photo": "Spara foto", - "copy_photo": "Kopiera foto", - "sign_in": "Logga in", - "sign_up": "Registrera dig", - "see_more": "Visa mer", - "preview": "Förhandsvisa", - "share": "Dela", - "share_user": "Dela %s", - "share_post": "Dela inlägg", - "open_in_safari": "Öppna i Safari", - "open_in_browser": "Öppna i webbläsare", - "find_people": "Hitta personer att följa", - "manually_search": "Sök manuellt istället", - "skip": "Hoppa över", - "reply": "Svara", - "report_user": "Rapportera %s", - "block_domain": "Blockera %s", - "unblock_domain": "Avblockera %s", - "settings": "Inställningar", - "delete": "Radera" - }, - "tabs": { - "home": "Hem", - "search": "Sök", - "notification": "Notis", - "profile": "Profil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Växla till %s", - "compose_new_post": "Skriv nytt inlägg", - "show_favorites": "Visa favoriter", - "open_settings": "Öppna inställningar" - }, - "timeline": { - "previous_status": "Föregående inlägg", - "next_status": "Nästa inlägg", - "open_status": "Öppna inlägg", - "open_author_profile": "Öppna författarens profil", - "open_reblogger_profile": "Öppna ompostarens profil", - "reply_status": "Svara på inlägg", - "toggle_reblog": "Växla ompostning på inlägg", - "toggle_favorite": "Växla favorit på inlägg", - "toggle_content_warning": "Växla innehållsvarning", - "preview_image": "Förhandsgranska bild" - }, - "segmented_control": { - "previous_section": "Föregående avsnitt", - "next_section": "Nästa avsnitt" - } - }, - "status": { - "user_reblogged": "%s ompostade", - "user_replied_to": "Svarade på %s", - "show_post": "Visa inlägg", - "show_user_profile": "Visa användarprofil", - "content_warning": "Innehållsvarning", - "sensitive_content": "Känsligt innehåll", - "media_content_warning": "Tryck var som helst för att visa", - "tap_to_reveal": "Tryck för att visa", - "poll": { - "vote": "Rösta", - "closed": "Stängd" - }, - "actions": { - "reply": "Svara", - "reblog": "Omposta", - "unreblog": "Ångra ompostning", - "favorite": "Favorit", - "unfavorite": "Ta bort favorit", - "menu": "Meny", - "hide": "Dölj", - "show_image": "Visa bild", - "show_gif": "Visa GIF", - "show_video_player": "Visa videospelare", - "tap_then_hold_to_show_menu": "Tryck och håll ned för att visa menyn" - }, - "tag": { - "url": "URL", - "mention": "Omnämn", - "link": "Länk", - "hashtag": "Hashtagg", - "email": "E-post", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen.", - "private": "Endast deras följare kan se detta inlägg.", - "private_from_me": "Bara mina följare kan se det här inlägget.", - "direct": "Endast omnämnda användare kan se detta inlägg." - } - }, - "friendship": { - "follow": "Följ", - "following": "Följer", - "request": "Följ", - "pending": "Väntande", - "block": "Blockera", - "block_user": "Blockera %s", - "block_domain": "Blockera %s", - "unblock": "Avblockera", - "unblock_user": "Avblockera %s", - "blocked": "Blockerad", - "mute": "Tysta", - "mute_user": "Tysta %s", - "unmute": "Avtysta", - "unmute_user": "Avtysta %s", - "muted": "Tystad", - "edit_info": "Redigera info" - }, - "timeline": { - "filtered": "Filtrerat", - "timestamp": { - "now": "Nu" - }, - "loader": { - "load_missing_posts": "Ladda saknade inlägg", - "loading_missing_posts": "Laddar saknade inlägg...", - "show_more_replies": "Visa fler svar" - }, - "header": { - "no_status_found": "Inga inlägg hittades", - "blocking_warning": "Du kan inte visa användarens profil\nförrän du avblockerar dem.\nDin profil ser ut så här för dem.", - "user_blocking_warning": "Du kan inte visa %ss profil\nförrän du avblockerar dem.\nDin profil ser ut så här för dem.", - "blocked_warning": "Du kan inte visa den här användarens profil\nförrän de avblockerar dig.", - "user_blocked_warning": "Du kan inte visa %ss profil\nförrän de avblockerar dig.", - "suspended_warning": "Denna användare har blivit avstängd.", - "user_suspended_warning": "%ss konto har blivit avstängt." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Socialt nätverkande\ntillbaka i dina händer.", - "get_started": "Kom igång", - "log_in": "Logga in" - }, - "server_picker": { - "title": "Mastodon utgörs av användare på olika servrar.", - "subtitle": "Välj en server baserat på dina intressen, region eller ett allmänt syfte.", - "subtitle_extend": "Välj en server baserat på dina intressen, region eller ett allmänt syfte. Varje server drivs av en helt oberoende organisation eller individ.", - "button": { - "category": { - "all": "Alla", - "all_accessiblity_description": "Kategori: Alla", - "academia": "vetenskap", - "activism": "aktivism", - "food": "mat", - "furry": "furry", - "games": "spel", - "general": "allmänt", - "journalism": "journalistik", - "lgbt": "lgbt", - "regional": "regionalt", - "art": "konst", - "music": "musik", - "tech": "teknik" - }, - "see_less": "Visa mindre", - "see_more": "Visa mer" - }, - "label": { - "language": "SPRÅK", - "users": "ANVÄNDARE", - "category": "KATEGORI" - }, - "input": { - "placeholder": "Sök gemenskaper", - "search_servers_or_enter_url": "Sök gemenskaper eller ange URL" - }, - "empty_state": { - "finding_servers": "Söker tillgängliga servrar...", - "bad_network": "Något gick fel när data laddades. Försök igen eller kontrollera din internetanslutning.", - "no_results": "Inga resultat" - } - }, - "register": { - "title": "Låt oss få igång dig på %s", - "input": { - "avatar": { - "delete": "Radera" - }, - "username": { - "placeholder": "användarnamn", - "duplicate_prompt": "Det här användarnamnet är redan taget." - }, - "display_name": { - "placeholder": "visningsnamn" - }, - "email": { - "placeholder": "e-post" - }, - "password": { - "placeholder": "lösenord", - "require": "Ditt lösenord behöver minst:", - "character_limit": "8 tecken", - "accessibility": { - "checked": "markerad", - "unchecked": "avmarkerad" - }, - "hint": "Ditt lösenord måste bestå av minst 8 tecken" - }, - "invite": { - "registration_user_invite_request": "Varför vill du gå med?" - } - }, - "error": { - "item": { - "username": "Användarnamn", - "email": "E-post", - "password": "Lösenord", - "agreement": "Avtal", - "locale": "Språk", - "reason": "Anledning" - }, - "reason": { - "blocked": "%s innehåller en icke tillåten e-postleverantör", - "unreachable": "%s verkar inte existera", - "taken": "%s används redan", - "reserved": "%s är ett reserverat nyckelord", - "accepted": "%s måste godkännas", - "blank": "%s krävs", - "invalid": "%s är ogiltig", - "too_long": "%s är för långt", - "too_short": "%s är för kort", - "inclusion": "%s är inte ett värde som stöds" - }, - "special": { - "username_invalid": "Användarnamnet kan bara innehålla alfanumeriska tecken och understreck", - "username_too_long": "Användarnamnet är för långt (kan inte vara längre än 30 tecken)", - "email_invalid": "Detta är inte en giltig e-postadress", - "password_too_short": "Lösenordet är för kort (det måste vara minst 8 tecken)" - } - } - }, - "server_rules": { - "title": "Några grundregler.", - "subtitle": "Dessa sätts och verkställs av moderatorerna på %s.", - "prompt": "Genom att fortsätta omfattas du av villkoren för tjänsten och sekretesspolicyn för %s.", - "terms_of_service": "användarvillkor", - "privacy_policy": "integritetspolicy", - "button": { - "confirm": "Jag godkänner" - } - }, - "confirm_email": { - "title": "En sista sak.", - "subtitle": "Tryck på länken vi e-postade till dig för att verifiera ditt konto.", - "button": { - "open_email_app": "Öppna e-postappen", - "resend": "Skicka igen" - }, - "dont_receive_email": { - "title": "Kolla din e-post", - "description": "Kontrollera om din e-postadress är korrekt samt din skräppostmapp om du inte har gjort det.", - "resend_email": "Skicka e-postmeddelande igen" - }, - "open_email_app": { - "title": "Kolla din inkorg.", - "description": "Vi har precis skickat ett e-postmeddelande till dig. Kontrollera din skräpmapp om du inte har gjort det.", - "mail": "E-post", - "open_email_client": "Öppna e-postklient" - } - }, - "home_timeline": { - "title": "Hem", - "navigation_bar_state": { - "offline": "Offline", - "new_posts": "Nya inlägg", - "published": "Publicerat!", - "Publishing": "Publicerar inlägget...", - "accessibility": { - "logo_label": "Logo-knapp", - "logo_hint": "Tryck för att bläddra till toppen och tryck igen för föregående plats" - } - } - }, - "suggestion_account": { - "title": "Hitta personer att följa", - "follow_explain": "När du följer någon, kommer du att se deras inlägg i ditt hemflöde." - }, - "compose": { - "title": { - "new_post": "Nytt inlägg", - "new_reply": "Nytt svar" - }, - "media_selection": { - "camera": "Ta foto", - "photo_library": "Fotobibliotek", - "browse": "Bläddra" - }, - "content_input_placeholder": "Skriv eller klistra in vad du har på hjärtat", - "compose_action": "Publicera", - "replying_to_user": "svarar %s", - "attachment": { - "photo": "foto", - "video": "video", - "attachment_broken": "Denna %s är trasig och kan inte\nladdas upp till Mastodon.", - "description_photo": "Beskriv fotot för synskadade...", - "description_video": "Beskriv videon för de synskadade..." - }, - "poll": { - "duration_time": "Längd: %s", - "thirty_minutes": "30 minuter", - "one_hour": "1 timme", - "six_hours": "6 timmar", - "one_day": "1 dag", - "three_days": "3 dagar", - "seven_days": "7 dagar", - "option_number": "Alternativ %ld" - }, - "content_warning": { - "placeholder": "Skriv en noggrann varning här..." - }, - "visibility": { - "public": "Offentlig", - "unlisted": "Olistad", - "private": "Endast följare", - "direct": "Bara personer jag nämner" - }, - "auto_complete": { - "space_to_add": "Mellanslag för att lägga till" - }, - "accessibility": { - "append_attachment": "Lägg till bilaga", - "append_poll": "Lägg till omröstning", - "remove_poll": "Ta bort omröstning", - "custom_emoji_picker": "Anpassad emoji-väljare", - "enable_content_warning": "Aktivera innehållsvarning", - "disable_content_warning": "Inaktivera innehållsvarning", - "post_visibility_menu": "Inläggssynlighetsmeny" - }, - "keyboard": { - "discard_post": "Släng inlägget", - "publish_post": "Publicera inlägget", - "toggle_poll": "Växla omröstning", - "toggle_content_warning": "Växla innehållsvarning", - "append_attachment_entry": "Lägg till bilaga - %s", - "select_visibility_entry": "Välj synlighet - %s" - } - }, - "profile": { - "dashboard": { - "posts": "inlägg", - "following": "följer", - "followers": "följare" - }, - "fields": { - "add_row": "Lägg till rad", - "placeholder": { - "label": "Etikett", - "content": "Innehåll" - } - }, - "segmented_control": { - "posts": "Inlägg", - "replies": "Svar", - "posts_and_replies": "Inlägg och svar", - "media": "Media", - "about": "Om" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Tysta konto", - "message": "Bekräfta för att tysta %s" - }, - "confirm_unmute_user": { - "title": "Avtysta konto", - "message": "Bekräfta för att avtysta %s" - }, - "confirm_block_user": { - "title": "Blockera konto", - "message": "Bekräfta för att blockera %s" - }, - "confirm_unblock_user": { - "title": "Avblockera konto", - "message": "Bekräfta för att avblockera %s" - } - }, - "accessibility": { - "show_avatar_image": "Visa profilbild", - "edit_avatar_image": "Redigera profilbild", - "show_banner_image": "Visa banner", - "double_tap_to_open_the_list": "Dubbeltryck för att öppna listan" - } - }, - "follower": { - "footer": "Följare från andra servrar visas inte." - }, - "following": { - "footer": "Följda på andra servrar visas inte." - }, - "search": { - "title": "Sök", - "search_bar": { - "placeholder": "Sök hashtaggar och användare", - "cancel": "Avbryt" - }, - "recommend": { - "button_text": "Visa alla", - "hash_tag": { - "title": "Trendar på Mastodon", - "description": "Hashtaggar som får en hel del uppmärksamhet", - "people_talking": "%s personer diskuterar" - }, - "accounts": { - "title": "Konton som du kanske gillar", - "description": "Du kanske vill följa dessa konton", - "follow": "Följ" - } - }, - "searching": { - "segment": { - "all": "Allt", - "people": "Personer", - "hashtags": "Hashtaggar", - "posts": "Inlägg" - }, - "empty_state": { - "no_results": "Inga resultat" - }, - "recent_search": "Senaste sökningarna", - "clear": "Rensa" - } - }, - "discovery": { - "tabs": { - "posts": "Inlägg", - "hashtags": "Hashtaggar", - "news": "Nyheter", - "community": "Server", - "for_you": "För dig" - }, - "intro": "Detta är de inlägg som engagerar i ditt hörn av Mastodon." - }, - "favorite": { - "title": "Dina favoriter" - }, - "notification": { - "title": { - "Everything": "Allting", - "Mentions": "Omnämningar" - }, - "notification_description": { - "followed_you": "följde dig", - "favorited_your_post": "favoriserade ditt inlägg", - "reblogged_your_post": "ompostade ditt inlägg", - "mentioned_you": "nämnde dig", - "request_to_follow_you": "begär att följa dig", - "poll_has_ended": "omröstningen har avslutats" - }, - "keyobard": { - "show_everything": "Visa allt", - "show_mentions": "Visa omnämningar" - } - }, - "thread": { - "back_title": "Inlägg", - "title": "Inlägg från %s" - }, - "settings": { - "title": "Inställningar", - "section": { - "appearance": { - "title": "Utseende", - "automatic": "Automatisk", - "light": "Alltid ljus", - "dark": "Alltid mörk" - }, - "look_and_feel": { - "title": "Utseende och känsla", - "use_system": "Följ systeminställningarna", - "really_dark": "Verkligen mörk", - "sorta_dark": "Ganska mörk", - "light": "Ljust" - }, - "notifications": { - "title": "Notiser", - "favorites": "Favoriserar mitt inlägg", - "follows": "Följer mig", - "boosts": "Ompostar mitt inlägg", - "mentions": "Omnämner mig", - "trigger": { - "anyone": "alla", - "follower": "en följare", - "follow": "någon jag följer", - "noone": "ingen", - "title": "Meddela mig när" - } - }, - "preference": { - "title": "Inställningar", - "true_black_dark_mode": "True black-mörkt läge", - "disable_avatar_animation": "Inaktivera animerade avatarer", - "disable_emoji_animation": "Inaktivera animerade emojis", - "using_default_browser": "Använd standardwebbläsare för att öppna länkar", - "open_links_in_mastodon": "Öppna länkar i Mastodon" - }, - "boring_zone": { - "title": "Den tråkiga zonen", - "account_settings": "Kontoinställningar", - "terms": "Användarvillkor", - "privacy": "Integritetspolicy" - }, - "spicy_zone": { - "title": "Den spännande zonen", - "clear": "Rensa mediacache", - "signout": "Logga ut" - } - }, - "footer": { - "mastodon_description": "Mastodon är programvara med öppen källkod. Du kan rapportera problem via GitHub på %s (%s)" - }, - "keyboard": { - "close_settings_window": "Stäng inställningsfönstret" - } - }, - "report": { - "title_report": "Rapportera", - "title": "Rapportera %s", - "step1": "Steg 1 av 2", - "step2": "Steg 2 av 2", - "content1": "Finns det några andra inlägg du vill lägga till i rapporten?", - "content2": "Finns det något som moderatorerna borde känna till om denna rapport?", - "report_sent_title": "Tack för din rapport, vi ska titta på det.", - "send": "Skicka rapport", - "skip_to_send": "Skicka utan kommentar", - "text_placeholder": "Skriv eller klistra in ytterligare kommentarer", - "reported": "RAPPORTERAD", - "step_one": { - "step_1_of_4": "Steg 1 av 4", - "whats_wrong_with_this_post": "Vad är fel med det här inlägget?", - "whats_wrong_with_this_account": "Vad är fel med det här kontot?", - "whats_wrong_with_this_username": "Vad är fel med %s?", - "select_the_best_match": "Välj den bästa träffen", - "i_dont_like_it": "Jag tycker inte om det", - "it_is_not_something_you_want_to_see": "Det är inget som du vill se", - "its_spam": "Det är skräppost", - "malicious_links_fake_engagement_or_repetetive_replies": "Skadliga länkar, bedrägligt beteende eller repetitiva svar", - "it_violates_server_rules": "Det bryter mot serverns regler", - "you_are_aware_that_it_breaks_specific_rules": "Du är medveten om att det bryter mot specifika regler", - "its_something_else": "Det är något annat", - "the_issue_does_not_fit_into_other_categories": "Frågan passar inte in i andra kategorier" - }, - "step_two": { - "step_2_of_4": "Steg 2 av 4", - "which_rules_are_being_violated": "Vilka regler överträds?", - "select_all_that_apply": "Välj allt som stämmer", - "i_just_don’t_like_it": "Jag tycker bara inte om det" - }, - "step_three": { - "step_3_of_4": "Steg 3 av 4", - "are_there_any_posts_that_back_up_this_report": "Finns det några inlägg som stöder denna rapport?", - "select_all_that_apply": "Välj allt som stämmer" - }, - "step_four": { - "step_4_of_4": "Steg 4 av 4", - "is_there_anything_else_we_should_know": "Finns det något annat vi borde veta?" - }, - "step_final": { - "dont_want_to_see_this": "Vill du inte se det här?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "När du ser något som du inte gillar på Mastodon kan du ta bort personen från din upplevelse.", - "unfollow": "Avfölj", - "unfollowed": "Slutade följa", - "unfollow_user": "Avfölj %s", - "mute_user": "Tysta %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade.", - "block_user": "Blockera %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Stäng förhandsvisning", - "show_next": "Visa nästa", - "show_previous": "Visa föregående" - } - }, - "account_list": { - "tab_bar_hint": "Nuvarande vald profil: %s. Dubbeltryck och håll för att visa kontoväxlare", - "dismiss_account_switcher": "Stäng kontoväxlare", - "add_account": "Lägg till konto" - }, - "wizard": { - "new_in_mastodon": "Nytt i Mastodon", - "multiple_account_switch_intro_description": "Växla mellan flera konton genom att hålla inne profilknappen.", - "accessibility_hint": "Dubbeltryck för att avvisa den här guiden" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json b/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json deleted file mode 100644 index 6073413d8..000000000 --- a/Localization/StringsConvertor/input/sv_SE/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Används för att ta foto till inlägg", - "NSPhotoLibraryAddUsageDescription": "Används för att spara foto till bildbiblioteket", - "NewPostShortcutItemTitle": "Nytt inlägg", - "SearchShortcutItemTitle": "Sök" -} diff --git a/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict b/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict deleted file mode 100644 index 4b4d47e84..000000000 --- a/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld การแจ้งเตือนที่ยังไม่ได้อ่าน - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - ขีดจำกัดการป้อนข้อมูลเกิน %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ตัวอักษร - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - ขีดจำกัดการป้อนข้อมูลคงเหลือ %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ตัวอักษร - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - โพสต์ - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld โพสต์ - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld รายการโปรด - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld การดัน - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld การตอบกลับ - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld การลงคะแนน - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ผู้ลงคะแนน - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld คนกำลังพูดคุย - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld กำลังติดตาม - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ผู้ติดตาม - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld ปี - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld เดือน - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld วัน - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld ชั่วโมง - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld นาที - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - เหลืออีก %ld วินาที - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ปีที่แล้ว - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld เดือนที่แล้ว - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld วันที่แล้ว - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ชั่วโมงที่แล้ว - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld นาทีที่แล้ว - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld วินาทีที่แล้ว - - - - diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json deleted file mode 100644 index 01ccb3514..000000000 --- a/Localization/StringsConvertor/input/th_TH/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "โปรดลองอีกครั้ง", - "please_try_again_later": "โปรดลองอีกครั้งในภายหลัง" - }, - "sign_up_failure": { - "title": "การลงทะเบียนล้มเหลว" - }, - "server_error": { - "title": "ข้อผิดพลาดเซิร์ฟเวอร์" - }, - "vote_failure": { - "title": "การลงคะแนนล้มเหลว", - "poll_ended": "การสำรวจความคิดเห็นได้สิ้นสุดแล้ว" - }, - "discard_post_content": { - "title": "ละทิ้งแบบร่าง", - "message": "ยืนยันที่จะละทิ้งเนื้อหาโพสต์ที่เขียน" - }, - "publish_post_failure": { - "title": "การเผยแพร่ล้มเหลว", - "message": "ไม่สามารถเผยแพร่โพสต์\nโปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ", - "attachments_message": { - "video_attach_with_photo": "ไม่สามารถแนบวิดีโอกับโพสต์ที่มีภาพอยู่แล้ว", - "more_than_one_video": "ไม่สามารถแนบมากกว่าหนึ่งวิดีโอ" - } - }, - "edit_profile_failure": { - "title": "ข้อผิดพลาดการแก้ไขโปรไฟล์", - "message": "ไม่สามารถแก้ไขโปรไฟล์ โปรดลองอีกครั้ง" - }, - "sign_out": { - "title": "ลงชื่อออก", - "message": "คุณแน่ใจหรือไม่ว่าต้องการลงชื่อออก?", - "confirm": "ลงชื่อออก" - }, - "block_domain": { - "title": "คุณแน่ใจจริง ๆ หรือไม่ว่าต้องการปิดกั้นทั้ง %s? ในกรณีส่วนใหญ่ การปิดกั้นหรือการซ่อนแบบกำหนดเป้าหมายไม่กี่รายการนั้นเพียงพอและเป็นที่นิยม คุณจะไม่เห็นเนื้อหาจากโดเมนนั้นและจะเอาผู้ติดตามใดก็ตามของคุณจากโดเมนนั้นออก", - "block_entire_domain": "ปิดกั้นโดเมน" - }, - "save_photo_failure": { - "title": "การบันทึกรูปภาพล้มเหลว", - "message": "โปรดเปิดใช้งานสิทธิอนุญาตการเข้าถึงคลังรูปภาพเพื่อบันทึกรูปภาพ" - }, - "delete_post": { - "title": "ลบโพสต์", - "message": "คุณแน่ใจหรือไม่ว่าต้องการลบโพสต์นี้?" - }, - "clean_cache": { - "title": "ล้างแคช", - "message": "ล้างแคช %s สำเร็จ" - } - }, - "controls": { - "actions": { - "back": "ย้อนกลับ", - "next": "ถัดไป", - "previous": "ก่อนหน้า", - "open": "เปิด", - "add": "เพิ่ม", - "remove": "เอาออก", - "edit": "แก้ไข", - "save": "บันทึก", - "ok": "ตกลง", - "done": "เสร็จสิ้น", - "confirm": "ยืนยัน", - "continue": "ดำเนินการต่อ", - "compose": "เขียน", - "cancel": "ยกเลิก", - "discard": "ละทิ้ง", - "try_again": "ลองอีกครั้ง", - "take_photo": "ถ่ายรูป", - "save_photo": "บันทึกรูปภาพ", - "copy_photo": "คัดลอกรูปภาพ", - "sign_in": "ลงชื่อเข้า", - "sign_up": "ลงทะเบียน", - "see_more": "ดูเพิ่มเติม", - "preview": "แสดงตัวอย่าง", - "share": "แบ่งปัน", - "share_user": "แบ่งปัน %s", - "share_post": "แบ่งปันโพสต์", - "open_in_safari": "เปิดใน Safari", - "open_in_browser": "เปิดในเบราว์เซอร์", - "find_people": "ค้นหาผู้คนที่จะติดตาม", - "manually_search": "ค้นหาด้วยตนเองแทน", - "skip": "ข้าม", - "reply": "ตอบกลับ", - "report_user": "รายงาน %s", - "block_domain": "ปิดกั้น %s", - "unblock_domain": "เลิกปิดกั้น %s", - "settings": "การตั้งค่า", - "delete": "ลบ" - }, - "tabs": { - "home": "หน้าแรก", - "search": "ค้นหา", - "notification": "การแจ้งเตือน", - "profile": "โปรไฟล์" - }, - "keyboard": { - "common": { - "switch_to_tab": "สลับไปยัง %s", - "compose_new_post": "เขียนโพสต์ใหม่", - "show_favorites": "แสดงรายการโปรด", - "open_settings": "เปิดการตั้งค่า" - }, - "timeline": { - "previous_status": "โพสต์ก่อนหน้า", - "next_status": "โพสต์ถัดไป", - "open_status": "เปิดโพสต์", - "open_author_profile": "เปิดโปรไฟล์ของผู้สร้าง", - "open_reblogger_profile": "เปิดโปรไฟล์ของผู้ดัน", - "reply_status": "ตอบกลับโพสต์", - "toggle_reblog": "เปิด/ปิดการดันในโพสต์", - "toggle_favorite": "เปิด/ปิดรายการโปรดในโพสต์", - "toggle_content_warning": "เปิด/ปิดคำเตือนเนื้อหา", - "preview_image": "แสดงตัวอย่างภาพ" - }, - "segmented_control": { - "previous_section": "ส่วนก่อนหน้า", - "next_section": "ส่วนถัดไป" - } - }, - "status": { - "user_reblogged": "%s ได้ดัน", - "user_replied_to": "ตอบกลับ %s", - "show_post": "แสดงโพสต์", - "show_user_profile": "แสดงโปรไฟล์ผู้ใช้", - "content_warning": "คำเตือนเนื้อหา", - "sensitive_content": "เนื้อหาที่ละเอียดอ่อน", - "media_content_warning": "แตะที่ใดก็ตามเพื่อเปิดเผย", - "tap_to_reveal": "แตะเพื่อเปิดเผย", - "poll": { - "vote": "ลงคะแนน", - "closed": "ปิดแล้ว" - }, - "actions": { - "reply": "ตอบกลับ", - "reblog": "ดัน", - "unreblog": "เลิกทำการดัน", - "favorite": "ชื่นชอบ", - "unfavorite": "เลิกชื่นชอบ", - "menu": "เมนู", - "hide": "ซ่อน", - "show_image": "แสดงภาพ", - "show_gif": "แสดง GIF", - "show_video_player": "แสดงตัวเล่นวิดีโอ", - "tap_then_hold_to_show_menu": "แตะค้างไว้เพื่อแสดงเมนู" - }, - "tag": { - "url": "URL", - "mention": "กล่าวถึง", - "link": "ลิงก์", - "hashtag": "แฮชแท็ก", - "email": "อีเมล", - "emoji": "อีโมจิ" - }, - "visibility": { - "unlisted": "ทุกคนสามารถเห็นโพสต์นี้แต่ไม่แสดงในเส้นเวลาสาธารณะ", - "private": "เฉพาะผู้ติดตามของเขาเท่านั้นที่สามารถเห็นโพสต์นี้", - "private_from_me": "เฉพาะผู้ติดตามของฉันเท่านั้นที่สามารถเห็นโพสต์นี้", - "direct": "เฉพาะผู้ใช้ที่กล่าวถึงเท่านั้นที่สามารถเห็นโพสต์นี้" - } - }, - "friendship": { - "follow": "ติดตาม", - "following": "กำลังติดตาม", - "request": "ขอ", - "pending": "รอดำเนินการ", - "block": "ปิดกั้น", - "block_user": "ปิดกั้น %s", - "block_domain": "ปิดกั้น %s", - "unblock": "เลิกปิดกั้น", - "unblock_user": "เลิกปิดกั้น %s", - "blocked": "ปิดกั้นอยู่", - "mute": "ซ่อน", - "mute_user": "ซ่อน %s", - "unmute": "เลิกซ่อน", - "unmute_user": "เลิกซ่อน %s", - "muted": "ซ่อนอยู่", - "edit_info": "แก้ไขข้อมูล" - }, - "timeline": { - "filtered": "กรองอยู่", - "timestamp": { - "now": "ตอนนี้" - }, - "loader": { - "load_missing_posts": "โหลดโพสต์ที่ขาดหายไป", - "loading_missing_posts": "กำลังโหลดโพสต์ที่ขาดหายไป...", - "show_more_replies": "แสดงการตอบกลับเพิ่มเติม" - }, - "header": { - "no_status_found": "ไม่พบโพสต์", - "blocking_warning": "คุณไม่สามารถดูโปรไฟล์ของผู้ใช้นี้\nจนกว่าคุณจะเลิกปิดกั้นเขา\nโปรไฟล์ของคุณมีลักษณะเช่นนี้สำหรับเขา", - "user_blocking_warning": "คุณไม่สามารถดูโปรไฟล์ของ %s\nจนกว่าคุณจะเลิกปิดกั้นเขา\nโปรไฟล์ของคุณมีลักษณะเช่นนี้สำหรับเขา", - "blocked_warning": "คุณไม่สามารถดูโปรไฟล์ของผู้ใช้นี้\nจนกว่าเขาจะเลิกปิดกั้นคุณ", - "user_blocked_warning": "คุณไม่สามารถดูโปรไฟล์ของ %s\nจนกว่าเขาจะเลิกปิดกั้นคุณ", - "suspended_warning": "ผู้ใช้นี้ถูกระงับการใช้งาน", - "user_suspended_warning": "บัญชีของ %s ถูกระงับการใช้งาน" - } - } - } - }, - "scene": { - "welcome": { - "slogan": "ให้เครือข่ายสังคม\nกลับมาอยู่ในมือของคุณ", - "get_started": "เริ่มต้นใช้งาน", - "log_in": "เข้าสู่ระบบ" - }, - "server_picker": { - "title": "Mastodon ประกอบด้วยผู้ใช้ในเซิร์ฟเวอร์ต่าง ๆ", - "subtitle": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ", - "subtitle_extend": "เลือกเซิร์ฟเวอร์ตามความสนใจ, ภูมิภาค หรือวัตถุประสงค์ทั่วไปของคุณ แต่ละเซิร์ฟเวอร์ดำเนินการโดยองค์กรหรือบุคคลที่เป็นอิสระโดยสิ้นเชิง", - "button": { - "category": { - "all": "ทั้งหมด", - "all_accessiblity_description": "หมวดหมู่: ทั้งหมด", - "academia": "สถาบันการศึกษา", - "activism": "กิจกรรมเพื่อการเปลี่ยนแปลง", - "food": "อาหาร", - "furry": "สัตว์ขนยาว", - "games": "เกม", - "general": "ทั่วไป", - "journalism": "วารสารศาสตร์", - "lgbt": "lgbt", - "regional": "ภูมิภาค", - "art": "ศิลปะ", - "music": "ดนตรี", - "tech": "เทคโนโลยี" - }, - "see_less": "ดูน้อยลง", - "see_more": "ดูเพิ่มเติม" - }, - "label": { - "language": "ภาษา", - "users": "ผู้ใช้", - "category": "หมวดหมู่" - }, - "input": { - "placeholder": "ค้นหาเซิร์ฟเวอร์", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", - "bad_network": "มีบางอย่างผิดพลาดขณะโหลดข้อมูล ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ", - "no_results": "ไม่มีผลลัพธ์" - } - }, - "register": { - "title": "มาตั้งค่าของคุณใน %s กันเลย", - "input": { - "avatar": { - "delete": "ลบ" - }, - "username": { - "placeholder": "ชื่อผู้ใช้", - "duplicate_prompt": "ชื่อผู้ใช้นี้ถูกใช้ไปแล้ว" - }, - "display_name": { - "placeholder": "ชื่อที่แสดง" - }, - "email": { - "placeholder": "อีเมล" - }, - "password": { - "placeholder": "รหัสผ่าน", - "require": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:", - "character_limit": "8 ตัวอักษร", - "accessibility": { - "checked": "กาเครื่องหมายแล้ว", - "unchecked": "ไม่ได้กาเครื่องหมาย" - }, - "hint": "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อยแปดตัวอักษร" - }, - "invite": { - "registration_user_invite_request": "ทำไมคุณจึงต้องการเข้าร่วม?" - } - }, - "error": { - "item": { - "username": "ชื่อผู้ใช้", - "email": "อีเมล", - "password": "รหัสผ่าน", - "agreement": "ข้อตกลง", - "locale": "ตำแหน่งที่ตั้ง", - "reason": "เหตุผล" - }, - "reason": { - "blocked": "%s มีผู้ให้บริการอีเมลที่ไม่ได้รับอนุญาต", - "unreachable": "ดูเหมือนว่า %s จะไม่มีอยู่", - "taken": "%s ถูกใช้งานแล้ว", - "reserved": "%s เป็นคำสงวน", - "accepted": "ต้องยอมรับ %s", - "blank": "ต้องการ %s", - "invalid": "%s ไม่ถูกต้อง", - "too_long": "%s ยาวเกินไป", - "too_short": "%s สั้นเกินไป", - "inclusion": "%s ไม่ใช่ค่าที่รองรับ" - }, - "special": { - "username_invalid": "ชื่อผู้ใช้ต้องมีเฉพาะตัวอักษรและตัวเลขและขีดล่างเท่านั้น", - "username_too_long": "ชื่อผู้ใช้ยาวเกินไป (ไม่สามารถยาวเกิน 30 ตัวอักษร)", - "email_invalid": "นี่ไม่ใช่ที่อยู่อีเมลที่ถูกต้อง", - "password_too_short": "รหัสผ่านสั้นเกินไป (ต้องมีอย่างน้อย 8 ตัวอักษร)" - } - } - }, - "server_rules": { - "title": "กฎพื้นฐานบางประการ", - "subtitle": "มีการตั้งและบังคับใช้กฎเหล่านี้โดยผู้ควบคุมของ %s", - "prompt": "เมื่อคุณดำเนินการต่อ คุณอยู่ภายใต้เงื่อนไขการให้บริการและนโยบายความเป็นส่วนตัวสำหรับ %s", - "terms_of_service": "เงื่อนไขการให้บริการ", - "privacy_policy": "นโยบายความเป็นส่วนตัว", - "button": { - "confirm": "ฉันเห็นด้วย" - } - }, - "confirm_email": { - "title": "หนึ่งสิ่งสุดท้าย", - "subtitle": "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ", - "button": { - "open_email_app": "เปิดแอปอีเมล", - "resend": "ส่งใหม่" - }, - "dont_receive_email": { - "title": "ตรวจสอบอีเมลของคุณ", - "description": "หากคุณยังไม่ได้รับอีเมล ตรวจสอบว่าที่อยู่อีเมลของคุณถูกต้อง รวมถึงโฟลเดอร์อีเมลขยะของคุณ", - "resend_email": "ส่งอีเมลใหม่" - }, - "open_email_app": { - "title": "ตรวจสอบกล่องขาเข้าของคุณ", - "description": "เราเพิ่งส่งอีเมลหาคุณ หากคุณยังไม่ได้รับอีเมล โปรดตรวจสอบโฟลเดอร์อีเมลขยะ", - "mail": "จดหมาย", - "open_email_client": "เปิดไคลเอ็นต์อีเมล" - } - }, - "home_timeline": { - "title": "หน้าแรก", - "navigation_bar_state": { - "offline": "ออฟไลน์", - "new_posts": "ดูโพสต์ใหม่", - "published": "เผยแพร่แล้ว!", - "Publishing": "กำลังเผยแพร่โพสต์...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "ค้นหาผู้คนที่จะติดตาม", - "follow_explain": "เมื่อคุณติดตามใครสักคน คุณจะเห็นโพสต์ของเขาในฟีดหน้าแรกของคุณ" - }, - "compose": { - "title": { - "new_post": "โพสต์ใหม่", - "new_reply": "การตอบกลับใหม่" - }, - "media_selection": { - "camera": "ถ่ายรูป", - "photo_library": "คลังรูปภาพ", - "browse": "เรียกดู" - }, - "content_input_placeholder": "พิมพ์หรือวางสิ่งที่คุณกำลังคิด", - "compose_action": "เผยแพร่", - "replying_to_user": "กำลังตอบกลับ %s", - "attachment": { - "photo": "รูปภาพ", - "video": "วิดีโอ", - "attachment_broken": "%s นี้เสียหายและไม่สามารถ\nอัปโหลดไปยัง Mastodon", - "description_photo": "อธิบายรูปภาพสำหรับผู้บกพร่องทางการมองเห็น...", - "description_video": "อธิบายวิดีโอสำหรับผู้บกพร่องทางการมองเห็น..." - }, - "poll": { - "duration_time": "ระยะเวลา: %s", - "thirty_minutes": "30 นาที", - "one_hour": "1 ชั่วโมง", - "six_hours": "6 ชั่วโมง", - "one_day": "1 วัน", - "three_days": "3 วัน", - "seven_days": "7 วัน", - "option_number": "ตัวเลือก %ld" - }, - "content_warning": { - "placeholder": "เขียนคำเตือนที่ถูกต้องที่นี่..." - }, - "visibility": { - "public": "สาธารณะ", - "unlisted": "ไม่อยู่ในรายการ", - "private": "ผู้ติดตามเท่านั้น", - "direct": "เฉพาะผู้คนที่ฉันกล่าวถึงเท่านั้น" - }, - "auto_complete": { - "space_to_add": "เว้นวรรคเพื่อเพิ่ม" - }, - "accessibility": { - "append_attachment": "เพิ่มไฟล์แนบ", - "append_poll": "เพิ่มการสำรวจความคิดเห็น", - "remove_poll": "เอาการสำรวจความคิดเห็นออก", - "custom_emoji_picker": "ตัวเลือกอีโมจิที่กำหนดเอง", - "enable_content_warning": "เปิดใช้งานคำเตือนเนื้อหา", - "disable_content_warning": "ปิดใช้งานคำเตือนเนื้อหา", - "post_visibility_menu": "เมนูการมองเห็นโพสต์" - }, - "keyboard": { - "discard_post": "ละทิ้งโพสต์", - "publish_post": "เผยแพร่โพสต์", - "toggle_poll": "เปิด/ปิดการสำรวจความคิดเห็น", - "toggle_content_warning": "เปิด/ปิดคำเตือนเนื้อหา", - "append_attachment_entry": "เพิ่มไฟล์แนบ - %s", - "select_visibility_entry": "เลือกการมองเห็น - %s" - } - }, - "profile": { - "dashboard": { - "posts": "โพสต์", - "following": "กำลังติดตาม", - "followers": "ผู้ติดตาม" - }, - "fields": { - "add_row": "เพิ่มแถว", - "placeholder": { - "label": "ป้ายชื่อ", - "content": "เนื้อหา" - } - }, - "segmented_control": { - "posts": "โพสต์", - "replies": "การตอบกลับ", - "posts_and_replies": "โพสต์และการตอบกลับ", - "media": "สื่อ", - "about": "เกี่ยวกับ" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "ซ่อนบัญชี", - "message": "ยืนยันเพื่อซ่อน %s" - }, - "confirm_unmute_user": { - "title": "เลิกซ่อนบัญชี", - "message": "ยืนยันเพื่อเลิกซ่อน %s" - }, - "confirm_block_user": { - "title": "ปิดกั้นบัญชี", - "message": "ยืนยันเพื่อปิดกั้น %s" - }, - "confirm_unblock_user": { - "title": "เลิกปิดกั้นบัญชี", - "message": "ยืนยันเพื่อเลิกปิดกั้น %s" - } - }, - "accessibility": { - "show_avatar_image": "แสดงภาพประจำตัว", - "edit_avatar_image": "แก้ไขภาพประจำตัว", - "show_banner_image": "แสดงภาพแบนเนอร์", - "double_tap_to_open_the_list": "แตะสองครั้งเพื่อเปิดรายการ" - } - }, - "follower": { - "footer": "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ" - }, - "following": { - "footer": "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ" - }, - "search": { - "title": "ค้นหา", - "search_bar": { - "placeholder": "ค้นหาแฮชแท็กและผู้ใช้", - "cancel": "ยกเลิก" - }, - "recommend": { - "button_text": "ดูทั้งหมด", - "hash_tag": { - "title": "กำลังนิยมใน Mastodon", - "description": "แฮชแท็กที่กำลังได้รับความสนใจมาก", - "people_talking": "%s คนกำลังพูดคุย" - }, - "accounts": { - "title": "บัญชีที่คุณอาจชอบ", - "description": "คุณอาจต้องการติดตามบัญชีเหล่านี้", - "follow": "ติดตาม" - } - }, - "searching": { - "segment": { - "all": "ทั้งหมด", - "people": "ผู้คน", - "hashtags": "แฮชแท็ก", - "posts": "โพสต์" - }, - "empty_state": { - "no_results": "ไม่มีผลลัพธ์" - }, - "recent_search": "การค้นหาล่าสุด", - "clear": "ล้าง" - } - }, - "discovery": { - "tabs": { - "posts": "โพสต์", - "hashtags": "แฮชแท็ก", - "news": "ข่าว", - "community": "ชุมชน", - "for_you": "สำหรับคุณ" - }, - "intro": "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ" - }, - "favorite": { - "title": "รายการโปรดของคุณ" - }, - "notification": { - "title": { - "Everything": "ทุกอย่าง", - "Mentions": "การกล่าวถึง" - }, - "notification_description": { - "followed_you": "ได้ติดตามคุณ", - "favorited_your_post": "ได้ชื่นชอบโพสต์ของคุณ", - "reblogged_your_post": "ได้ดันโพสต์ของคุณ", - "mentioned_you": "ได้กล่าวถึงคุณ", - "request_to_follow_you": "ขอติดตามคุณ", - "poll_has_ended": "การสำรวจความคิดเห็นได้สิ้นสุดแล้ว" - }, - "keyobard": { - "show_everything": "แสดงทุกอย่าง", - "show_mentions": "แสดงการกล่าวถึง" - } - }, - "thread": { - "back_title": "โพสต์", - "title": "โพสต์จาก %s" - }, - "settings": { - "title": "การตั้งค่า", - "section": { - "appearance": { - "title": "ลักษณะที่ปรากฏ", - "automatic": "อัตโนมัติ", - "light": "สว่างเสมอ", - "dark": "มืดเสมอ" - }, - "look_and_feel": { - "title": "ลักษณะที่แสดง", - "use_system": "ใช้ของระบบ", - "really_dark": "มืดมาก", - "sorta_dark": "ค่อนข้างมืด", - "light": "สว่าง" - }, - "notifications": { - "title": "การแจ้งเตือน", - "favorites": "ชื่นชอบโพสต์ของฉัน", - "follows": "ติดตามฉัน", - "boosts": "ดันโพสต์ของฉัน", - "mentions": "กล่าวถึงฉัน", - "trigger": { - "anyone": "ใครก็ตาม", - "follower": "ผู้ติดตาม", - "follow": "ใครก็ตามที่ฉันติดตาม", - "noone": "ไม่มีใคร", - "title": "แจ้งเตือนฉันเมื่อ" - } - }, - "preference": { - "title": "การกำหนดลักษณะ", - "true_black_dark_mode": "โหมดมืดดำสนิท", - "disable_avatar_animation": "ปิดใช้งานภาพประจำตัวแบบเคลื่อนไหว", - "disable_emoji_animation": "ปิดใช้งานอีโมจิแบบเคลื่อนไหว", - "using_default_browser": "ใช้เบราว์เซอร์เริ่มต้นเพื่อเปิดลิงก์", - "open_links_in_mastodon": "เปิดลิงก์ใน Mastodon" - }, - "boring_zone": { - "title": "โซนน่าเบื่อ", - "account_settings": "การตั้งค่าบัญชี", - "terms": "เงื่อนไขการให้บริการ", - "privacy": "นโยบายความเป็นส่วนตัว" - }, - "spicy_zone": { - "title": "โซนเผ็ดร้อน", - "clear": "ล้างแคชสื่อ", - "signout": "ลงชื่อออก" - } - }, - "footer": { - "mastodon_description": "Mastodon เป็นซอฟต์แวร์โอเพนซอร์ส คุณสามารถรายงานปัญหาได้ใน GitHub ที่ %s (%s)" - }, - "keyboard": { - "close_settings_window": "ปิดหน้าต่างการตั้งค่า" - } - }, - "report": { - "title_report": "รายงาน", - "title": "รายงาน %s", - "step1": "ขั้นตอนที่ 1 จาก 2", - "step2": "ขั้นตอนที่ 2 จาก 2", - "content1": "มีโพสต์อื่นใดที่คุณต้องการเพิ่มไปยังรายงานหรือไม่?", - "content2": "มีสิ่งใดที่ผู้ควบคุมควรทราบเกี่ยวกับรายงานนี้หรือไม่?", - "report_sent_title": "ขอบคุณสำหรับการรายงาน เราจะตรวจสอบสิ่งนี้", - "send": "ส่งรายงาน", - "skip_to_send": "ส่งโดยไม่มีความคิดเห็น", - "text_placeholder": "พิมพ์หรือวางความคิดเห็นเพิ่มเติม", - "reported": "รายงานแล้ว", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "ปิดตัวอย่าง", - "show_next": "แสดงถัดไป", - "show_previous": "แสดงก่อนหน้า" - } - }, - "account_list": { - "tab_bar_hint": "โปรไฟล์ที่เลือกในปัจจุบัน: %s แตะสองครั้งแล้วกดค้างไว้เพื่อแสดงตัวสลับบัญชี", - "dismiss_account_switcher": "ปิดตัวสลับบัญชี", - "add_account": "เพิ่มบัญชี" - }, - "wizard": { - "new_in_mastodon": "มาใหม่ใน Mastodon", - "multiple_account_switch_intro_description": "สลับระหว่างหลายบัญชีโดยกดปุ่มโปรไฟล์ค้างไว้", - "accessibility_hint": "แตะสองครั้งเพื่อปิดตัวช่วยสร้างนี้" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/th_TH/ios-infoPlist.json b/Localization/StringsConvertor/input/th_TH/ios-infoPlist.json deleted file mode 100644 index 0eaf8d4bc..000000000 --- a/Localization/StringsConvertor/input/th_TH/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "ใช้เพื่อถ่ายรูปสำหรับโพสต์สถานะ", - "NSPhotoLibraryAddUsageDescription": "ใช้เพื่อบันทึกรูปภาพลงในคลังรูปภาพ", - "NewPostShortcutItemTitle": "โพสต์ใหม่", - "SearchShortcutItemTitle": "ค้นหา" -} diff --git a/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict b/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict deleted file mode 100644 index a512c4a7f..000000000 --- a/Localization/StringsConvertor/input/tr_TR/Localizable.stringsdict +++ /dev/null @@ -1,422 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - Okunmamış 1 bildirim - other - Okunmamış %ld bildirim - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - %#@character_count@ karakter limiti aşıyor - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 karakter - other - %ld karakter - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - %#@character_count@ karakter limiti var - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 karakter - other - %ld karakter - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - gönderi - other - gönderi - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 media - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 gönderi - other - %ld gönderi - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favori - other - %ld favori - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 yeniden paylaşım - other - %ld yeniden paylaşım - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - %ld yanıt - other - %ld yanıt - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 oy - other - %ld oy - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 oy veren - other - %ld oy veren - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 kişi konuşuyor - other - %ld kişi konuşuyor - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 takip edilen - other - %ld takip edilen - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 takipçi - other - %ld takipçi - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 yıl kaldı - other - %ld yıl kaldı - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ay kaldı - other - %ld ay kaldı - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 gün kaldı - other - %ld gün kaldı - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 saat kaldı - other - %ld saat kaldı - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dakika kaldı - other - %ld dakika kaldı - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 saniye kaldı - other - %ld saniye kaldı - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 yıl önce - other - %ld yıl önce - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 ay önce - other - %ld ay önce - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 gün önce - other - %ld gün önce - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 saat önce - other - %ld saat önce - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 dakika önce - other - %ld dakika önce - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 saniye önce - other - %ld saniye önce - - - - diff --git a/Localization/StringsConvertor/input/tr_TR/app.json b/Localization/StringsConvertor/input/tr_TR/app.json deleted file mode 100644 index dd90f0a77..000000000 --- a/Localization/StringsConvertor/input/tr_TR/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Lütfen tekrar deneyin.", - "please_try_again_later": "Lütfen daha sonra tekrar deneyin." - }, - "sign_up_failure": { - "title": "Kaydolma Başarısız" - }, - "server_error": { - "title": "Sunucu Hatası" - }, - "vote_failure": { - "title": "Oy Verme Başarısız", - "poll_ended": "Anket bitti" - }, - "discard_post_content": { - "title": "Taslağı Sil", - "message": "Yazdığın gönderiyi paylaşmadan silmek istiyor musun?" - }, - "publish_post_failure": { - "title": "Paylaşılamadı", - "message": "Gönderi paylaşılamadı. Lütfen internet bağlantını kontrol et.", - "attachments_message": { - "video_attach_with_photo": "İçeriğinde görseller olan bir gönderiye video eklenemez.", - "more_than_one_video": "Gönderiye birden fazla video eklenemez." - } - }, - "edit_profile_failure": { - "title": "Profil Düzenleme Hatası", - "message": "Profil düzenlenemedi. Lütfen tekrar deneyin." - }, - "sign_out": { - "title": "Oturumu Kapat", - "message": "Oturumu kapatmak istediğinize emin misiniz?", - "confirm": "Oturumu Kapat" - }, - "block_domain": { - "title": "%s alan adını tamamen engellemek istediğine gerçekten emin misiniz? Pek çok durumda o alan adından birkaç kişiyi engellemek ve sessize almak yeterlidir ve tercih edilir. Engellediğinizde bu alan adından herhangi bir içerik görmeyeceksiniz ve o alan adından olan takipçileriniz silinecek.", - "block_entire_domain": "Alan Adını Engelle" - }, - "save_photo_failure": { - "title": "Görsel Kaydetme Hatası", - "message": "Görseli kaydetmek için lütfen galeri erişim iznini aktifleştirin." - }, - "delete_post": { - "title": "Gönderiyi Sil", - "message": "Bu gönderiyi silmek istediğinize emin misiniz?" - }, - "clean_cache": { - "title": "Önbelleği Temizle", - "message": "%s boyutunda önbellek temizlendi." - } - }, - "controls": { - "actions": { - "back": "Geri", - "next": "İleri", - "previous": "Önceki", - "open": "Aç", - "add": "Ekle", - "remove": "Kaldır", - "edit": "Düzenle", - "save": "Kaydet", - "ok": "Tamam", - "done": "Kapat", - "confirm": "Onayla", - "continue": "Devam et", - "compose": "Yaz", - "cancel": "İptal et", - "discard": "Vazgeç", - "try_again": "Tekrar Deneyin", - "take_photo": "Fotoğraf Çek", - "save_photo": "Fotoğrafı Kaydet", - "copy_photo": "Fotoğrafı Kopyala", - "sign_in": "Giriş Yap", - "sign_up": "Kaydol", - "see_more": "Daha Fazla Gör", - "preview": "Önizleme", - "share": "Paylaş", - "share_user": "%s ile paylaş", - "share_post": "Gönderiyi Paylaş", - "open_in_safari": "Safari'de Aç", - "open_in_browser": "Tarayıcıda Aç", - "find_people": "Takip etmek için birkaç kişi bul", - "manually_search": "Onun yerine manuel olarak ara", - "skip": "Atla", - "reply": "Yanıtla", - "report_user": "%s kişisini bildir", - "block_domain": "%s kişisini engelle", - "unblock_domain": "%s kişisinin engelini kaldır", - "settings": "Ayarlar", - "delete": "Sil" - }, - "tabs": { - "home": "Ana Sayfa", - "search": "Arama", - "notification": "Bildirimler", - "profile": "Profil" - }, - "keyboard": { - "common": { - "switch_to_tab": "Geç: %s", - "compose_new_post": "Yeni Gönderi Yaz", - "show_favorites": "Favorilerimi Göster", - "open_settings": "Ayarları Aç" - }, - "timeline": { - "previous_status": "Önceki Gönderi", - "next_status": "Sonraki Gönderi", - "open_status": "Gönderiyi Aç", - "open_author_profile": "Yazarın Profilini Aç", - "open_reblogger_profile": "Yeniden Paylaşanın Profilini Aç", - "reply_status": "Gönderiyi Yanıtla", - "toggle_reblog": "Gönderiyi yeniden paylaşma durumunu değiştir", - "toggle_favorite": "Gönderiyi favorileme durumunu değiştir", - "toggle_content_warning": "İçerik Uyarısı durumunu değiştir", - "preview_image": "Görseli Önizle" - }, - "segmented_control": { - "previous_section": "Önceki Seçim", - "next_section": "Sonraki Bölüm" - } - }, - "status": { - "user_reblogged": "%s yeniden paylaştı", - "user_replied_to": "%s kullanıcısına yanıt verdi", - "show_post": "Gönderiyi Göster", - "show_user_profile": "Kullanıcı profilini göster", - "content_warning": "İçerik Uyarısı", - "sensitive_content": "Hassas İçerik", - "media_content_warning": "Göstermek için herhangi bir yere basın", - "tap_to_reveal": "Göstermek için basın", - "poll": { - "vote": "Oy ver", - "closed": "Kapandı" - }, - "actions": { - "reply": "Yanıtla", - "reblog": "Yeniden paylaş", - "unreblog": "Yeniden paylaşımı geri al", - "favorite": "Favorile", - "unfavorite": "Favorilerden Çıkar", - "menu": "Menü", - "hide": "Gizle", - "show_image": "Görüntüyü göster", - "show_gif": "GIF'i göster", - "show_video_player": "Video oynatıcıyı göster", - "tap_then_hold_to_show_menu": "Menüyü göstermek için dokunun ve basılı tutun" - }, - "tag": { - "url": "Bağlantı", - "mention": "Bahset", - "link": "Bağlantı", - "hashtag": "Etiket", - "email": "E-posta", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Bu gönderiyi herkes görebilir, fakat herkese açık zaman tünelinde gösterilmez.", - "private": "Sadece gönderi sahibinin takipçileri bu gönderiyi görebilir.", - "private_from_me": "Sadece benim takipçilerim bu gönderiyi görebilir.", - "direct": "Sadece bahsedilen kullanıcı bu gönderiyi görebilir." - } - }, - "friendship": { - "follow": "Takip et", - "following": "Takip ediliyor", - "request": "İstek", - "pending": "Bekliyor", - "block": "Engelle", - "block_user": "%s kişisini engelle", - "block_domain": "%s kişisini engelle", - "unblock": "Engeli kaldır", - "unblock_user": "%s kişisinin engelini kaldır", - "blocked": "Engellendi", - "mute": "Sessize al", - "mute_user": "Sustur %s", - "unmute": "Susturmayı kaldır", - "unmute_user": "Sesini aç %s", - "muted": "Susturuldu", - "edit_info": "Bilgiyi Düzenle" - }, - "timeline": { - "filtered": "Filtrelenmiş", - "timestamp": { - "now": "Şimdi" - }, - "loader": { - "load_missing_posts": "Daha fazla gönderi yükle", - "loading_missing_posts": "Daha fazla gönderi yükleniyor...", - "show_more_replies": "Daha fazla yanıt görüntüe" - }, - "header": { - "no_status_found": "Hiçbir Gönderi Bulunamadı", - "blocking_warning": "Bu kişinin engelini kaldırana kadar\nonun profilini göremezsiniz.\nBu kişiye göre profiliniz böyle gözüküyor.", - "user_blocking_warning": "%s kişisinin engelini kaldırana kadar\nonun profilini göremezsiniz.\nBu kişiye göre profiliniz böyle gözüküyor.", - "blocked_warning": "Bu kişi sizin engelinizi kaldırana\nkadar onun profilini göremezsiniz.", - "user_blocked_warning": "%s kişisi sizin engelinizi kaldırana\nkadar onun profilini göremezsiniz.", - "suspended_warning": "Bu kullanıcı askıya alındı.", - "user_suspended_warning": "%s kişisinin hesabı askıya alındı." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Sosyal ağ,\ntekrardan ellerinizde.", - "get_started": "Başlayın", - "log_in": "Oturum Aç" - }, - "server_picker": { - "title": "Mastodon, farklı topluluklardaki kullanıcılardan oluşur.", - "subtitle": "İlgi alanlarınıza, bölgenize veya genel amaçlı bir topluluk seçin.", - "subtitle_extend": "İlgi alanlarınıza, bölgenize veya genel amaçlı bir topluluk seçin. Her topluluk tamamen bağımsız bir kuruluş veya kişi tarafından işletilmektedir.", - "button": { - "category": { - "all": "Tümü", - "all_accessiblity_description": "Kategori: Tümü", - "academia": "akademi", - "activism": "aktivizm", - "food": "yiyecek", - "furry": "furry", - "games": "oyunlar", - "general": "genel", - "journalism": "gazetecilik", - "lgbt": "lgbt", - "regional": "bölgesel", - "art": "sanat", - "music": "müzik", - "tech": "teknoloji" - }, - "see_less": "Daha Az Göster", - "see_more": "Daha Fazla Gör" - }, - "label": { - "language": "DİL", - "users": "KULLANICILAR", - "category": "KATEGORİ" - }, - "input": { - "placeholder": "Toplulukları ara", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Mevcut sunucular aranıyor...", - "bad_network": "Veriyi yüklerken bir hata oluştu. Lütfen internet bağlantınızı kontrol edin.", - "no_results": "Sonuç yok" - } - }, - "register": { - "title": "%s için kurulumunuzu yapalım", - "input": { - "avatar": { - "delete": "Sil" - }, - "username": { - "placeholder": "kullanıcı adı", - "duplicate_prompt": "Bu kullanıcı adı alınmış." - }, - "display_name": { - "placeholder": "görünen ad" - }, - "email": { - "placeholder": "e-posta" - }, - "password": { - "placeholder": "parola", - "require": "Parolanızda en azından şunlar olmalı:", - "character_limit": "8 karakter", - "accessibility": { - "checked": "işaretli", - "unchecked": "işaretsiz" - }, - "hint": "Parolanız en az sekiz karakter içermelidir" - }, - "invite": { - "registration_user_invite_request": "Neden katılmak istiyorsun?" - } - }, - "error": { - "item": { - "username": "Kullanıcı adı", - "email": "E-posta", - "password": "Parola", - "agreement": "Anlaşma", - "locale": "Locale", - "reason": "Sebep" - }, - "reason": { - "blocked": "%s izin verilmeyen bir e-posta sağlayıcı içeriyor", - "unreachable": "%s mevcut değil", - "taken": "%s zaten kullanımda", - "reserved": "%s rezerve edilen bir kelime", - "accepted": "%s kabul edilmelidir", - "blank": "%s gerekli", - "invalid": "%s geçersiz", - "too_long": "%s çok uzun", - "too_short": "%s çok kısa", - "inclusion": "%s desteklenen bir değer değil" - }, - "special": { - "username_invalid": "Kullanıcı adı yalnızca alfasayısal karakterler ve alt çizgiler içerebilir", - "username_too_long": "Kullanıcı adı çok uzun (30 karakterden uzun olamaz)", - "email_invalid": "Bu geçerli bir e-posta adresi değil", - "password_too_short": "Şifre çok kısa (en az 8 karakter olmalı)" - } - } - }, - "server_rules": { - "title": "Bazı temel kurallar.", - "subtitle": "Bunlar, %s moderatörleri tarafından ayarlanmış ve uygulanmıştır.", - "prompt": "Devam ederek, %s için kullanım şartlarını ve gizlilik politikasını kabul etmiş olursunuz.", - "terms_of_service": "kullanım şartları", - "privacy_policy": "gizlilik politikası", - "button": { - "confirm": "Kabul Ediyorum" - } - }, - "confirm_email": { - "title": "Son bir şey.", - "subtitle": "Hesabınızı doğrulamak için size e-postayla gönderdiğimiz bağlantıya dokunun.", - "button": { - "open_email_app": "E-posta Uygulamasını Aç", - "resend": "Yeniden gönder" - }, - "dont_receive_email": { - "title": "Posta kutunuzu kontrol edin", - "description": "E-posta adresinizin doğru olup olmadığını ve doğru ise gereksiz klasörünüzü kontrol edin.", - "resend_email": "E-postayı Yeniden Gönder" - }, - "open_email_app": { - "title": "Gelen kutunuzu kontrol edin.", - "description": "Size bir e-posta gönderdik. Eğer e-postayı almadıysanız, gereksiz klasörünü kontrol edin.", - "mail": "Posta", - "open_email_client": "E-posta İstemcisini Aç" - } - }, - "home_timeline": { - "title": "Ana Sayfa", - "navigation_bar_state": { - "offline": "Çevrimdışı", - "new_posts": "Yeni gönderiler gör", - "published": "Yayınlandı!", - "Publishing": "Gönderi yayınlanıyor...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Takip Edecek İnsanlar Bul", - "follow_explain": "Birisini takip ettiğinizde, ana sayfanızda o kişinin gönderilerini görürsünüz." - }, - "compose": { - "title": { - "new_post": "Yeni Gönderi", - "new_reply": "Yeni Yanıt" - }, - "media_selection": { - "camera": "Fotoğraf Çek", - "photo_library": "Fotoğraf Albümü", - "browse": "Göz at" - }, - "content_input_placeholder": "Aklınızdan geçenleri yazın veya yapıştırın", - "compose_action": "Yayınla", - "replying_to_user": "yanıtlanıyor: %s", - "attachment": { - "photo": "fotoğraf", - "video": "video", - "attachment_broken": "Bu %s bozuk ve Mastodon'a\nyüklenemiyor.", - "description_photo": "Görme engelliler için fotoğrafı tarif edin...", - "description_video": "Görme engelliler için videoyu tarif edin..." - }, - "poll": { - "duration_time": "Süre: %s", - "thirty_minutes": "30 dakika", - "one_hour": "1 Saat", - "six_hours": "6 Saat", - "one_day": "1 Gün", - "three_days": "3 Gün", - "seven_days": "7 Gün", - "option_number": "Seçenek %ld" - }, - "content_warning": { - "placeholder": "Buraya kesin bir uyarı yazın..." - }, - "visibility": { - "public": "Herkese açık", - "unlisted": "Listelenmemiş", - "private": "Yalnızca takipçiler", - "direct": "Sadece bahsettiğim insanlar" - }, - "auto_complete": { - "space_to_add": "Eklemek için boşluk tuşuna basın" - }, - "accessibility": { - "append_attachment": "Dosya Ekle", - "append_poll": "Anket Ekle", - "remove_poll": "Anketi Kaldır", - "custom_emoji_picker": "Özel Emoji Seçici", - "enable_content_warning": "İçerik Uyarısını Etkinleştir", - "disable_content_warning": "İçerik Uyarısını Kapat", - "post_visibility_menu": "Gönderi Görünürlüğü Menüsü" - }, - "keyboard": { - "discard_post": "Gönderiyi İptal Et", - "publish_post": "Gönderiyi Yayınla", - "toggle_poll": "Anketi Aç/Kapat", - "toggle_content_warning": "İçerik Uyarısı durumunu değiştir", - "append_attachment_entry": "Dosya Ekle - %s", - "select_visibility_entry": "Görünürlüğü Seç - %s" - } - }, - "profile": { - "dashboard": { - "posts": "gönderiler", - "following": "takip ediliyor", - "followers": "takipçi" - }, - "fields": { - "add_row": "Satır Ekle", - "placeholder": { - "label": "Etiket", - "content": "İçerik" - } - }, - "segmented_control": { - "posts": "Gönderiler", - "replies": "Yanıtlar", - "posts_and_replies": "Gönderiler ve Yanıtlar", - "media": "Medya", - "about": "Hakkında" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Hesabı sustur", - "message": "%s susturmak için onaylayın" - }, - "confirm_unmute_user": { - "title": "Susturmayı kaldır", - "message": "%s susturmasını kaldırmak için onaylayın" - }, - "confirm_block_user": { - "title": "Hesabı Engelle", - "message": "%s engellemeyi onayla" - }, - "confirm_unblock_user": { - "title": "Hesabın Engelini Kaldır", - "message": "%s engellemeyi kaldırmayı onaylayın" - } - }, - "accessibility": { - "show_avatar_image": "Profil resmini göster", - "edit_avatar_image": "Profil fotoğrafını düzenle", - "show_banner_image": "Kapak fotoğrafını göster", - "double_tap_to_open_the_list": "Listeyi açmak için çift tıklayın" - } - }, - "follower": { - "footer": "Diğer sunucudaki takipçiler gösterilemiyor." - }, - "following": { - "footer": "Diğer sunucudaki takip edilenler gösterilemiyor." - }, - "search": { - "title": "Arama", - "search_bar": { - "placeholder": "Etiketleri ve kullanıcıları ara", - "cancel": "İptal" - }, - "recommend": { - "button_text": "Tümünü Gör", - "hash_tag": { - "title": "Mastodon'da Popüler", - "description": "Oldukça ilgi gören etiketler", - "people_talking": "%s kişi konuşuyor" - }, - "accounts": { - "title": "Hoşunuza gidebilecek hesaplar", - "description": "Bu hesapları takip etmek isteyebilirsiniz", - "follow": "Takip et" - } - }, - "searching": { - "segment": { - "all": "Tümü", - "people": "İnsanlar", - "hashtags": "Etiketler", - "posts": "Gönderiler" - }, - "empty_state": { - "no_results": "Sonuç yok" - }, - "recent_search": "Son aramalar", - "clear": "Temizle" - } - }, - "discovery": { - "tabs": { - "posts": "Gönderiler", - "hashtags": "Etiketler", - "news": "Haberler", - "community": "Topluluk", - "for_you": "Senin İçin" - }, - "intro": "Bunlar, Mastodon'un köşesinde ilgi çeken gönderilerdir." - }, - "favorite": { - "title": "Favorilerin" - }, - "notification": { - "title": { - "Everything": "Her şey", - "Mentions": "Bahsetmeler" - }, - "notification_description": { - "followed_you": "seni takip etti", - "favorited_your_post": "gönderini favoriledi", - "reblogged_your_post": "gönderini yeniden paylaştı", - "mentioned_you": "senden bahsetti", - "request_to_follow_you": "size takip isteği gönderdi", - "poll_has_ended": "anket sona erdi" - }, - "keyobard": { - "show_everything": "Her Şeyi Göster", - "show_mentions": "Bahsetmeleri Göster" - } - }, - "thread": { - "back_title": "Gönderi", - "title": "%s kullanıcının gönderisi" - }, - "settings": { - "title": "Ayarlar", - "section": { - "appearance": { - "title": "Görünüm", - "automatic": "Otomatik", - "light": "Daima Açık", - "dark": "Daima Koyu" - }, - "look_and_feel": { - "title": "Görünüm", - "use_system": "Sistem İle Aynı", - "really_dark": "Gerçek Koyu", - "sorta_dark": "Hafif Koyu", - "light": "Açık" - }, - "notifications": { - "title": "Bildirimler", - "favorites": "Gönderimi favorilerine eklediğinde", - "follows": "Beni takip ettiğinde", - "boosts": "Gönderimi yeniden paylaştığında", - "mentions": "Benden bahsettiğinde", - "trigger": { - "anyone": "herhangi biri", - "follower": "bir takipçim", - "follow": "takip ettiğim biri", - "noone": "bilgilendirme", - "title": "Beni şu durumda bilgilendir: " - } - }, - "preference": { - "title": "Tercihler", - "true_black_dark_mode": "Tam siyah koyu modu", - "disable_avatar_animation": "Hareketli avatarları devre dışı bırak", - "disable_emoji_animation": "Hareketli emojileri devre dışı bırak", - "using_default_browser": "Bağlantıları varsayılan tarayıcıda aç", - "open_links_in_mastodon": "Bağlantıları Mastodon içinden aç" - }, - "boring_zone": { - "title": "Sıkıcı Bölge", - "account_settings": "Hesap Ayarları", - "terms": "Hizmet Şartları", - "privacy": "Gizlilik Politikası" - }, - "spicy_zone": { - "title": "Tehlikeli bölge", - "clear": "Medya Önbelleğini Temizle", - "signout": "Oturumu Kapat" - } - }, - "footer": { - "mastodon_description": "Mastodon açık kaynaklı bir yazılımdır. GitHub'dan %s (%s) üzerinden katkıda bulunabilir veya sorunları bildirebilirsiniz" - }, - "keyboard": { - "close_settings_window": "Ayarlar Penceresini Kapat" - } - }, - "report": { - "title_report": "Raporla", - "title": "%s kişisini bildir", - "step1": "Adım 1/2", - "step2": "Adım 2/2", - "content1": "Bu rapora eklemek istediğiniz başka gönderiler var mı?", - "content2": "Bu rapor hakkında moderatörlerin bilmesi gerektiği bir şey var mı?", - "report_sent_title": "Rapor için teşekkürler, bununla ilgileneceğiz.", - "send": "Raporu Gönder", - "skip_to_send": "Yorum yapmadan gönder", - "text_placeholder": "Ek yorum yazın veya yapıştırın", - "reported": "RAPORLANDI", - "step_one": { - "step_1_of_4": "Adım 1/4", - "whats_wrong_with_this_post": "Bu gönderi ile ilgili sorun nedir?", - "whats_wrong_with_this_account": "Bu hesap ile ilgili sorun nedir?", - "whats_wrong_with_this_username": "%s kişisinin sorunu nedir?", - "select_the_best_match": "En iyi seçeneceği seçiniz", - "i_dont_like_it": "Beğenmedim", - "it_is_not_something_you_want_to_see": "Görmek isteyeceğim bir şey değil", - "its_spam": "Spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "Sunucu kurallarını ihlal ediyor", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "Başka bir şey", - "the_issue_does_not_fit_into_other_categories": "Sorun bunlardan biri değil" - }, - "step_two": { - "step_2_of_4": "Adım 2/4", - "which_rules_are_being_violated": "Hangi kurallar ihlal ediliyor?", - "select_all_that_apply": "Geçerli olan tümünü seçiniz", - "i_just_don’t_like_it": "Beğenmedim" - }, - "step_three": { - "step_3_of_4": "Adım 3/4", - "are_there_any_posts_that_back_up_this_report": "Bu bildirimi destekleyecek herhangi bir gönderi var mı?", - "select_all_that_apply": "Geçerli olanların tümünü seçiniz" - }, - "step_four": { - "step_4_of_4": "Adım 4/4", - "is_there_anything_else_we_should_know": "Bilmemiz gereken başka bir şey var mı?" - }, - "step_final": { - "dont_want_to_see_this": "Bunu görmek istemiyor musunuz?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Takibi bırak", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Önizlemeyi Kapat", - "show_next": "Sonrakini Göster", - "show_previous": "Öncekini Göster" - } - }, - "account_list": { - "tab_bar_hint": "Şu anki seçili profil: %s. Hesap değiştiriciyi göstermek için iki kez dokunun ve basılı tutun", - "dismiss_account_switcher": "Hesap Değiştiriciyi Kapat", - "add_account": "Hesap Ekle" - }, - "wizard": { - "new_in_mastodon": "Mastodon'da Yeni", - "multiple_account_switch_intro_description": "Profil butonuna basılı tutarak birden fazla hesap arasında geçiş yapın.", - "accessibility_hint": "Bu yardımı kapatmak için çift tıklayın" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/tr_TR/ios-infoPlist.json b/Localization/StringsConvertor/input/tr_TR/ios-infoPlist.json deleted file mode 100644 index e776179f8..000000000 --- a/Localization/StringsConvertor/input/tr_TR/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Fotoğraf çekerek durum paylaşmak için kullanılır", - "NSPhotoLibraryAddUsageDescription": "Fotoğraf Albümü'ne fotoğraf kaydetmek için kullanılır", - "NewPostShortcutItemTitle": "Yeni Gönderi", - "SearchShortcutItemTitle": "Arama" -} diff --git a/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict b/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict deleted file mode 100644 index 886021c08..000000000 --- a/Localization/StringsConvertor/input/vi_VN/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld thông báo chưa đọc - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - Giới hạn nhập tối đa %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ký tự - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - Giới hạn nhập còn lại %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ký tự - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - tút - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld tút - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld lượt thích - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld đăng lại - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld trả lời - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld bình chọn - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld người bình chọn - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld người đang thảo luận - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld đang theo dõi - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld người theo dõi - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld năm còn lại - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld tháng còn lại - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ngày còn lại - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld giờ còn lại - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld phút còn lại - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld giây còn lại - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld năm trước - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld tháng trước - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld ngày trước - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldh - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ldm - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %lds - - - - diff --git a/Localization/StringsConvertor/input/vi_VN/app.json b/Localization/StringsConvertor/input/vi_VN/app.json deleted file mode 100644 index 443d51f6e..000000000 --- a/Localization/StringsConvertor/input/vi_VN/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "Vui lòng thử lại.", - "please_try_again_later": "Vui lòng thử lại sau." - }, - "sign_up_failure": { - "title": "Đăng ký không thành công" - }, - "server_error": { - "title": "Lỗi máy chủ" - }, - "vote_failure": { - "title": "Bình chọn không thành công", - "poll_ended": "Cuộc bình chọn đã kết thúc" - }, - "discard_post_content": { - "title": "Bỏ bản nháp", - "message": "Xác nhận bỏ qua nội dung tút đã viết." - }, - "publish_post_failure": { - "title": "Đăng tút không thành công", - "message": "Không thể đăng tút.\nVui lòng kiểm tra kết nối mạng.", - "attachments_message": { - "video_attach_with_photo": "Không thể đính kèm video cùng với hình ảnh.", - "more_than_one_video": "Không thể đính kèm nhiều video." - } - }, - "edit_profile_failure": { - "title": "Lỗi chỉnh sửa hồ sơ", - "message": "Không thể chỉnh sửa hồ sơ. Vui lòng thử lại." - }, - "sign_out": { - "title": "Đăng xuất", - "message": "Bạn có chắc muốn đăng xuất không?", - "confirm": "Đăng xuất" - }, - "block_domain": { - "title": "Bạn thật sự muốn ẩn toàn bộ nội dung từ %s? Sẽ hợp lý hơn nếu bạn chỉ chặn hoặc ẩn một vài tài khoản cụ thể. Ẩn toàn bộ nội dung từ máy chủ sẽ khiến bạn không còn thấy nội dung từ máy chủ đó ở bất kỳ nơi nào, kể cả thông báo. Người theo dõi bạn từ máy chủ đó cũng sẽ bị xóa luôn.", - "block_entire_domain": "Chặn máy chủ" - }, - "save_photo_failure": { - "title": "Lưu hình ảnh không thành công", - "message": "Vui lòng cho phép quyền truy cập thư viện hình ảnh để lưu hình ảnh về máy." - }, - "delete_post": { - "title": "Xóa tút", - "message": "Bạn có chắc muốn xóa tút này không?" - }, - "clean_cache": { - "title": "Xóa bộ nhớ đệm", - "message": "Đã xóa %s bộ nhớ đệm." - } - }, - "controls": { - "actions": { - "back": "Quay lại", - "next": "Kế tiếp", - "previous": "Trước đó", - "open": "Mở", - "add": "Thêm", - "remove": "Xóa", - "edit": "Sửa", - "save": "Lưu", - "ok": "OK", - "done": "Xong", - "confirm": "Xác nhận", - "continue": "Tiếp tục", - "compose": "Viết tút", - "cancel": "Hủy bỏ", - "discard": "Bỏ qua", - "try_again": "Thử lại", - "take_photo": "Chụp ảnh", - "save_photo": "Lưu ảnh", - "copy_photo": "Sao chép ảnh", - "sign_in": "Đăng nhập", - "sign_up": "Đăng ký", - "see_more": "Xem thêm", - "preview": "Xem trước", - "share": "Chia sẻ", - "share_user": "Chia sẻ %s", - "share_post": "Chia sẻ tút", - "open_in_safari": "Mở bằng Safari", - "open_in_browser": "Mở trong trình duyệt", - "find_people": "Đề xuất theo dõi", - "manually_search": "Tự tìm kiếm thủ công", - "skip": "Bỏ qua", - "reply": "Trả lời", - "report_user": "Báo cáo %s", - "block_domain": "Chặn %s", - "unblock_domain": "Bỏ chặn %s", - "settings": "Cài đặt", - "delete": "Xóa" - }, - "tabs": { - "home": "Bảng tin", - "search": "Tìm kiếm", - "notification": "Thông báo", - "profile": "Trang hồ sơ" - }, - "keyboard": { - "common": { - "switch_to_tab": "Chuyển thành %s", - "compose_new_post": "Viết tút mới", - "show_favorites": "Hiện lượt thích", - "open_settings": "Mở cài đặt" - }, - "timeline": { - "previous_status": "Tút trước", - "next_status": "Tút sau", - "open_status": "Mở tút", - "open_author_profile": "Mở trang người viết tút", - "open_reblogger_profile": "Mở trang người đăng lại tút", - "reply_status": "Trả lời tút", - "toggle_reblog": "Chọn đăng lại tút", - "toggle_favorite": "Chọn thích tút", - "toggle_content_warning": "Chọn nội dung ẩn", - "preview_image": "Xem trước hình ảnh" - }, - "segmented_control": { - "previous_section": "Tới phần trước", - "next_section": "Tới phần tiếp theo" - } - }, - "status": { - "user_reblogged": "%s đăng lại", - "user_replied_to": "Trả lời đến %s", - "show_post": "Xem tút", - "show_user_profile": "Xem trang hồ sơ", - "content_warning": "Nội dung ẩn", - "sensitive_content": "Nội dung nhạy cảm", - "media_content_warning": "Nhấn để hiển thị", - "tap_to_reveal": "Nhấn để xem", - "poll": { - "vote": "Bình chọn", - "closed": "Kết thúc" - }, - "actions": { - "reply": "Trả lời", - "reblog": "Đăng lại", - "unreblog": "Hủy đăng lại", - "favorite": "Thích", - "unfavorite": "Bỏ thích", - "menu": "Menu", - "hide": "Ẩn", - "show_image": "Hiển thị hình ảnh", - "show_gif": "Hiển thị GIF", - "show_video_player": "Hiện trình phát video", - "tap_then_hold_to_show_menu": "Nhấn giữ để hiện menu" - }, - "tag": { - "url": "URL", - "mention": "Nhắc đến", - "link": "Liên kết", - "hashtag": "Hashtag", - "email": "Email", - "emoji": "Emoji" - }, - "visibility": { - "unlisted": "Ai cũng thấy tút này nhưng không hiện trên bảng tin máy chủ.", - "private": "Chỉ người theo dõi của họ có thể thấy tút này.", - "private_from_me": "Chỉ người theo dõi tôi có thể thấy tút này.", - "direct": "Chỉ người được nhắc đến có thể thấy tút." - } - }, - "friendship": { - "follow": "Theo dõi", - "following": "Đang theo dõi", - "request": "Yêu cầu", - "pending": "Đang chờ", - "block": "Chặn", - "block_user": "Chặn %s", - "block_domain": "Chặn %s", - "unblock": "Bỏ chặn", - "unblock_user": "Bỏ chặn %s", - "blocked": "Đã chặn", - "mute": "Ẩn", - "mute_user": "Ẩn %s", - "unmute": "Bỏ ẩn", - "unmute_user": "Bỏ ẩn %s", - "muted": "Đã ẩn", - "edit_info": "Chỉnh sửa" - }, - "timeline": { - "filtered": "Bộ lọc", - "timestamp": { - "now": "Vừa xong" - }, - "loader": { - "load_missing_posts": "Tải tút chưa đọc", - "loading_missing_posts": "Đang tải tút chưa đọc...", - "show_more_replies": "Xem lượt trả lời" - }, - "header": { - "no_status_found": "Không tìm thấy tút", - "blocking_warning": "Bạn không thể xem trang người này\ncho tới khi bạn bỏ chặn họ.\nHọ sẽ thấy trang của bạn như thế này.", - "user_blocking_warning": "Bạn không thể xem trang %s\ncho tới khi bạn bỏ chặn họ.\nHọ sẽ thấy trang của bạn như thế này.", - "blocked_warning": "Bạn không thể xem trang người này\ncho tới khi họ bỏ chặn bạn.", - "user_blocked_warning": "Bạn không thể xem trang %s\ncho tới khi họ bỏ chặn bạn.", - "suspended_warning": "Người dùng đã bị vô hiệu hóa.", - "user_suspended_warning": "%s đã bị vô hiệu hóa." - } - } - } - }, - "scene": { - "welcome": { - "slogan": "Mạng xã hội\ndo bạn kiểm soát.", - "get_started": "Bắt đầu", - "log_in": "Đăng nhập" - }, - "server_picker": { - "title": "Mastodon gồm nhiều máy chủ với thành viên riêng.", - "subtitle": "Chọn một máy chủ dựa theo sở thích, tôn giáo, hoặc ý muốn của bạn.", - "subtitle_extend": "Chọn một máy chủ dựa theo sở thích, tôn giáo, hoặc ý muốn của bạn. Mỗi máy chủ có thể được vận hành bởi một cá nhân hoặc một tổ chức.", - "button": { - "category": { - "all": "Toàn bộ", - "all_accessiblity_description": "Phân loại: Toàn bộ", - "academia": "học thuật", - "activism": "hoạt động xã hội", - "food": "ăn uống", - "furry": "furry", - "games": "trò chơi điện tử", - "general": "chung", - "journalism": "tin tức", - "lgbt": "lgbt", - "regional": "khu vực", - "art": "nghệ thuật", - "music": "âm nhạc", - "tech": "công nghệ" - }, - "see_less": "Ẩn bớt", - "see_more": "Nhiều hơn" - }, - "label": { - "language": "NGÔN NGỮ", - "users": "NGƯỜI DÙNG", - "category": "PHÂN LOẠI" - }, - "input": { - "placeholder": "Tìm máy chủ", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "Đang tìm máy chủ hoạt động...", - "bad_network": "Đã xảy ra lỗi. Hãy thử lại hoặc kiểm tra kết nối internet của bạn.", - "no_results": "Không có kết quả" - } - }, - "register": { - "title": "Hãy để tôi đăng ký trên %s", - "input": { - "avatar": { - "delete": "Xóa" - }, - "username": { - "placeholder": "tên người dùng", - "duplicate_prompt": "Tên người dùng đã tồn tại." - }, - "display_name": { - "placeholder": "tên hiển thị" - }, - "email": { - "placeholder": "email" - }, - "password": { - "placeholder": "mật khẩu", - "require": "Mật khẩu phải tối thiểu:", - "character_limit": "8 ký tự", - "accessibility": { - "checked": "đã ổn", - "unchecked": "chưa ổn" - }, - "hint": "Mật khẩu của bạn phải dài tối thiểu 8 ký tự" - }, - "invite": { - "registration_user_invite_request": "Vì sao bạn muốn tham gia?" - } - }, - "error": { - "item": { - "username": "Tên người dùng", - "email": "Email", - "password": "Mật khẩu", - "agreement": "Thoả thuận", - "locale": "Cục bộ", - "reason": "Lý do" - }, - "reason": { - "blocked": "%s dùng dịch vụ email bị cấm", - "unreachable": "%s không tồn tại", - "taken": "%s đã tồn tại", - "reserved": "%s là một từ khóa hạn chế", - "accepted": "%s phải được đồng ý", - "blank": "%s là bắt buộc", - "invalid": "%s không hợp lệ", - "too_long": "%s quá dài", - "too_short": "%s quá ngắn", - "inclusion": "%s chứa ký tự không được hỗ trợ" - }, - "special": { - "username_invalid": "Tên người dùng chỉ có thể chứa các ký tự chữ và số và dấu gạch dưới", - "username_too_long": "Tên người dùng không thể dài hơn 30 ký tự", - "email_invalid": "Đây không phải là một địa chỉ email khả dụng", - "password_too_short": "Mật khẩu của bạn quá ngắn, phải có ít nhất 8 ký tự" - } - } - }, - "server_rules": { - "title": "Quy tắc máy chủ.", - "subtitle": "Được ban hành và áp dụng bởi quản trị viên %s", - "prompt": "Tiếp tục nghĩa là bạn đồng ý điều khoản dịch vụ và chính sách bảo mật của %s.", - "terms_of_service": "điều khoản dịch vụ", - "privacy_policy": "chính sách bảo mật", - "button": { - "confirm": "Tôi đồng ý" - } - }, - "confirm_email": { - "title": "Còn điều này nữa.", - "subtitle": "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản.", - "button": { - "open_email_app": "Mở ứng dụng email", - "resend": "Gửi lại" - }, - "dont_receive_email": { - "title": "Kiểm tra email", - "description": "Kiểm tra địa chỉ email của bạn đúng chưa hoặc có bị chuyển vào thư rác.", - "resend_email": "Gửi lại email" - }, - "open_email_app": { - "title": "Kiểm tra hộp thư của bạn.", - "description": "Chúng tôi vừa gửi email cho bạn. Kiểm tra thư rác nếu bạn không thấy.", - "mail": "Email", - "open_email_client": "Mở ứng dụng email" - } - }, - "home_timeline": { - "title": "Bảng tin", - "navigation_bar_state": { - "offline": "Ngoại tuyến", - "new_posts": "Đọc những tút mới", - "published": "Đã đăng!", - "Publishing": "Đang đăng tút...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "Đề xuất theo dõi", - "follow_explain": "Khi theo dõi ai đó, bạn sẽ thấy tút của họ trong bảng tin." - }, - "compose": { - "title": { - "new_post": "Viết tút", - "new_reply": "Viết trả lời" - }, - "media_selection": { - "camera": "Chụp ảnh", - "photo_library": "Thư viện hình ảnh", - "browse": "Chọn" - }, - "content_input_placeholder": "Cho thế giới biết bạn đang nghĩ gì", - "compose_action": "Đăng", - "replying_to_user": "trả lời %s", - "attachment": { - "photo": "ảnh", - "video": "video", - "attachment_broken": "%s này bị lỗi và không thể\ntải lên Mastodon.", - "description_photo": "Mô tả hình ảnh cho người khiếm thị...", - "description_video": "Mô tả video cho người khiếm thị..." - }, - "poll": { - "duration_time": "Thời hạn: %s", - "thirty_minutes": "30 phút", - "one_hour": "1 giờ", - "six_hours": "6 giờ", - "one_day": "1 ngày", - "three_days": "3 ngày", - "seven_days": "7 ngày", - "option_number": "Lựa chọn %ld" - }, - "content_warning": { - "placeholder": "Viết nội dung ẩn của bạn ở đây..." - }, - "visibility": { - "public": "Công khai", - "unlisted": "Hạn chế", - "private": "Riêng tư", - "direct": "Nhắn riêng" - }, - "auto_complete": { - "space_to_add": "Khoảng cách để thêm" - }, - "accessibility": { - "append_attachment": "Thêm media", - "append_poll": "Tạo bình chọn", - "remove_poll": "Xóa bình chọn", - "custom_emoji_picker": "Chọn emoji", - "enable_content_warning": "Bật nội dung ẩn", - "disable_content_warning": "Tắt nội dung ẩn", - "post_visibility_menu": "Menu hiển thị tút" - }, - "keyboard": { - "discard_post": "Hủy đăng tút", - "publish_post": "Đăng tút", - "toggle_poll": "Mở bình chọn", - "toggle_content_warning": "Mở nội dung ẩn", - "append_attachment_entry": "Thêm media - %s", - "select_visibility_entry": "Thay đổi quyền riêng tư - %s" - } - }, - "profile": { - "dashboard": { - "posts": "tút", - "following": "theo dõi", - "followers": "người theo dõi" - }, - "fields": { - "add_row": "Thêm hàng", - "placeholder": { - "label": "Nhãn", - "content": "Nội dung" - } - }, - "segmented_control": { - "posts": "Tút", - "replies": "Trả lời", - "posts_and_replies": "Tút và trả lời", - "media": "Media", - "about": "Giới thiệu" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "Ẩn người dùng", - "message": "Xác nhận ẩn %s" - }, - "confirm_unmute_user": { - "title": "Bỏ ẩn người dùng", - "message": "Xác nhận bỏ ẩn %s" - }, - "confirm_block_user": { - "title": "Chặn người dùng", - "message": "Xác nhận chặn %s" - }, - "confirm_unblock_user": { - "title": "Bỏ chặn người dùng", - "message": "Xác nhận bỏ chặn %s" - } - }, - "accessibility": { - "show_avatar_image": "Hiển thị ảnh đại diện", - "edit_avatar_image": "Sửa ảnh đại diện", - "show_banner_image": "Hiển thị ảnh bìa", - "double_tap_to_open_the_list": "Nhấn hai lần để mở danh sách" - } - }, - "follower": { - "footer": "Không hiển thị người theo dõi từ máy chủ khác." - }, - "following": { - "footer": "Không hiển thị người bạn theo dõi từ máy chủ khác." - }, - "search": { - "title": "Tìm kiếm", - "search_bar": { - "placeholder": "Tìm hashtag và người dùng", - "cancel": "Hủy bỏ" - }, - "recommend": { - "button_text": "Xem tất cả", - "hash_tag": { - "title": "Xu hướng trên Mastodon", - "description": "Những hashtag đang được sử dụng nhiều nhất", - "people_talking": "%s người đang thảo luận" - }, - "accounts": { - "title": "Những người bạn có thể thích", - "description": "Bạn có thể muốn theo dõi những người này", - "follow": "Theo dõi" - } - }, - "searching": { - "segment": { - "all": "Tất cả", - "people": "Người dùng", - "hashtags": "Hashtag", - "posts": "Tút" - }, - "empty_state": { - "no_results": "Không có kết quả" - }, - "recent_search": "Tìm kiếm gần đây", - "clear": "Xóa" - } - }, - "discovery": { - "tabs": { - "posts": "Tút", - "hashtags": "Hashtag", - "news": "Tin tức", - "community": "Máy chủ", - "for_you": "Dành cho bạn" - }, - "intro": "Đây là những tút thu hút được sự chú ý trong góc Mastodon của bạn." - }, - "favorite": { - "title": "Lượt thích" - }, - "notification": { - "title": { - "Everything": "Mọi thứ", - "Mentions": "Lượt nhắc đến" - }, - "notification_description": { - "followed_you": "đã theo dõi bạn", - "favorited_your_post": "thích tút của bạn", - "reblogged_your_post": "đăng lại tút của bạn", - "mentioned_you": "nhắc đến bạn", - "request_to_follow_you": "yêu cầu theo dõi bạn", - "poll_has_ended": "cuộc bình chọn đã kết thúc" - }, - "keyobard": { - "show_everything": "Hiện mọi thứ", - "show_mentions": "Hiện lượt nhắc" - } - }, - "thread": { - "back_title": "Tút", - "title": "Tút của %s" - }, - "settings": { - "title": "Cài đặt", - "section": { - "appearance": { - "title": "Giao diện", - "automatic": "Tự động", - "light": "Sáng", - "dark": "Tối" - }, - "look_and_feel": { - "title": "Giao diện", - "use_system": "Mặc định hệ thống", - "really_dark": "Tối Mạnh", - "sorta_dark": "Tối Nhẹ", - "light": "Sáng" - }, - "notifications": { - "title": "Thông báo", - "favorites": "Thích tút của tôi", - "follows": "Theo dõi tôi", - "boosts": "Đăng lại tút của tôi", - "mentions": "Nhắc đến tôi", - "trigger": { - "anyone": "ai đó", - "follower": "người theo dõi tôi", - "follow": "người tôi theo dõi", - "noone": "không một ai", - "title": "Thông báo khi" - } - }, - "preference": { - "title": "Chung", - "true_black_dark_mode": "Chế độ tối chân thật", - "disable_avatar_animation": "Tắt ảnh đại diện GIF", - "disable_emoji_animation": "Tắt emoji dạng GIF", - "using_default_browser": "Dùng trình duyệt mặc định", - "open_links_in_mastodon": "Mở liên kết trong Mastodon" - }, - "boring_zone": { - "title": "Nhàm chán", - "account_settings": "Cài đặt tài khoản", - "terms": "Điều khoản dịch vụ", - "privacy": "Chính sách bảo mật" - }, - "spicy_zone": { - "title": "Thú vị", - "clear": "Xóa bộ nhớ đệm", - "signout": "Đăng xuất" - } - }, - "footer": { - "mastodon_description": "Mastodon là phần mềm mã nguồn mở. Bạn có thể báo lỗi trên GitHub tại %s (%s)" - }, - "keyboard": { - "close_settings_window": "Đóng cửa sổ cài đặt" - } - }, - "report": { - "title_report": "Báo cáo", - "title": "Báo cáo %s", - "step1": "Bước 1 trong 2", - "step2": "Bước 2 trong 2", - "content1": "Bạn muốn thêm tút nào vào báo cáo nữa không?", - "content2": "Kiểm duyệt viên cần biết gì về báo cáo này?", - "report_sent_title": "Cảm ơn đã báo cáo, chúng tôi sẽ xem xét kỹ.", - "send": "Gửi báo cáo", - "skip_to_send": "Gửi không ghi chú", - "text_placeholder": "Nhập hoặc bổ sung chú thích", - "reported": "ĐÃ BÁO CÁO", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "Đóng xem trước", - "show_next": "Hiện kế tiếp", - "show_previous": "Hiện trước đó" - } - }, - "account_list": { - "tab_bar_hint": "Đang dùng tài khoản: %s. Nhấn hai lần và giữ để đổi sang tài khoản khác", - "dismiss_account_switcher": "Bỏ qua chuyển đổi tài khoản", - "add_account": "Thêm tài khoản" - }, - "wizard": { - "new_in_mastodon": "Mới trên Mastodon", - "multiple_account_switch_intro_description": "Chuyển đổi giữa nhiều tài khoản bằng cách đè giữ nút tài khoản.", - "accessibility_hint": "Nhấn hai lần để bỏ qua" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/vi_VN/ios-infoPlist.json b/Localization/StringsConvertor/input/vi_VN/ios-infoPlist.json deleted file mode 100644 index 2170219a4..000000000 --- a/Localization/StringsConvertor/input/vi_VN/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "Được sử dụng để chụp ảnh cho tút", - "NSPhotoLibraryAddUsageDescription": "Được sử dụng để lưu ảnh vào Thư viện ảnh", - "NewPostShortcutItemTitle": "Viết tút", - "SearchShortcutItemTitle": "Tìm kiếm" -} diff --git a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict deleted file mode 100644 index 4040f30d0..000000000 --- a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 条未读通知 - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - 输入字符限制超出 %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 个字符 - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - 输入字符限制剩余 %#@character_count@ - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 个字符 - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 个帖子 - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld media - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 个帖子 - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 个喜欢 - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 条转发 - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 条回复 - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 票 - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 人 - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 人正在讨论 - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 人正在关注 - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 个关注者 - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 年 - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 个月 - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 天 - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 小时 - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 分钟 - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 剩余 %ld 秒 - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 年前 - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 月前 - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 天前 - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 小时前 - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 分前 - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 秒前 - - - - diff --git a/Localization/StringsConvertor/input/zh_CN/app.json b/Localization/StringsConvertor/input/zh_CN/app.json deleted file mode 100644 index e0c3a9961..000000000 --- a/Localization/StringsConvertor/input/zh_CN/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "请重试。", - "please_try_again_later": "请稍后重试。" - }, - "sign_up_failure": { - "title": "注册失败" - }, - "server_error": { - "title": "服务器错误" - }, - "vote_failure": { - "title": "投票失败", - "poll_ended": "投票已结束" - }, - "discard_post_content": { - "title": "丢弃草案", - "message": "确认要丢弃正在编辑的内容" - }, - "publish_post_failure": { - "title": "发送失败", - "message": "帖子发送失败。\n请检查你的网络连接。", - "attachments_message": { - "video_attach_with_photo": "无法在帖子中同时插入视频和图片。", - "more_than_one_video": "最多添加一个视频。" - } - }, - "edit_profile_failure": { - "title": "编辑个人资料出现错误", - "message": "无法编辑个人资料,请重试。" - }, - "sign_out": { - "title": "退出", - "message": "您确定要退出吗?", - "confirm": "退出" - }, - "block_domain": { - "title": "你真的确定要屏蔽所有来自 %s 的内容吗?多数情况下,屏蔽或隐藏几个特定的用户就已经足够了。来自该网站的内容将不再出现在你的任何公共时间轴或通知列表里。来自该网站的关注者将会被移除。", - "block_entire_domain": "屏蔽域名" - }, - "save_photo_failure": { - "title": "保存照片失败", - "message": "请启用照片库访问权限以保存照片。" - }, - "delete_post": { - "title": "确定要删除这条消息吗?", - "message": "确定要删除这个帖子吗?" - }, - "clean_cache": { - "title": "清除缓存", - "message": "成功清除 %s 缓存。" - } - }, - "controls": { - "actions": { - "back": "返回", - "next": "下一个", - "previous": "上一个", - "open": "打开", - "add": "添加", - "remove": "删除", - "edit": "编辑", - "save": "保存", - "ok": "好的", - "done": "完成", - "confirm": "确认", - "continue": "继续", - "compose": "撰写", - "cancel": "取消", - "discard": "放弃", - "try_again": "再试一次", - "take_photo": "拍照", - "save_photo": "保存照片", - "copy_photo": "拷贝照片", - "sign_in": "登录", - "sign_up": "注册", - "see_more": "查看更多", - "preview": "预览", - "share": "分享", - "share_user": "分享 %s", - "share_post": "分享帖子", - "open_in_safari": "在 Safari 中打开", - "open_in_browser": "在浏览器中打开", - "find_people": "查看推荐关注的用户", - "manually_search": "手动搜索用户", - "skip": "跳过", - "reply": "回复", - "report_user": "举报 %s", - "block_domain": "屏蔽 %s", - "unblock_domain": "解除屏蔽 %s", - "settings": "设置", - "delete": "删除" - }, - "tabs": { - "home": "主页", - "search": "搜索", - "notification": "通知", - "profile": "个人资料" - }, - "keyboard": { - "common": { - "switch_to_tab": "切换到 %s", - "compose_new_post": "撰写新帖子", - "show_favorites": "显示喜欢", - "open_settings": "打开设置" - }, - "timeline": { - "previous_status": "上一个帖子", - "next_status": "下一个帖子", - "open_status": "打开帖子", - "open_author_profile": "打开作者的个人资料", - "open_reblogger_profile": "打开转发者的个人资料", - "reply_status": "回复此帖子", - "toggle_reblog": "转发此帖子", - "toggle_favorite": "喜欢此帖子", - "toggle_content_warning": "启用或关闭内容警告", - "preview_image": "预览照片" - }, - "segmented_control": { - "previous_section": "上一节", - "next_section": "下一节" - } - }, - "status": { - "user_reblogged": "%s 转发", - "user_replied_to": "回复给 %s", - "show_post": "显示帖子", - "show_user_profile": "查看用户个人资料", - "content_warning": "内容警告", - "sensitive_content": "敏感内容", - "media_content_warning": "点击任意位置显示", - "tap_to_reveal": "点击以显示", - "poll": { - "vote": "投票", - "closed": "已关闭" - }, - "actions": { - "reply": "回复", - "reblog": "转发", - "unreblog": "取消转发", - "favorite": "喜欢", - "unfavorite": "取消喜欢", - "menu": "菜单", - "hide": "隐藏", - "show_image": "显示图片", - "show_gif": "显示 GIF", - "show_video_player": "显示视频播放器", - "tap_then_hold_to_show_menu": "长按以显示菜单" - }, - "tag": { - "url": "URL", - "mention": "提及", - "link": "链接", - "hashtag": "标签", - "email": "电子邮箱", - "emoji": "表情" - }, - "visibility": { - "unlisted": "任何人都可以看到这个帖子,但不会在公开的时间线中显示。", - "private": "只有作者的关注者才能看到此帖子。", - "private_from_me": "只有我的关注者才能看到此帖子。", - "direct": "只有提到的用户才能看到此帖子。" - } - }, - "friendship": { - "follow": "关注", - "following": "正在关注", - "request": "请求", - "pending": "待确认", - "block": "屏蔽", - "block_user": "屏蔽 %s", - "block_domain": "屏蔽 %s", - "unblock": "解除屏蔽", - "unblock_user": "解除屏蔽 %s", - "blocked": "已屏蔽", - "mute": "静音", - "mute_user": "静音 %s", - "unmute": "取消静音", - "unmute_user": "取消静音 %s", - "muted": "已静音", - "edit_info": "编辑" - }, - "timeline": { - "filtered": "已过滤", - "timestamp": { - "now": "现在" - }, - "loader": { - "load_missing_posts": "加载帖子", - "loading_missing_posts": "正在加载帖子...", - "show_more_replies": "显示更多回复" - }, - "header": { - "no_status_found": "没有找到帖子", - "blocking_warning": "您无法查看此用户的个人资料\n直到您解除屏蔽他们。\n您的个人资料看起来对他们来说是这样的。", - "user_blocking_warning": "您无法查看 %s 的个人资料\n直到您解除屏蔽他们。\n您的个人资料看起来对他们来说是这样的。", - "blocked_warning": "您不能查看此用户的个人资料\n直到他们解除屏蔽。", - "user_blocked_warning": "您不能查看 %s 的个人资料\n直到他们解除屏蔽。", - "suspended_warning": "此用户已被封禁。", - "user_suspended_warning": "%s 已被封禁。" - } - } - } - }, - "scene": { - "welcome": { - "slogan": "社交网络\n回到你的手中。", - "get_started": "开始使用", - "log_in": "登录" - }, - "server_picker": { - "title": "挑选一个服务器,\n任意服务器。", - "subtitle": "根据你的兴趣、区域或一般目的选择一个社区。", - "subtitle_extend": "根据你的兴趣、区域或一般目的选择一个社区。每个社区都由完全独立的组织或个人管理。", - "button": { - "category": { - "all": "全部", - "all_accessiblity_description": "类别:全部", - "academia": "学术", - "activism": "行动主义", - "food": "美食", - "furry": "兽迷", - "games": "游戏", - "general": "通用", - "journalism": "新闻", - "lgbt": "lgbt", - "regional": "地区", - "art": "艺术", - "music": "音乐", - "tech": "科技" - }, - "see_less": "隐藏", - "see_more": "更多" - }, - "label": { - "language": "语言", - "users": "用户", - "category": "类别" - }, - "input": { - "placeholder": "查找或加入你自己的服务器...", - "search_servers_or_enter_url": "Search communities or enter URL" - }, - "empty_state": { - "finding_servers": "正在查找可用的服务器...", - "bad_network": "出了些问题。请检查你的互联网连接", - "no_results": "无结果" - } - }, - "register": { - "title": "让我们在 %s 上开始", - "input": { - "avatar": { - "delete": "删除" - }, - "username": { - "placeholder": "用户名", - "duplicate_prompt": "此用户名已被使用" - }, - "display_name": { - "placeholder": "昵称" - }, - "email": { - "placeholder": "电子邮箱" - }, - "password": { - "placeholder": "密码", - "require": "您的密码至少需要:", - "character_limit": "8 个字符", - "accessibility": { - "checked": "已选中", - "unchecked": "未选中" - }, - "hint": "密码长度至少为 8 个字符" - }, - "invite": { - "registration_user_invite_request": "加入的理由是?" - } - }, - "error": { - "item": { - "username": "用户名", - "email": "电子邮箱", - "password": "密码", - "agreement": "协议", - "locale": "地区", - "reason": "原因" - }, - "reason": { - "blocked": "%s 包含一个不允许的电子邮件提供商", - "unreachable": "%s 似乎不存在", - "taken": "%s 已被使用", - "reserved": "%s 是一个保留的关键字", - "accepted": "%s 必须被接受", - "blank": "%s 为必需项", - "invalid": "%s 无效", - "too_long": "%s 长度过长", - "too_short": "%s 长度太短", - "inclusion": "%s 是不支持的值" - }, - "special": { - "username_invalid": "用户名只能包含字母数字和下划线字符", - "username_too_long": "用户名太长(不能超过 30 个字符)", - "email_invalid": "这不是一个有效的电子邮件地址", - "password_too_short": "密码太短(至少需要 8 个字符)" - } - } - }, - "server_rules": { - "title": "一些基本规则。", - "subtitle": "这些规则由 %s 的管理员设置。", - "prompt": "如果继续,你必须遵守 %s 的服务条款和隐私政策。", - "terms_of_service": "服务条款", - "privacy_policy": "隐私政策", - "button": { - "confirm": "我同意" - } - }, - "confirm_email": { - "title": "最后一件事。", - "subtitle": "我们刚刚向 %s 发送了一封电子邮件,\n点击链接确认你的帐户。", - "button": { - "open_email_app": "打开电子邮件应用", - "resend": "重新发送" - }, - "dont_receive_email": { - "title": "请检查你的邮箱。", - "description": "检查您的电子邮件地址是否正确,同时请检查你的垃圾箱。", - "resend_email": "重新发送邮件" - }, - "open_email_app": { - "title": "检查你的邮箱", - "description": "我们刚刚向你发送了一封电子邮件。如果未收到,请检查你的垃圾箱。", - "mail": "邮件", - "open_email_client": "打开邮件客户端" - } - }, - "home_timeline": { - "title": "主页", - "navigation_bar_state": { - "offline": "离线", - "new_posts": "查看新帖子", - "published": "已发送", - "Publishing": "正在发送...", - "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" - } - } - }, - "suggestion_account": { - "title": "查看推荐关注的用户", - "follow_explain": "当你关注某个人时,你将会在主页看到他们的帖子。" - }, - "compose": { - "title": { - "new_post": "新帖子", - "new_reply": "新回复" - }, - "media_selection": { - "camera": "拍照", - "photo_library": "照片库", - "browse": "浏览" - }, - "content_input_placeholder": "写下你的想法", - "compose_action": "发送", - "replying_to_user": "回复给 %s", - "attachment": { - "photo": "照片", - "video": "视频", - "attachment_broken": "%s已损坏\n无法上传到 Mastodon", - "description_photo": "为视觉障碍人士添加照片的文字说明...", - "description_video": "为视觉障碍人士添加视频的文字说明..." - }, - "poll": { - "duration_time": "时长:%s", - "thirty_minutes": "30 分钟", - "one_hour": "1 小时", - "six_hours": "6 小时", - "one_day": "1 天", - "three_days": "3 天", - "seven_days": "7 天", - "option_number": "选项 %ld" - }, - "content_warning": { - "placeholder": "在这里写下内容的警告消息..." - }, - "visibility": { - "public": "公开", - "unlisted": "不公开", - "private": "仅关注者", - "direct": "仅我提到的人" - }, - "auto_complete": { - "space_to_add": "输入空格键入" - }, - "accessibility": { - "append_attachment": "添加附件", - "append_poll": "添加投票", - "remove_poll": "移除投票", - "custom_emoji_picker": "自定义表情选择器", - "enable_content_warning": "启用内容警告", - "disable_content_warning": "关闭内容警告", - "post_visibility_menu": "帖子可见性" - }, - "keyboard": { - "discard_post": "丢弃帖子", - "publish_post": "发送帖子", - "toggle_poll": "启用或关闭投票", - "toggle_content_warning": "启用或关闭内容警告", - "append_attachment_entry": "添加附件 - %s", - "select_visibility_entry": "选择可见性 - %s" - } - }, - "profile": { - "dashboard": { - "posts": "帖子", - "following": "正在关注", - "followers": "关注者" - }, - "fields": { - "add_row": "添加", - "placeholder": { - "label": "标签", - "content": "内容" - } - }, - "segmented_control": { - "posts": "帖子", - "replies": "回复", - "posts_and_replies": "帖子与回复", - "media": "媒体", - "about": "关于" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "静音账户", - "message": "确认静音 %s" - }, - "confirm_unmute_user": { - "title": "取消静音账户", - "message": "确认取消静音 %s" - }, - "confirm_block_user": { - "title": "屏蔽帐户", - "message": "确认屏蔽 %s" - }, - "confirm_unblock_user": { - "title": "解除屏蔽帐户", - "message": "确认取消屏蔽 %s" - } - }, - "accessibility": { - "show_avatar_image": "显示头像", - "edit_avatar_image": "编辑头像", - "show_banner_image": "显示顶部横幅图片", - "double_tap_to_open_the_list": "双击打开列表" - } - }, - "follower": { - "footer": "不会显示来自其它服务器的关注者" - }, - "following": { - "footer": "不会显示来自其它服务器的关注" - }, - "search": { - "title": "搜索", - "search_bar": { - "placeholder": "搜索标签和用户", - "cancel": "取消" - }, - "recommend": { - "button_text": "查看全部", - "hash_tag": { - "title": "在 Mastodon 上的趋势", - "description": "大家感兴趣的标签", - "people_talking": "%s 人正在讨论" - }, - "accounts": { - "title": "你可能感兴趣的用户", - "description": "你可能会喜欢关注这些用户", - "follow": "关注" - } - }, - "searching": { - "segment": { - "all": "全部", - "people": "用户", - "hashtags": "标签", - "posts": "帖子" - }, - "empty_state": { - "no_results": "无结果" - }, - "recent_search": "最近搜索", - "clear": "清除" - } - }, - "discovery": { - "tabs": { - "posts": "嘟文", - "hashtags": "话题标签", - "news": "最新消息", - "community": "社区", - "for_you": "为你推荐" - }, - "intro": "这些嘟文在你的长毛象小宇宙中备受关注。" - }, - "favorite": { - "title": "你的喜欢" - }, - "notification": { - "title": { - "Everything": "全部", - "Mentions": "提及" - }, - "notification_description": { - "followed_you": "关注了你", - "favorited_your_post": "喜欢了你的帖子", - "reblogged_your_post": "转发了你的帖子", - "mentioned_you": "提及了你", - "request_to_follow_you": "关注请求", - "poll_has_ended": "投票已结束" - }, - "keyobard": { - "show_everything": "显示全部", - "show_mentions": "显示提及" - } - }, - "thread": { - "back_title": "帖子", - "title": "来自 %s 的帖子" - }, - "settings": { - "title": "设置", - "section": { - "appearance": { - "title": "外观", - "automatic": "自动", - "light": "浅色", - "dark": "深色" - }, - "look_and_feel": { - "title": "外观和风格", - "use_system": "跟随系统", - "really_dark": "暗色", - "sorta_dark": "深色", - "light": "浅色" - }, - "notifications": { - "title": "通知", - "favorites": "喜欢我的帖子", - "follows": "关注我", - "boosts": "转发我的帖子", - "mentions": "提及我", - "trigger": { - "anyone": "任何人", - "follower": "关注者", - "follow": "我关注的", - "noone": "没有人", - "title": "提示通知来自" - } - }, - "preference": { - "title": "偏好", - "true_black_dark_mode": "纯黑模式", - "disable_avatar_animation": "禁用动画头像", - "disable_emoji_animation": "禁用动画表情", - "using_default_browser": "使用默认浏览器打开链接", - "open_links_in_mastodon": "在 Mastodon 中打开链接" - }, - "boring_zone": { - "title": "The Boring Zone", - "account_settings": "账号设置", - "terms": "服务条款", - "privacy": "隐私政策" - }, - "spicy_zone": { - "title": "The Spicy Zone", - "clear": "清除图片缓存", - "signout": "退出" - } - }, - "footer": { - "mastodon_description": "Mastodon 是开源软件。欢迎前往 GitHub %s (%s) 贡献代码或反馈问题。" - }, - "keyboard": { - "close_settings_window": "关闭设置窗口" - } - }, - "report": { - "title_report": "举报", - "title": "举报 %s", - "step1": "步骤 1 / 2", - "step2": "步骤 2 / 2", - "content1": "是否有帖子需要举报?", - "content2": "是否有关于此举报的详细描述信息?", - "report_sent_title": "感谢提交举报,我们将会进行处理。", - "send": "发送举报", - "skip_to_send": "直接发送", - "text_placeholder": "输入或粘贴额外的注释", - "reported": "已报告", - "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" - }, - "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" - }, - "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" - }, - "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" - }, - "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" - } - }, - "preview": { - "keyboard": { - "close_preview": "关闭预览", - "show_next": "显示下一个", - "show_previous": "显示前一个" - } - }, - "account_list": { - "tab_bar_hint": "当前账户:%s。 双击并按住来打开账户切换页面", - "dismiss_account_switcher": "关闭账户切换页面", - "add_account": "添加账户" - }, - "wizard": { - "new_in_mastodon": "新功能", - "multiple_account_switch_intro_description": "按住个人资料标签按钮,即可在多个账户之间进行切换。", - "accessibility_hint": "双击关闭此向导" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/zh_CN/ios-infoPlist.json b/Localization/StringsConvertor/input/zh_CN/ios-infoPlist.json deleted file mode 100644 index 258a9e535..000000000 --- a/Localization/StringsConvertor/input/zh_CN/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "用于在帖子中附加照片", - "NSPhotoLibraryAddUsageDescription": "用于将照片保存到照片库", - "NewPostShortcutItemTitle": "新帖子", - "SearchShortcutItemTitle": "搜索" -} diff --git a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict deleted file mode 100644 index fe44cdfd0..000000000 --- a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict +++ /dev/null @@ -1,370 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 則未讀通知 - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - 輸入字數限制超過 %#@character_count@ 字 - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個字元 - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - 輸入字數限制剩餘 %#@character_count@ 字 - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個字 - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 嘟文 - - - plural.count.media - - NSStringLocalizedFormatKey - %#@media_count@ - media_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個媒體 - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 則嘟文 - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個最愛 - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個轉嘟 - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個回覆 - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 票 - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 位投票者 - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個人正在討論 - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個跟隨中 - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個跟隨者 - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 年 - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 個月 - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 天 - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 小時 - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 分鐘 - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - 還有 %ld 秒 - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 年前 - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 個月前 - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 天前 - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 小時前 - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 分鐘前 - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - other - %ld 秒前 - - - - diff --git a/Localization/StringsConvertor/input/zh_TW/app.json b/Localization/StringsConvertor/input/zh_TW/app.json deleted file mode 100644 index 862ac86c3..000000000 --- a/Localization/StringsConvertor/input/zh_TW/app.json +++ /dev/null @@ -1,666 +0,0 @@ -{ - "common": { - "alerts": { - "common": { - "please_try_again": "請再試一次。", - "please_try_again_later": "請稍候再試。" - }, - "sign_up_failure": { - "title": "註冊失敗" - }, - "server_error": { - "title": "伺服器錯誤" - }, - "vote_failure": { - "title": "投票失敗", - "poll_ended": "投票已結束" - }, - "discard_post_content": { - "title": "捨棄草稿", - "message": "確認放棄編寫中的嘟文內容。" - }, - "publish_post_failure": { - "title": "發表嘟文失敗", - "message": "發表嘟文失敗。\n請檢查您的網路連線。", - "attachments_message": { - "video_attach_with_photo": "無法在已有圖片的嘟文上附加影片。", - "more_than_one_video": "無法附加一個以上影片。" - } - }, - "edit_profile_failure": { - "title": "編輯個人檔案錯誤", - "message": "無法編輯個人檔案。請重試。" - }, - "sign_out": { - "title": "登出", - "message": "您確定要登出嗎?", - "confirm": "登出" - }, - "block_domain": { - "title": "真的非常確定封鎖整個 %s 網域嗎?大部分情況下,您只需要封鎖或靜音少數特定的帳帳戶能滿足需求了。您將不能看到來自此網域的內容。您來自該網域的跟隨者也將被移除。", - "block_entire_domain": "封鎖網域" - }, - "save_photo_failure": { - "title": "儲存照片失敗", - "message": "請開啟圖片庫存取權限以儲存照片。" - }, - "delete_post": { - "title": "刪除嘟文", - "message": "是否確定要刪除此嘟文?" - }, - "clean_cache": { - "title": "清除快取", - "message": "成功清除 %s 快取。" - } - }, - "controls": { - "actions": { - "back": "上一頁", - "next": "下一頁", - "previous": "上一步", - "open": "開啟", - "add": "新增", - "remove": "刪除", - "edit": "編輯", - "save": "儲存", - "ok": "OK", - "done": "完成", - "confirm": "確認", - "continue": "繼續", - "compose": "撰寫", - "cancel": "取消", - "discard": "捨棄", - "try_again": "再試一次", - "take_photo": "拍攝照片", - "save_photo": "儲存照片", - "copy_photo": "複製照片", - "sign_in": "登入", - "sign_up": "註冊", - "see_more": "檢視更多", - "preview": "預覽", - "share": "分享", - "share_user": "分享 %s", - "share_post": "分享嘟文", - "open_in_safari": "在 Safari 中開啟", - "open_in_browser": "在瀏覽器中開啟", - "find_people": "尋找一些人來跟隨", - "manually_search": "手動搜尋", - "skip": "跳過", - "reply": "回覆", - "report_user": "檢舉 %s", - "block_domain": "封鎖 %s", - "unblock_domain": "解除封鎖 %s", - "settings": "設定", - "delete": "刪除" - }, - "tabs": { - "home": "首頁", - "search": "搜尋", - "notification": "通知", - "profile": "個人檔案" - }, - "keyboard": { - "common": { - "switch_to_tab": "切換至 %s", - "compose_new_post": "撰寫新嘟文", - "show_favorites": "顯示最愛", - "open_settings": "開啟設定" - }, - "timeline": { - "previous_status": "先前的嘟文", - "next_status": "下一則嘟文", - "open_status": "開啟嘟文", - "open_author_profile": "開啟作者的個人檔案頁面", - "open_reblogger_profile": "開啟轉嘟者的個人檔案頁面", - "reply_status": "回覆嘟文", - "toggle_reblog": "切換轉發嘟文", - "toggle_favorite": "切換最愛嘟文", - "toggle_content_warning": "切換內容警告", - "preview_image": "預覽圖片" - }, - "segmented_control": { - "previous_section": "上一個區塊", - "next_section": "下一個區塊" - } - }, - "status": { - "user_reblogged": "%s 已轉嘟", - "user_replied_to": "回覆給 %s", - "show_post": "顯示嘟文", - "show_user_profile": "顯示使用者個人檔案頁面", - "content_warning": "內容警告", - "sensitive_content": "敏感內容", - "media_content_warning": "輕觸任何地方以顯示", - "tap_to_reveal": "輕觸以顯示", - "poll": { - "vote": "投票", - "closed": "已關閉" - }, - "actions": { - "reply": "回覆", - "reblog": "轉嘟", - "unreblog": "取消轉嘟", - "favorite": "最愛", - "unfavorite": "取消最愛", - "menu": "選單", - "hide": "隱藏", - "show_image": "顯示圖片", - "show_gif": "顯示 GIF", - "show_video_player": "顯示影片播放器", - "tap_then_hold_to_show_menu": "輕觸然後按住以顯示選單" - }, - "tag": { - "url": "網址", - "mention": "提及", - "link": "連結", - "hashtag": "主題標籤", - "email": "電子郵件", - "emoji": "emoji" - }, - "visibility": { - "unlisted": "任何人都能看到此嘟文,但是不會顯示於公開時間軸上。", - "private": "只有他們的跟隨者能看到此嘟文。", - "private_from_me": "只有我的跟隨者能看到此嘟文。", - "direct": "只有被提及的使用者能看到此嘟文。" - } - }, - "friendship": { - "follow": "跟隨", - "following": "跟隨中", - "request": "請求", - "pending": "等待中", - "block": "封鎖", - "block_user": "封鎖 %s", - "block_domain": "封鎖 %s", - "unblock": "解除封鎖", - "unblock_user": "解除封鎖 %s", - "blocked": "已封鎖", - "mute": "靜音", - "mute_user": "靜音 %s", - "unmute": "取消靜音", - "unmute_user": "取消靜音 %s", - "muted": "已靜音", - "edit_info": "編輯" - }, - "timeline": { - "filtered": "已過濾", - "timestamp": { - "now": "剛剛" - }, - "loader": { - "load_missing_posts": "讀取錯過的嘟文", - "loading_missing_posts": "正在讀取錯過的嘟文...", - "show_more_replies": "顯示更多回覆" - }, - "header": { - "no_status_found": "沒有任何嘟文", - "blocking_warning": "您無法瀏覽該使用者的個人檔案,除非您取消封鎖。\n您的個人檔案看起來像是這樣。", - "user_blocking_warning": "您無法瀏覽 %s 的個人檔案,除非您取消封鎖。\n您的個人檔案看起來像是這樣。", - "blocked_warning": "您無法瀏覽該使用者的個人檔案,除非他們取消封鎖您。", - "user_blocked_warning": "您無法瀏覽 %s 的個人檔案,除非他們取消封鎖您。", - "suspended_warning": "此使用者已被停權。", - "user_suspended_warning": "%s 的帳號已經被停權。" - } - } - } - }, - "scene": { - "welcome": { - "slogan": "社群網路\n還權於您。", - "get_started": "新手上路", - "log_in": "登入" - }, - "server_picker": { - "title": "Mastodon 由不同伺服器的使用者組成。", - "subtitle": "基於您的興趣、地區、或一般用途選定一個伺服器。", - "subtitle_extend": "基於您的興趣、地區、或一般用途選定一個伺服器。每個伺服器是由完全獨立的組織或個人營運。", - "button": { - "category": { - "all": "全部", - "all_accessiblity_description": "分類:全部", - "academia": "學術", - "activism": "社會運動", - "food": "食物", - "furry": "毛茸茸", - "games": "遊戲", - "general": "一般", - "journalism": "新聞記者", - "lgbt": "LGBT", - "regional": "區域性", - "art": "藝術", - "music": "音樂", - "tech": "科技" - }, - "see_less": "顯示較少", - "see_more": "檢視更多" - }, - "label": { - "language": "語言", - "users": "使用者", - "category": "分類" - }, - "input": { - "placeholder": "搜尋伺服器", - "search_servers_or_enter_url": "搜尋社群或輸入 URL 地址" - }, - "empty_state": { - "finding_servers": "尋找可用的伺服器...", - "bad_network": "讀取資料時發生錯誤。請檢查您的網路連線。", - "no_results": "沒有結果" - } - }, - "register": { - "title": "讓我們一起設定 %s 吧!", - "input": { - "avatar": { - "delete": "刪除" - }, - "username": { - "placeholder": "使用者名稱", - "duplicate_prompt": "此使用者名稱已被佔用。" - }, - "display_name": { - "placeholder": "顯示名稱" - }, - "email": { - "placeholder": "電子郵件" - }, - "password": { - "placeholder": "密碼", - "require": "您的密碼必須是至少:", - "character_limit": "8 個字元", - "accessibility": { - "checked": "已選擇", - "unchecked": "取消勾選" - }, - "hint": "您的密碼必須至少為八個字元" - }, - "invite": { - "registration_user_invite_request": "為什麼想要加入呢?" - } - }, - "error": { - "item": { - "username": "使用者名稱", - "email": "電子郵件", - "password": "密碼", - "agreement": "條款", - "locale": "地區", - "reason": "原因" - }, - "reason": { - "blocked": "%s 包含不被允許的電子郵件供應商", - "unreachable": "%s 似乎並不存在", - "taken": "%s 已被使用", - "reserved": "%s 是一個保留的關鍵字", - "accepted": "請先閱讀並同意 %s", - "blank": "%s 為必填選項", - "invalid": "%s 是無效的", - "too_long": "%s 太長了", - "too_short": "%s 太短了", - "inclusion": "%s 是不被支援的值" - }, - "special": { - "username_invalid": "使用者名稱僅能包含英文字母數字以及底線", - "username_too_long": "使用者名稱太長了(不能超過 30 個字元)", - "email_invalid": "這不是一個有效的電子郵件地址", - "password_too_short": "密碼太短了(至少需要八個字元)" - } - } - }, - "server_rules": { - "title": "一些基本守則。", - "subtitle": "這些被 %s 的管管們制定以及實施。", - "prompt": "繼續的話,代表您將遵守 %s 的服務條款和隱私權政策。", - "terms_of_service": "服務條款", - "privacy_policy": "隱私權政策", - "button": { - "confirm": "我已閱讀並同意" - } - }, - "confirm_email": { - "title": "最後一步。", - "subtitle": "點擊我們寄送給您的帳號驗證連結。", - "button": { - "open_email_app": "開啟電子郵件 App", - "resend": "重新發送" - }, - "dont_receive_email": { - "title": "請檢查您的電子郵件", - "description": "請檢查您的電子郵件地址是否正確,以及您的垃圾信件夾。", - "resend_email": "重新發送電子郵件" - }, - "open_email_app": { - "title": "請檢查您的收件夾。", - "description": "我們剛寄送您一封電子郵件。請檢查您的垃圾信件夾。", - "mail": "電子郵件", - "open_email_client": "請開啟電子郵件程式" - } - }, - "home_timeline": { - "title": "首頁", - "navigation_bar_state": { - "offline": "離線", - "new_posts": "檢視最新嘟文", - "published": "嘟出去!", - "Publishing": "發表嘟文...", - "accessibility": { - "logo_label": "標誌按鈕", - "logo_hint": "輕點一下捲至頂端並且再點ㄧ下回到原先位置" - } - } - }, - "suggestion_account": { - "title": "尋找一些人來跟隨", - "follow_explain": "當您跟隨這些人時,將會看到他們的嘟文出現在您的首頁時間軸上。" - }, - "compose": { - "title": { - "new_post": "新增嘟文", - "new_reply": "新增回覆" - }, - "media_selection": { - "camera": "拍攝照片", - "photo_library": "圖片庫", - "browse": "瀏覽" - }, - "content_input_placeholder": "正在想些什麼嗎?", - "compose_action": "嘟出去", - "replying_to_user": "正在回覆 %s", - "attachment": { - "photo": "照片", - "video": "影片", - "attachment_broken": "此 %s 已損毀,並無法被上傳至 Mastodon。", - "description_photo": "為視障人士提供圖片說明...", - "description_video": "為視障人士提供影片說明..." - }, - "poll": { - "duration_time": "持續時間:%s", - "thirty_minutes": "30 分鐘", - "one_hour": "一小時", - "six_hours": "六小時", - "one_day": "一天", - "three_days": "三天", - "seven_days": "七天", - "option_number": "選項 %ld" - }, - "content_warning": { - "placeholder": "請於此處寫下精準的警告..." - }, - "visibility": { - "public": "公開", - "unlisted": "不公開", - "private": "僅限跟隨者", - "direct": "僅限於我提及的人" - }, - "auto_complete": { - "space_to_add": "添加的空白" - }, - "accessibility": { - "append_attachment": "新增附件", - "append_poll": "新增投票", - "remove_poll": "移除投票", - "custom_emoji_picker": "自訂 emoji 選擇器", - "enable_content_warning": "啟用內容警告", - "disable_content_warning": "停用內容警告", - "post_visibility_menu": "嘟文可見性選單" - }, - "keyboard": { - "discard_post": "捨棄嘟文", - "publish_post": "發表嘟文", - "toggle_poll": "切換投票", - "toggle_content_warning": "切換內容警告", - "append_attachment_entry": "新增附件 - %s", - "select_visibility_entry": "選擇可見性 - %s" - } - }, - "profile": { - "dashboard": { - "posts": "嘟文", - "following": "跟隨中", - "followers": "跟隨者" - }, - "fields": { - "add_row": "新增列", - "placeholder": { - "label": "標籤", - "content": "內容" - } - }, - "segmented_control": { - "posts": "嘟文", - "replies": "回覆", - "posts_and_replies": "嘟文及回覆", - "media": "媒體", - "about": "關於" - }, - "relationship_action_alert": { - "confirm_mute_user": { - "title": "靜音", - "message": "確認將 %s 靜音" - }, - "confirm_unmute_user": { - "title": "取消靜音", - "message": "確認將 %s 取消靜音" - }, - "confirm_block_user": { - "title": "封鎖", - "message": "確認將 %s 封鎖" - }, - "confirm_unblock_user": { - "title": "取消封鎖", - "message": "確認將 %s 取消封鎖" - } - }, - "accessibility": { - "show_avatar_image": "顯示大頭貼", - "edit_avatar_image": "編輯大頭貼", - "show_banner_image": "顯示橫幅圖片", - "double_tap_to_open_the_list": "點兩下以開啟列表" - } - }, - "follower": { - "footer": "來自其他伺服器的跟隨者不會被顯示。" - }, - "following": { - "footer": "來自其他伺服器的跟隨中不會被顯示。" - }, - "search": { - "title": "搜尋", - "search_bar": { - "placeholder": "搜尋主題標籤及使用者", - "cancel": "取消" - }, - "recommend": { - "button_text": "檢視全部", - "hash_tag": { - "title": "Mastodon 上的熱門討論", - "description": "發燒中的主題標籤", - "people_talking": "%s 人正在討論" - }, - "accounts": { - "title": "您可能會喜歡的帳號", - "description": "您也許想跟隨這些帳號", - "follow": "跟隨" - } - }, - "searching": { - "segment": { - "all": "全部", - "people": "使用者", - "hashtags": "主題標籤", - "posts": "嘟文" - }, - "empty_state": { - "no_results": "沒有任何結果" - }, - "recent_search": "最近的搜尋", - "clear": "清除" - } - }, - "discovery": { - "tabs": { - "posts": "嘟文", - "hashtags": "主題標籤", - "news": "最新消息", - "community": "社群", - "for_you": "為您推薦" - }, - "intro": "這些嘟文正在您 Mastodon 的角落受到注目。" - }, - "favorite": { - "title": "您的最愛" - }, - "notification": { - "title": { - "Everything": "全部", - "Mentions": "提及" - }, - "notification_description": { - "followed_you": "跟隨了您", - "favorited_your_post": "最愛了您的嘟文", - "reblogged_your_post": "轉嘟了您的嘟文", - "mentioned_you": "提到了您", - "request_to_follow_you": "要求跟隨您", - "poll_has_ended": "投票已結束" - }, - "keyobard": { - "show_everything": "顯示全部", - "show_mentions": "顯示提及" - } - }, - "thread": { - "back_title": "嘟文", - "title": "來自 %s 的嘟文" - }, - "settings": { - "title": "設定", - "section": { - "appearance": { - "title": "外觀設定", - "automatic": "自動", - "light": "亮色佈景主題", - "dark": "深色佈景主題" - }, - "look_and_feel": { - "title": "外觀與風格", - "use_system": "與系統一致", - "really_dark": "闇黑風格", - "sorta_dark": "有點黑又不會太黑", - "light": "淺色" - }, - "notifications": { - "title": "通知", - "favorites": "將我的嘟文加到最愛", - "follows": "跟隨著我", - "boosts": "將我的嘟文轉嘟", - "mentions": "提到了我", - "trigger": { - "anyone": "任何人", - "follower": "跟隨者", - "follow": "任何我跟隨的人", - "noone": "沒有人", - "title": "以下狀況請通知我" - } - }, - "preference": { - "title": "偏好設定", - "true_black_dark_mode": "真☆闇黑模式", - "disable_avatar_animation": "停用動畫大頭貼", - "disable_emoji_animation": "停用動畫 emoji", - "using_default_browser": "使用預設瀏覽器開啟連結", - "open_links_in_mastodon": "在 Mastodon 中開啟連結" - }, - "boring_zone": { - "title": "無聊的這些", - "account_settings": "帳號設定", - "terms": "服務條款", - "privacy": "隱私權政策" - }, - "spicy_zone": { - "title": "危險地帶", - "clear": "清除媒體快取", - "signout": "登出" - } - }, - "footer": { - "mastodon_description": "Mastodon 是開源軟體。您可以在 GitHub %s (%s) 上回報問題。" - }, - "keyboard": { - "close_settings_window": "關閉設定視窗" - } - }, - "report": { - "title_report": "檢舉", - "title": "檢舉 %s", - "step1": "兩個步驟中的第一步", - "step2": "兩個步驟中的第二步", - "content1": "還有其他您想加入這份檢舉報告的嘟文嗎?", - "content2": "有其他管管們需要知道關於這份檢舉報告的嗎?", - "report_sent_title": "感謝您的檢舉,我們將著手處理。", - "send": "傳送檢舉報告", - "skip_to_send": "不加入備註並傳送", - "text_placeholder": "請輸入或貼上額外的備註", - "reported": "已檢舉", - "step_one": { - "step_1_of_4": "四個步驟中的第一步", - "whats_wrong_with_this_post": "這則嘟文有什麼問題嗎?", - "whats_wrong_with_this_account": "這個帳號有什麼問題嗎?", - "whats_wrong_with_this_username": "%s 有什麼問題嗎?", - "select_the_best_match": "選擇最佳條件符合", - "i_dont_like_it": "我不喜歡", - "it_is_not_something_you_want_to_see": "這是您不想看到的", - "its_spam": "垃圾訊息", - "malicious_links_fake_engagement_or_repetetive_replies": "有害連結、假造的互動,或是重複性回覆", - "it_violates_server_rules": "違反伺服器規則", - "you_are_aware_that_it_breaks_specific_rules": "您知道它違反特定規則", - "its_something_else": "其他原因", - "the_issue_does_not_fit_into_other_categories": "這個問題不屬於其他分類" - }, - "step_two": { - "step_2_of_4": "四個步驟中的第二步", - "which_rules_are_being_violated": "違反了哪些規則?", - "select_all_that_apply": "請選擇所有適用的選項", - "i_just_don’t_like_it": "就是不順眼" - }, - "step_three": { - "step_3_of_4": "四個步驟中的第三步", - "are_there_any_posts_that_back_up_this_report": "是否有能佐證這份檢舉之嘟文?", - "select_all_that_apply": "請選擇所有適用的選項" - }, - "step_four": { - "step_4_of_4": "四個步驟中的第四步", - "is_there_anything_else_we_should_know": "有什麼其他您想讓我們知道的嗎?" - }, - "step_final": { - "dont_want_to_see_this": "不想再看到這個?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "當您看到某些不喜歡的內容時,您可以將該帳號從您的體驗中移除。", - "unfollow": "取消跟隨", - "unfollowed": "已取消跟隨", - "unfollow_user": "取消跟隨 %s", - "mute_user": "靜音 %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "您不會在您的首頁時間軸中再見到他們的嘟文或轉嘟。他們不會知道他們已被靜音。", - "block_user": "封鎖 %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "他們將無法跟隨您或是看到您的嘟文。他們能看到他們是否已被封鎖。", - "while_we_review_this_you_can_take_action_against_user": "當我們正在審核時,您可以對 %s 採取以下措施" - } - }, - "preview": { - "keyboard": { - "close_preview": "關閉預覽", - "show_next": "顯示下一筆", - "show_previous": "顯示上一筆" - } - }, - "account_list": { - "tab_bar_hint": "目前已選擇的個人檔案:%s。點兩下然後按住以顯示帳號切換器", - "dismiss_account_switcher": "關閉帳號切換器", - "add_account": "新增帳號" - }, - "wizard": { - "new_in_mastodon": "Mastodon 新功能", - "multiple_account_switch_intro_description": "按住個人檔案按鈕以於多個帳號間切換。", - "accessibility_hint": "點兩下以關閉此設定精靈" - } - } -} \ No newline at end of file diff --git a/Localization/StringsConvertor/input/zh_TW/ios-infoPlist.json b/Localization/StringsConvertor/input/zh_TW/ios-infoPlist.json deleted file mode 100644 index 645b3a5e7..000000000 --- a/Localization/StringsConvertor/input/zh_TW/ios-infoPlist.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "NSCameraUsageDescription": "用來拍照發嘟文", - "NSPhotoLibraryAddUsageDescription": "用來儲存照片到圖片庫", - "NewPostShortcutItemTitle": "新增嘟文", - "SearchShortcutItemTitle": "搜尋" -} From 8cf1c434cb662ba1273b796bc69c4d831a24ce52 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 12:15:42 +0800 Subject: [PATCH 379/571] chore: remove intents old input strings --- .gitignore | 2 +- .../Intents/input/ar_SA/Intents.strings | 51 ------------------ .../Intents/input/ar_SA/Intents.stringsdict | 54 ------------------- .../Intents/input/ca_ES/Intents.strings | 51 ------------------ .../Intents/input/ca_ES/Intents.stringsdict | 38 ------------- .../Intents/input/ckb_IR/Intents.strings | 51 ------------------ .../Intents/input/ckb_IR/Intents.stringsdict | 38 ------------- .../Intents/input/cy_GB/Intents.strings | 51 ------------------ .../Intents/input/cy_GB/Intents.stringsdict | 54 ------------------- .../Intents/input/da_DK/Intents.strings | 51 ------------------ .../Intents/input/da_DK/Intents.stringsdict | 38 ------------- .../Intents/input/de_DE/Intents.strings | 51 ------------------ .../Intents/input/de_DE/Intents.stringsdict | 38 ------------- .../Intents/input/en_US/Intents.strings | 51 ------------------ .../Intents/input/en_US/Intents.stringsdict | 38 ------------- .../Intents/input/es_AR/Intents.strings | 51 ------------------ .../Intents/input/es_AR/Intents.stringsdict | 38 ------------- .../Intents/input/es_ES/Intents.strings | 51 ------------------ .../Intents/input/es_ES/Intents.stringsdict | 38 ------------- .../Intents/input/eu_ES/Intents.strings | 51 ------------------ .../Intents/input/eu_ES/Intents.stringsdict | 38 ------------- .../Intents/input/fi_FI/Intents.strings | 51 ------------------ .../Intents/input/fi_FI/Intents.stringsdict | 38 ------------- .../Intents/input/fr_FR/Intents.strings | 51 ------------------ .../Intents/input/fr_FR/Intents.stringsdict | 38 ------------- .../Intents/input/gd_GB/Intents.strings | 51 ------------------ .../Intents/input/gd_GB/Intents.stringsdict | 46 ---------------- .../Intents/input/gl_ES/Intents.strings | 51 ------------------ .../Intents/input/gl_ES/Intents.stringsdict | 38 ------------- .../Intents/input/hi_IN/Intents.strings | 51 ------------------ .../Intents/input/hi_IN/Intents.stringsdict | 38 ------------- .../Intents/input/id_ID/Intents.strings | 51 ------------------ .../Intents/input/id_ID/Intents.stringsdict | 34 ------------ .../Intents/input/it_IT/Intents.strings | 51 ------------------ .../Intents/input/it_IT/Intents.stringsdict | 38 ------------- .../Intents/input/ja_JP/Intents.strings | 51 ------------------ .../Intents/input/ja_JP/Intents.stringsdict | 34 ------------ .../Intents/input/kab_KAB/Intents.strings | 51 ------------------ .../Intents/input/kab_KAB/Intents.stringsdict | 38 ------------- .../Intents/input/kmr_TR/Intents.strings | 51 ------------------ .../Intents/input/kmr_TR/Intents.stringsdict | 38 ------------- .../Intents/input/ko_KR/Intents.strings | 51 ------------------ .../Intents/input/ko_KR/Intents.stringsdict | 34 ------------ .../Intents/input/nl_NL/Intents.strings | 51 ------------------ .../Intents/input/nl_NL/Intents.stringsdict | 38 ------------- .../Intents/input/pt_BR/Intents.strings | 51 ------------------ .../Intents/input/pt_BR/Intents.stringsdict | 38 ------------- .../Intents/input/pt_PT/Intents.strings | 51 ------------------ .../Intents/input/pt_PT/Intents.stringsdict | 38 ------------- .../Intents/input/ro_RO/Intents.strings | 51 ------------------ .../Intents/input/ro_RO/Intents.stringsdict | 42 --------------- .../Intents/input/ru_RU/Intents.strings | 51 ------------------ .../Intents/input/ru_RU/Intents.stringsdict | 46 ---------------- .../Intents/input/sv_FI/Intents.strings | 51 ------------------ .../Intents/input/sv_FI/Intents.stringsdict | 38 ------------- .../Intents/input/sv_SE/Intents.strings | 51 ------------------ .../Intents/input/sv_SE/Intents.stringsdict | 38 ------------- .../Intents/input/th_TH/Intents.strings | 51 ------------------ .../Intents/input/th_TH/Intents.stringsdict | 34 ------------ .../Intents/input/tr_TR/Intents.strings | 51 ------------------ .../Intents/input/tr_TR/Intents.stringsdict | 38 ------------- .../Intents/input/vi_VN/Intents.strings | 51 ------------------ .../Intents/input/vi_VN/Intents.stringsdict | 34 ------------ .../Intents/input/zh_CN/Intents.strings | 51 ------------------ .../Intents/input/zh_CN/Intents.stringsdict | 34 ------------ .../Intents/input/zh_TW/Intents.strings | 51 ------------------ .../Intents/input/zh_TW/Intents.stringsdict | 34 ------------ 67 files changed, 1 insertion(+), 2962 deletions(-) delete mode 100644 Localization/StringsConvertor/Intents/input/ar_SA/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ar_SA/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ca_ES/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ca_ES/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ckb_IR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ckb_IR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/cy_GB/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/cy_GB/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/da_DK/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/da_DK/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/de_DE/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/de_DE/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/en_US/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/en_US/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/es_AR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/es_AR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/es_ES/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/es_ES/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/eu_ES/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/eu_ES/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/fr_FR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/fr_FR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/gd_GB/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/hi_IN/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/hi_IN/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/id_ID/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/id_ID/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/it_IT/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/it_IT/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ja_JP/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ja_JP/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/kab_KAB/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/kab_KAB/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/kmr_TR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/kmr_TR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ko_KR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ko_KR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/nl_NL/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/nl_NL/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/pt_BR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/pt_BR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/pt_PT/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/pt_PT/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ro_RO/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ro_RO/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/ru_RU/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/ru_RU/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/sv_FI/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/sv_FI/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/sv_SE/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/th_TH/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/th_TH/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/tr_TR/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/tr_TR/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/vi_VN/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/vi_VN/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/zh_CN/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/zh_CN/Intents.stringsdict delete mode 100644 Localization/StringsConvertor/Intents/input/zh_TW/Intents.strings delete mode 100644 Localization/StringsConvertor/Intents/input/zh_TW/Intents.stringsdict diff --git a/.gitignore b/.gitignore index a605c524d..6f4802cab 100644 --- a/.gitignore +++ b/.gitignore @@ -120,6 +120,6 @@ xcuserdata # End of https://www.toptal.com/developers/gitignore/api/swift,swiftpm,xcode,cocoapods -Localization/StringsConvertor/input +# Localization/StringsConvertor/input Localization/StringsConvertor/output .DS_Store \ No newline at end of file diff --git a/Localization/StringsConvertor/Intents/input/ar_SA/Intents.strings b/Localization/StringsConvertor/Intents/input/ar_SA/Intents.strings deleted file mode 100644 index 49183a431..000000000 --- a/Localization/StringsConvertor/Intents/input/ar_SA/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "النَّشرُ عَلَى مَاستودُون"; - -"751xkl" = "محتوى نصي"; - -"CsR7G2" = "انشر على ماستدون"; - -"HZSGTr" = "ما المُحتوى المُراد نشره؟"; - -"HdGikU" = "فَشَلَ النشر"; - -"KDNTJ4" = "سبب الإخفاق"; - -"RHxKOw" = "إرسال مَنشور يَحوي نص"; - -"RxSqsb" = "مَنشور"; - -"WCIR3D" = "نَشرُ ${content} عَلَى مَاستودُون"; - -"ZKJSNu" = "مَنشور"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "مدى الظهور"; - -"Zo4jgJ" = "مدى ظهور المنشور"; - -"apSxMG-dYQ5NN" = "هُناك عدد ${count} خِيار مُطابق لِـ\"عام\"."; - -"apSxMG-ehFLjY" = "هُناك عدد ${count} خِيار مُطابق لِـ\"المُتابِعُون فقط\"."; - -"ayoYEb-dYQ5NN" = "${content}، عام"; - -"ayoYEb-ehFLjY" = "${content}، المُتابِعُون فقط"; - -"dUyuGg" = "النَّشرُ عَلَى مَاستودُون"; - -"dYQ5NN" = "لِلعَامَّة"; - -"ehFLjY" = "لمتابعيك فقط"; - -"gfePDu" = "فَشَلَ النشر، ${failureReason}"; - -"k7dbKQ" = "تمَّ إرسال المنشور بِنجاح."; - -"oGiqmY-dYQ5NN" = "للتأكيد، هل تَريد \"عام\"؟"; - -"oGiqmY-ehFLjY" = "للتأكيد، هل تُريد \"للمُتابِعين فقط\"؟"; - -"rM6dvp" = "عنوان URL"; - -"ryJLwG" = "تم إرسال المنشور بنجاح. "; diff --git a/Localization/StringsConvertor/Intents/input/ar_SA/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ar_SA/Intents.stringsdict deleted file mode 100644 index e44e666ae..000000000 --- a/Localization/StringsConvertor/Intents/input/ar_SA/Intents.stringsdict +++ /dev/null @@ -1,54 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - هُناك %#@count_option@ تتطابق مَعَ '${content}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - لا خيار - one - خيار واحد - two - خياران - few - %ld خيارات - many - %ld خيارًا - other - %ld خيار - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - هُناك %#@count_option@ تتطابق مَعَ '${visibility}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - لا خيار - one - خيار واحد - two - خياران - few - %ld خيارات - many - %ld خيارًا - other - %ld خيار - - - - diff --git a/Localization/StringsConvertor/Intents/input/ca_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/ca_ES/Intents.strings deleted file mode 100644 index 6b92eb263..000000000 --- a/Localization/StringsConvertor/Intents/input/ca_ES/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Publica a Mastodon"; - -"751xkl" = "Contingut del Text"; - -"CsR7G2" = "Publicació"; - -"HZSGTr" = "Quin contingut publicar?"; - -"HdGikU" = "Publicació fallida"; - -"KDNTJ4" = "Motiu del error"; - -"RHxKOw" = "Envia Publicació amb contingut de text"; - -"RxSqsb" = "Publicació"; - -"WCIR3D" = "Publica ${content} a Mastodon"; - -"ZKJSNu" = "Publicació"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilitat"; - -"Zo4jgJ" = "Visibilitat de la Publicació"; - -"apSxMG-dYQ5NN" = "Hi ha ${count} opcions que coincideixen amb ‘Públic’."; - -"apSxMG-ehFLjY" = "Hi ha ${count} opcions que coincideixen amb ‘Només Seguidors’."; - -"ayoYEb-dYQ5NN" = "${content}, Públic"; - -"ayoYEb-ehFLjY" = "${content}, Només Seguidors"; - -"dUyuGg" = "Publicació"; - -"dYQ5NN" = "Públic"; - -"ehFLjY" = "Només Seguidors"; - -"gfePDu" = "Publicació fallida. ${failureReason}"; - -"k7dbKQ" = "La publicació s'ha enviat correctament."; - -"oGiqmY-dYQ5NN" = "Només per a confirmar, volies 'Públic'?"; - -"oGiqmY-ehFLjY" = "Només per a confirmar, volies 'Només Seguidors'?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "La publicació s'ha enviat correctament. "; diff --git a/Localization/StringsConvertor/Intents/input/ca_ES/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ca_ES/Intents.stringsdict deleted file mode 100644 index be8bec34d..000000000 --- a/Localization/StringsConvertor/Intents/input/ca_ES/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Hi ha %#@count_option@ coincidents amb ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opció - other - %ld opcions - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Hi ha %#@count_option@ coincidents amb ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opció - other - %ld opcions - - - - diff --git a/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.strings b/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.strings deleted file mode 100644 index 1d23253a3..000000000 --- a/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "پۆستێک بکە"; - -"751xkl" = "نووسین"; - -"CsR7G2" = "پۆستێک بکە"; - -"HZSGTr" = "چی پۆست بکرێت؟"; - -"HdGikU" = "پۆستکردنەکە سەرکەوتوو نەبوو"; - -"KDNTJ4" = "هۆکاری سەرنەکەوتن"; - -"RHxKOw" = "پۆست بە نووسینەوە بکە"; - -"RxSqsb" = "پۆست"; - -"WCIR3D" = "${content} لە ماستۆدۆن پۆست بکە"; - -"ZKJSNu" = "پۆست"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "دەرکەوتن"; - -"Zo4jgJ" = "دەرکەوتنی پۆست"; - -"apSxMG-dYQ5NN" = "${count} بژاردە بۆ 'گشتی' هەن."; - -"apSxMG-ehFLjY" = "${count} بژاردە بۆ 'تەنیا شوێنکەوتووەکان' هەن."; - -"ayoYEb-dYQ5NN" = "${content}، گشتی"; - -"ayoYEb-ehFLjY" = "${content}، تەنیا شوێنکەوتووەکان"; - -"dUyuGg" = "پۆستێک بکە"; - -"dYQ5NN" = "گشتی"; - -"ehFLjY" = "تەنیا شوێنکەوتووەکان"; - -"gfePDu" = "پۆستکردنەکە سەرکەوتوو نەبوو. ${failureReason}"; - -"k7dbKQ" = "پۆستەکە کرا."; - -"oGiqmY-dYQ5NN" = "دڵنیایت لە هەڵبژاردنی 'گشتی'؟"; - -"oGiqmY-ehFLjY" = "دڵنیایت لە هەڵبژاردنی 'تەنیا شوێنکەوتووەکان'؟"; - -"rM6dvp" = "بەستەر"; - -"ryJLwG" = "پۆستەکە کرا. "; diff --git a/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.stringsdict deleted file mode 100644 index eadf92582..000000000 --- a/Localization/StringsConvertor/Intents/input/ckb_IR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - %#@count_option@ بژاردە بۆ '${content}' هەن. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld بژاردە - other - %ld بژاردە - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - %#@count_option@ بژاردە بۆ '${visibility}' هەن. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld بژاردە - other - %ld بژاردە - - - - diff --git a/Localization/StringsConvertor/Intents/input/cy_GB/Intents.strings b/Localization/StringsConvertor/Intents/input/cy_GB/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/cy_GB/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/cy_GB/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/cy_GB/Intents.stringsdict deleted file mode 100644 index f273a551d..000000000 --- a/Localization/StringsConvertor/Intents/input/cy_GB/Intents.stringsdict +++ /dev/null @@ -1,54 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - %ld options - one - 1 option - two - %ld options - few - %ld options - many - %ld options - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - %ld options - one - 1 option - two - %ld options - few - %ld options - many - %ld options - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings b/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/da_DK/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/da_DK/Intents.stringsdict deleted file mode 100644 index 18422c772..000000000 --- a/Localization/StringsConvertor/Intents/input/da_DK/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings b/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings deleted file mode 100644 index fd3fbd40f..000000000 --- a/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Auf Mastodon posten"; - -"751xkl" = "Textinhalt"; - -"CsR7G2" = "Auf Mastodon posten"; - -"HZSGTr" = "Welcher Inhalt soll gepostet werden?"; - -"HdGikU" = "Posten fehlgeschlagen"; - -"KDNTJ4" = "Fehlerursache"; - -"RHxKOw" = "Beitrag mit Textinhalt posten"; - -"RxSqsb" = "Beitrag"; - -"WCIR3D" = "Poste ${content} auf Mastodon"; - -"ZKJSNu" = "Beitrag"; - -"ZS1XaK" = "Inhalt: ${content}"; - -"ZbSjzC" = "Sichtbarkeit"; - -"Zo4jgJ" = "Sichtbarkeit des Beitrags"; - -"apSxMG-dYQ5NN" = "Es gibt ${count} Optionen, die zu ''öffentlich\" passen."; - -"apSxMG-ehFLjY" = "Es gibt ${count} Optionen, die zu ''nur für Follower\" passen."; - -"ayoYEb-dYQ5NN" = "${content}, öffentlich"; - -"ayoYEb-ehFLjY" = "${content}, nur für Follower"; - -"dUyuGg" = "Auf Mastodon posten"; - -"dYQ5NN" = "Öffentlich"; - -"ehFLjY" = "Nur für Follower"; - -"gfePDu" = "Posten fehlgeschlagen. ${failureReason}"; - -"k7dbKQ" = "Beitrag wurde erfolgreich gesendet."; - -"oGiqmY-dYQ5NN" = "Nur zur Bestätigung, du wolltest \"Öffentlich\"?"; - -"oGiqmY-ehFLjY" = "Nur zur Bestätigung, du wolltest \"Nur für Follower\"?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Beitrag wurde erfolgreich gesendet. "; diff --git a/Localization/StringsConvertor/Intents/input/de_DE/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/de_DE/Intents.stringsdict deleted file mode 100644 index 7a689362a..000000000 --- a/Localization/StringsConvertor/Intents/input/de_DE/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Es gibt %#@count_option@ Optionen passend zu ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 Option - other - %ld Optionen - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Es gibt %#@count_option@ Optionen passend zu ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 Option - other - %ld Optionen - - - - diff --git a/Localization/StringsConvertor/Intents/input/en_US/Intents.strings b/Localization/StringsConvertor/Intents/input/en_US/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/en_US/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/en_US/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/en_US/Intents.stringsdict deleted file mode 100644 index 18422c772..000000000 --- a/Localization/StringsConvertor/Intents/input/en_US/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings b/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings deleted file mode 100644 index 55a47e209..000000000 --- a/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Enviar a Mastodon"; - -"751xkl" = "Contenido del texto"; - -"CsR7G2" = "Enviar"; - -"HZSGTr" = "¿Qué contenido enviar?"; - -"HdGikU" = "Error al enviar mensaje"; - -"KDNTJ4" = "Motivo del error"; - -"RHxKOw" = "Enviar mensaje con contenido de texto"; - -"RxSqsb" = "Mensaje"; - -"WCIR3D" = "Enviar ${content} a Mastodon"; - -"ZKJSNu" = "Mensaje"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilidad"; - -"Zo4jgJ" = "Visibilidad del mensaje"; - -"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con \"Público\"."; - -"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con \"Sólo para seguidores\"."; - -"ayoYEb-dYQ5NN" = "${content}, público"; - -"ayoYEb-ehFLjY" = "${content}, sólo para seguidores"; - -"dUyuGg" = "Enviar"; - -"dYQ5NN" = "Público"; - -"ehFLjY" = "Sólo para seguidores"; - -"gfePDu" = "Error al enviar mensaje. ${failureReason}"; - -"k7dbKQ" = "El mensaje se envió exitosamente."; - -"oGiqmY-dYQ5NN" = "Sólo para confirmar, ¿querías que este mensaje sea PÚBLICO?"; - -"oGiqmY-ehFLjY" = "Sólo para confirmar, ¿querías que este mensaje sea SÓLO PARA SEGUIDORES?"; - -"rM6dvp" = "Dirección web"; - -"ryJLwG" = "El mensaje se envió exitosamente. "; diff --git a/Localization/StringsConvertor/Intents/input/es_AR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/es_AR/Intents.stringsdict deleted file mode 100644 index bb3933d8e..000000000 --- a/Localization/StringsConvertor/Intents/input/es_AR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Hay %#@count_option@ coincidentes con ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opciones - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Hay %#@count_option@ coincidentes con ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opciones - - - - diff --git a/Localization/StringsConvertor/Intents/input/es_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/es_ES/Intents.strings deleted file mode 100644 index 2b8714356..000000000 --- a/Localization/StringsConvertor/Intents/input/es_ES/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Publicar en Mastodon"; - -"751xkl" = "Contenido de Texto"; - -"CsR7G2" = "Publicar en Mastodon"; - -"HZSGTr" = "¿Qué contenido publicar?"; - -"HdGikU" = "Publicación fallida"; - -"KDNTJ4" = "Motivo del Fallo"; - -"RHxKOw" = "Enviar Publicación con contenido de texto"; - -"RxSqsb" = "Publicación"; - -"WCIR3D" = "Publicar ${content} en Mastodon"; - -"ZKJSNu" = "Publicación"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilidad"; - -"Zo4jgJ" = "Visibilidad del Post"; - -"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con «Público»."; - -"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con «Solo seguidores»."; - -"ayoYEb-dYQ5NN" = "${content}, Público"; - -"ayoYEb-ehFLjY" = "${content}, Solo Seguidores"; - -"dUyuGg" = "Publicar en Mastodon"; - -"dYQ5NN" = "Público"; - -"ehFLjY" = "Solo Seguidores"; - -"gfePDu" = "Publicación fallida. ${failureReason}"; - -"k7dbKQ" = "Publicación enviada con éxito."; - -"oGiqmY-dYQ5NN" = "Solo por confirmar, ¿querías «Público»?"; - -"oGiqmY-ehFLjY" = "Solo por confirmar, ¿querías «Solo seguidores»?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Publicación enviada con éxito. "; diff --git a/Localization/StringsConvertor/Intents/input/es_ES/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/es_ES/Intents.stringsdict deleted file mode 100644 index a85d7cee7..000000000 --- a/Localization/StringsConvertor/Intents/input/es_ES/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Hay %#@count_option@ coincidencias con «${content}». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opciones - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Hay %#@count_option@ coincidencias con «${visibility}». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opciones - - - - diff --git a/Localization/StringsConvertor/Intents/input/eu_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/eu_ES/Intents.strings deleted file mode 100644 index dbc27c1cf..000000000 --- a/Localization/StringsConvertor/Intents/input/eu_ES/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Argitaratu Mastodonen"; - -"751xkl" = "Testu-edukia"; - -"CsR7G2" = "Argitaratu Mastodonen"; - -"HZSGTr" = "Ze eduki argitaratu?"; - -"HdGikU" = "Argitaratzeak huts egin du"; - -"KDNTJ4" = "Hutsegitearen arrazoia"; - -"RHxKOw" = "Argitaratu bidalketa testu-edukiarekin"; - -"RxSqsb" = "Bidali"; - -"WCIR3D" = "Argitaratu ${content} Mastodonen"; - -"ZKJSNu" = "Bidali"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Ikusgaitasuna"; - -"Zo4jgJ" = "Bidalketaren ikusgaitasuna"; - -"apSxMG-dYQ5NN" = "'Publikoa'-rekin bat datozen ${count} aukera daude."; - -"apSxMG-ehFLjY" = "'Jarraitzaileak soilik'-ekin bat datozen ${count} aukera daude."; - -"ayoYEb-dYQ5NN" = "${content}, publikoa"; - -"ayoYEb-ehFLjY" = "${content}, jarraitzaileak besterik ez"; - -"dUyuGg" = "Argitaratu Mastodonen"; - -"dYQ5NN" = "Publikoa"; - -"ehFLjY" = "Jarraitzaileak soilik"; - -"gfePDu" = "Argitaratzeak huts egin du. ${failureReason}"; - -"k7dbKQ" = "Bidalketa behar bezala bidali da."; - -"oGiqmY-dYQ5NN" = "Berresteagatik, 'Publikoa' izatea nahi duzu?"; - -"oGiqmY-ehFLjY" = "Berresteagatik, 'Jarraitzaileak soilik' izatea nahi duzu?"; - -"rM6dvp" = "URLa"; - -"ryJLwG" = "Bidalketa behar bezala bidali da. "; diff --git a/Localization/StringsConvertor/Intents/input/eu_ES/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/eu_ES/Intents.stringsdict deleted file mode 100644 index 9246c3475..000000000 --- a/Localization/StringsConvertor/Intents/input/eu_ES/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - ${content}(e)kin bat datozen %#@count_option@ daude. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - Aukera 1 - other - %ld aukera - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - ${visibility}(e)kin bat datozen %#@count_option@ daude. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - Aukera 1 - other - %ld aukera - - - - diff --git a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings deleted file mode 100644 index 1be213d45..000000000 --- a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Julkaise Mastodonissa"; - -"751xkl" = "Tekstisisältö"; - -"CsR7G2" = "Julkaise Mastodonissa"; - -"HZSGTr" = "Mitä sisältöä julkaista?"; - -"HdGikU" = "Julkaiseminen epäonnistui"; - -"KDNTJ4" = "Epäonnistumisen syy"; - -"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; - -"RxSqsb" = "Julkaisu"; - -"WCIR3D" = "Julkaise ${content} Mastodonissa"; - -"ZKJSNu" = "Julkaisu"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Näkyvyys"; - -"Zo4jgJ" = "Julkaisun näkyvyys"; - -"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; - -"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; - -"ayoYEb-dYQ5NN" = "${content}, julkinen"; - -"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; - -"dUyuGg" = "Julkaise Mastodonissa"; - -"dYQ5NN" = "Julkinen"; - -"ehFLjY" = "Vain seuraajat"; - -"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; - -"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; - -"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; - -"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; diff --git a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict deleted file mode 100644 index 7825b778e..000000000 --- a/Localization/StringsConvertor/Intents/input/fi_FI/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - On %#@count_option@, joka/jotka vastaavat sisältöön ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vaihtoehto - other - %ld vaihtoehtoa - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - On vaihtoehtoa %#@count_option@, joka/jotka vastaavat näkyvyyteen ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vaihtoehto - other - %ld vaihtoehtoa - - - - diff --git a/Localization/StringsConvertor/Intents/input/fr_FR/Intents.strings b/Localization/StringsConvertor/Intents/input/fr_FR/Intents.strings deleted file mode 100644 index 2703edd42..000000000 --- a/Localization/StringsConvertor/Intents/input/fr_FR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Publier sur Mastodon"; - -"751xkl" = "Contenu textuel"; - -"CsR7G2" = "Publier sur Mastodon"; - -"HZSGTr" = "Quel contenu à publier ?"; - -"HdGikU" = "Échec lors de la publication"; - -"KDNTJ4" = "Raison de l’échec"; - -"RHxKOw" = "Envoyer une publication avec du contenu texte"; - -"RxSqsb" = "Publication"; - -"WCIR3D" = "Publier du ${content} sur Mastodon"; - -"ZKJSNu" = "Publication"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilité"; - -"Zo4jgJ" = "Visibilité de la publication"; - -"apSxMG-dYQ5NN" = "Il y a ${count} options correspondant à « Public »."; - -"apSxMG-ehFLjY" = "Il y a ${count} options correspondant à « Abonnés uniquement »."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, abonné·e·s seulement"; - -"dUyuGg" = "Publier sur Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Abonné·e·s seulement"; - -"gfePDu" = "Échec lors de la publication. ${failureReason}"; - -"k7dbKQ" = "Message publié avec succès."; - -"oGiqmY-dYQ5NN" = "Juste pour confirmer, vous vouliez « Public » ?"; - -"oGiqmY-ehFLjY" = "Juste pour confirmer, vous vouliez bien diffuser vers « abonné·e·s uniquement » ?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "La publication a été envoyée avec succès. "; diff --git a/Localization/StringsConvertor/Intents/input/fr_FR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/fr_FR/Intents.stringsdict deleted file mode 100644 index 53d39da2e..000000000 --- a/Localization/StringsConvertor/Intents/input/fr_FR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Il y a %#@count_option@ correspondant à « ${content} ». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Il y a %#@count_option@ correspondant à « ${visibility} ». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings b/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings deleted file mode 100644 index 526defecd..000000000 --- a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Postaich air Mastodon"; - -"751xkl" = "Susbaint teacsa"; - -"CsR7G2" = "Postaich air Mastodon"; - -"HZSGTr" = "Dè an t-susbaint ri postadh?"; - -"HdGikU" = "Dh’fhàillig leis a’ phostadh"; - -"KDNTJ4" = "Adhbhar an fhàilligidh"; - -"RHxKOw" = "Cuir post le susbaint teacsa"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Postaich ${content} air Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Faicsinneachd"; - -"Zo4jgJ" = "Faicsinneachd a’ phuist"; - -"apSxMG-dYQ5NN" = "Tha ${count} roghainn(ean) dha “Poblach” ann."; - -"apSxMG-ehFLjY" = "Tha ${count} roghainn(ean) dha “Luchd-leantainn a-mhàin” ann."; - -"ayoYEb-dYQ5NN" = "${content}, poblach"; - -"ayoYEb-ehFLjY" = "${content}, luchd-leantainn a-mhàin"; - -"dUyuGg" = "Postaich air Mastodon"; - -"dYQ5NN" = "Poblach"; - -"ehFLjY" = "Luchd-leantainn a-mhàin"; - -"gfePDu" = "Fhàillig leis a’ phostadh. ${failureReason}"; - -"k7dbKQ" = "Chaidh am post a chur."; - -"oGiqmY-dYQ5NN" = "A bheil “Poblach” fainear dhut le cinnt?"; - -"oGiqmY-ehFLjY" = "A bheil “Luchd-leantainn a-mhàin” fainear dhut le cinnt?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Chaidh am post a chur. "; diff --git a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/gd_GB/Intents.stringsdict deleted file mode 100644 index 4b93628d7..000000000 --- a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.stringsdict +++ /dev/null @@ -1,46 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Tha %#@count_option@ dha “${content}” ann. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld roghainn - two - %ld roghainn - few - %ld roghainnean - other - %ld roghainn - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Tha %#@count_option@ dha “${visibility}” ann. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld roghainn - two - %ld roghainn - few - %ld roghainnean - other - %ld roghainn - - - - diff --git a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings deleted file mode 100644 index 2083cc701..000000000 --- a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Publicar en Mastodon"; - -"751xkl" = "Texto a incluír"; - -"CsR7G2" = "Publicar en Mastodon"; - -"HZSGTr" = "Cal é o contido a publicar?"; - -"HdGikU" = "Fallou a publicación"; - -"KDNTJ4" = "Razón do fallo"; - -"RHxKOw" = "Enviar Publicación con texto"; - -"RxSqsb" = "Publicación"; - -"WCIR3D" = "Publicar ${content} en Mastodon"; - -"ZKJSNu" = "Publicación"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilidade"; - -"Zo4jgJ" = "Visibilidade da publicación"; - -"apSxMG-dYQ5NN" = "Hai ${count} opcións que coinciden con ‘Público’."; - -"apSxMG-ehFLjY" = "Hai ${count} opcións que coinciden con 'Só seguidoras’."; - -"ayoYEb-dYQ5NN" = "${content}, Público"; - -"ayoYEb-ehFLjY" = "${content}, Só seguidoras"; - -"dUyuGg" = "Publicar en Mastodon"; - -"dYQ5NN" = "Público"; - -"ehFLjY" = "Só seguidoras"; - -"gfePDu" = "Fallou a publicación. ${failureReason}"; - -"k7dbKQ" = "Publicación correcta."; - -"oGiqmY-dYQ5NN" = "Só para confirmar, querías ’Público'?"; - -"oGiqmY-ehFLjY" = "Só para confirmar, querías ’Só para seguidoras'?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Publicación correcta. "; diff --git a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict deleted file mode 100644 index 6e3a897f0..000000000 --- a/Localization/StringsConvertor/Intents/input/gl_ES/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Hai %#@count_option@ coincidencias con '${content}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opcións - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Hai %#@count_option@ coincidentes con '${visibility}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opción - other - %ld opcións - - - - diff --git a/Localization/StringsConvertor/Intents/input/hi_IN/Intents.strings b/Localization/StringsConvertor/Intents/input/hi_IN/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/hi_IN/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/hi_IN/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/hi_IN/Intents.stringsdict deleted file mode 100644 index 18422c772..000000000 --- a/Localization/StringsConvertor/Intents/input/hi_IN/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings b/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings deleted file mode 100644 index aa86f7bde..000000000 --- a/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Buat Postingan di Mastodon"; - -"751xkl" = "Teks Isi"; - -"CsR7G2" = "Buat Postingan di Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Gagal memposting"; - -"KDNTJ4" = "Alasan Kegagalan"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Postingan"; - -"WCIR3D" = "Posting ${content} di Mastodon"; - -"ZKJSNu" = "Postingan"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilitas"; - -"Zo4jgJ" = "Visibilitas Postingan"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Publik"; - -"ayoYEb-ehFLjY" = "${content}, Hanya Pengikut"; - -"dUyuGg" = "Buat Postingan di Mastodon"; - -"dYQ5NN" = "Publik"; - -"ehFLjY" = "Hanya Pengikut"; - -"gfePDu" = "Gagal memposting. ${failureReason}"; - -"k7dbKQ" = "Postingan berhasil dikirim."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Postingan berhasil dikirim. "; diff --git a/Localization/StringsConvertor/Intents/input/id_ID/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/id_ID/Intents.stringsdict deleted file mode 100644 index a14f8b9ff..000000000 --- a/Localization/StringsConvertor/Intents/input/id_ID/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/it_IT/Intents.strings b/Localization/StringsConvertor/Intents/input/it_IT/Intents.strings deleted file mode 100644 index d26aef14b..000000000 --- a/Localization/StringsConvertor/Intents/input/it_IT/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Pubblica su Mastodon"; - -"751xkl" = "Contenuto testuale"; - -"CsR7G2" = "Pubblica su Mastodon"; - -"HZSGTr" = "Quale contenuto postare?"; - -"HdGikU" = "Pubblicazione non riuscita"; - -"KDNTJ4" = "Motivo del fallimento"; - -"RHxKOw" = "Invia post con contenuto testuale"; - -"RxSqsb" = "Pubblica"; - -"WCIR3D" = "Pubblica ${content} su Mastodon"; - -"ZKJSNu" = "Pubblica"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilità"; - -"Zo4jgJ" = "Visibilità del post"; - -"apSxMG-dYQ5NN" = "Ci sono ${count} opzioni corrispondenti a 'Pubblico'."; - -"apSxMG-ehFLjY" = "Ci sono ${count} opzioni corrispondenti a ‘Solo Seguaci’."; - -"ayoYEb-dYQ5NN" = "${content}, Pubblico"; - -"ayoYEb-ehFLjY" = "${content}, Solo seguaci"; - -"dUyuGg" = "Pubblica su Mastodon"; - -"dYQ5NN" = "Pubblico"; - -"ehFLjY" = "Solo i seguaci"; - -"gfePDu" = "Pubblicazione fallita. ${failureReason}"; - -"k7dbKQ" = "Post inviato con successo."; - -"oGiqmY-dYQ5NN" = "Solo per confermare, volevi ‘Pubblico’?"; - -"oGiqmY-ehFLjY" = "Solo per confermare, volevi 'Solo seguaci'?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post inviato con successo. "; diff --git a/Localization/StringsConvertor/Intents/input/it_IT/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/it_IT/Intents.stringsdict deleted file mode 100644 index 75d98a9e1..000000000 --- a/Localization/StringsConvertor/Intents/input/it_IT/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Ci sono %#@count_option@ corrispondenti a «${content}». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opzione - other - %ld opzioni - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Ci sono %#@count_option@ corrispondenti a «${visibility}». - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 opzione - other - %ld opzioni - - - - diff --git a/Localization/StringsConvertor/Intents/input/ja_JP/Intents.strings b/Localization/StringsConvertor/Intents/input/ja_JP/Intents.strings deleted file mode 100644 index 411b35c2e..000000000 --- a/Localization/StringsConvertor/Intents/input/ja_JP/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Mastodonに投稿"; - -"751xkl" = "テキストコンテンツ"; - -"CsR7G2" = "Mastodonに投稿"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "投稿に失敗しました"; - -"KDNTJ4" = "失敗の理由"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "投稿"; - -"WCIR3D" = "Mastodonに ${content} を投稿"; - -"ZKJSNu" = "投稿"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "公開範囲"; - -"Zo4jgJ" = "投稿の公開範囲"; - -"apSxMG-dYQ5NN" = "「パブリック」にマッチするオプションが${count}個あります。"; - -"apSxMG-ehFLjY" = "「フォロワーのみ」にマッチするオプションが${count}個あります。"; - -"ayoYEb-dYQ5NN" = "${content}, パブリック"; - -"ayoYEb-ehFLjY" = "${content}, フォロワーのみ"; - -"dUyuGg" = "Mastodonに投稿"; - -"dYQ5NN" = "パブリック"; - -"ehFLjY" = "フォロワーのみ"; - -"gfePDu" = "投稿に失敗しました。 ${failureReason}"; - -"k7dbKQ" = "投稿に成功しました。"; - -"oGiqmY-dYQ5NN" = "「パブリック」で間違いないですか?"; - -"oGiqmY-ehFLjY" = "「フォロワーのみ」で間違いないですか?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "投稿に成功しました。 "; diff --git a/Localization/StringsConvertor/Intents/input/ja_JP/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ja_JP/Intents.stringsdict deleted file mode 100644 index a14f8b9ff..000000000 --- a/Localization/StringsConvertor/Intents/input/ja_JP/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.strings b/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.strings deleted file mode 100644 index 532c822f6..000000000 --- a/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Asuffeɣ deg Matodon"; - -"751xkl" = "Agbur n uḍris"; - -"CsR7G2" = "Asuffeɣ deg Matodon"; - -"HZSGTr" = "Anwa agbur ara d-yettwasuffɣen?"; - -"HdGikU" = "Yecceḍ usuffeɣ"; - -"KDNTJ4" = "Ssebba n tuccḍa"; - -"RHxKOw" = "Azen tasuffeɣt s ugbur n uḍris"; - -"RxSqsb" = "Tasuffeɣt"; - -"WCIR3D" = "Suffeɣ ${content} deg Mastodon"; - -"ZKJSNu" = "Tasuffeɣt"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Abani"; - -"Zo4jgJ" = "Abani n tsuffeɣt"; - -"apSxMG-dYQ5NN" = "Yella ${count} n textiṛiyin yemṣadan d 'Uzayaz'."; - -"apSxMG-ehFLjY" = "Yella ${count} n textiṛiyin yemṣadan d 'Yineḍfaren kan'."; - -"ayoYEb-dYQ5NN" = "${content}, azayaz"; - -"ayoYEb-ehFLjY" = "${content}, ineḍfaren kan"; - -"dUyuGg" = "Asuffeɣ deg Maṣṭudun"; - -"dYQ5NN" = "Azayez"; - -"ehFLjY" = "Imeḍfaṛen kan"; - -"gfePDu" = "Asuffeɣ yecceḍ. ${failureReason}"; - -"k7dbKQ" = "Tasuffeɣt tettwazen akken iwata."; - -"oGiqmY-dYQ5NN" = "I usentem kan, tebɣiḍ 'Azayaz'?"; - -"oGiqmY-ehFLjY" = "I usentem kan, tebɣiḍ 'Ineḍfaren kan'?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Tasuffeɣt tettwazen akken iwata. "; diff --git a/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.stringsdict deleted file mode 100644 index a8aeeaaf1..000000000 --- a/Localization/StringsConvertor/Intents/input/kab_KAB/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Llan %#@count_option@ i yemṣaḍan d '${content}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 textiṛt - other - %ld textiṛiyin - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Llan %#@count_option@ i yemṣaḍa, d '${visibility}'. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 uɣewwaṛ - other - %ld iɣewwaṛen - - - - diff --git a/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.strings b/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.strings deleted file mode 100644 index 13a86e0c0..000000000 --- a/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Di Mastodon de biweşîne"; - -"751xkl" = "Naveroka nivîsê"; - -"CsR7G2" = "Di Mastodon de biweşîne"; - -"HZSGTr" = "Kîjan naverok bila bê şandin?"; - -"HdGikU" = "Şandin têkçû"; - -"KDNTJ4" = "Sedema têkçûnê"; - -"RHxKOw" = "Bi naveroka nivîsî şandiyan bişîne"; - -"RxSqsb" = "Şandî"; - -"WCIR3D" = "${content} biweşîne di Mastodon de"; - -"ZKJSNu" = "Şandî"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Xuyanî"; - -"Zo4jgJ" = "Xuyaniya şandiyê"; - -"apSxMG-dYQ5NN" = "Vebijarkên ${count} hene ku li gorî 'Gelemperî' ne."; - -"apSxMG-ehFLjY" = "Vebijarkên ${count} hene ku li gorî 'Tenê Şopaneran' hene."; - -"ayoYEb-dYQ5NN" = "${content}, Gelemperî"; - -"ayoYEb-ehFLjY" = "${content}, Tenê şopînêr"; - -"dUyuGg" = "Di Mastodon de biweşîne"; - -"dYQ5NN" = "Gelemperî"; - -"ehFLjY" = "Tenê şopîneran"; - -"gfePDu" = "Weşandin bi ser neket. ${failureReason}"; - -"k7dbKQ" = "Şandî bi serkeftî hate şandin."; - -"oGiqmY-dYQ5NN" = "Tenê ji bo pejirandinê, te 'Gelemperî' dixwest?"; - -"oGiqmY-ehFLjY" = "Tenê ji bo pejirandinê, te 'Tenê Şopîner' dixwest?"; - -"rM6dvp" = "Girêdan"; - -"ryJLwG" = "Şandî bi serkeftî hate şandin. "; diff --git a/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.stringsdict deleted file mode 100644 index 2f001aaa9..000000000 --- a/Localization/StringsConvertor/Intents/input/kmr_TR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - %#@count_option@ heye ku bi ‘${content}’ re têkildar e. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vebijêrk - other - %ld vebijêrk - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - %#@count_option@ heye ku bi ‘${visibility}’ re têkildar e. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vebijêrk - other - %ld vebijêrk - - - - diff --git a/Localization/StringsConvertor/Intents/input/ko_KR/Intents.strings b/Localization/StringsConvertor/Intents/input/ko_KR/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/ko_KR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/ko_KR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ko_KR/Intents.stringsdict deleted file mode 100644 index a14f8b9ff..000000000 --- a/Localization/StringsConvertor/Intents/input/ko_KR/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/nl_NL/Intents.strings b/Localization/StringsConvertor/Intents/input/nl_NL/Intents.strings deleted file mode 100644 index 77d237112..000000000 --- a/Localization/StringsConvertor/Intents/input/nl_NL/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Berichten op Mastodon"; - -"751xkl" = "Berichtsinhoud"; - -"CsR7G2" = "Plaatsen"; - -"HZSGTr" = "Welke inhoud om bericht te plaatsen?"; - -"HdGikU" = "Bericht plaatsen mislukt"; - -"KDNTJ4" = "Reden van de Fout"; - -"RHxKOw" = "Bericht verzenden met tekstinhoud"; - -"RxSqsb" = "Bericht"; - -"WCIR3D" = "Plaats ${content} op Mastodon"; - -"ZKJSNu" = "Plaatsen"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Zichbaarheid"; - -"Zo4jgJ" = "Berichtszichtbaarheid"; - -"apSxMG-dYQ5NN" = "Er zijn ${count} opties die overeenkomen met ‘Openbaar’."; - -"apSxMG-ehFLjY" = "Er zijn ${count} opties die overeenkomen met ‘Alleen Volgers’."; - -"ayoYEb-dYQ5NN" = "${content}, Openbaar"; - -"ayoYEb-ehFLjY" = "${content}, Alleen Volgers"; - -"dUyuGg" = "Plaatsen"; - -"dYQ5NN" = "Openbaar"; - -"ehFLjY" = "Alleen Volgers"; - -"gfePDu" = "Plaatsen mislukt. ${failureReason}"; - -"k7dbKQ" = "Het bericht is succesvol verzonden."; - -"oGiqmY-dYQ5NN" = "Wilde u ‘Openbaar’?"; - -"oGiqmY-ehFLjY" = "Wilde u ‘Alleen Volgers’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Het bericht is succesvol verzonden. "; diff --git a/Localization/StringsConvertor/Intents/input/nl_NL/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/nl_NL/Intents.stringsdict deleted file mode 100644 index 9043720db..000000000 --- a/Localization/StringsConvertor/Intents/input/nl_NL/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Er zijn %#@count_option@ die overeenkomen met ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 optie - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Er zijn %#@count_option@ die overeenkomen met ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 optie - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/pt_BR/Intents.strings b/Localization/StringsConvertor/Intents/input/pt_BR/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/pt_BR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/pt_BR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/pt_BR/Intents.stringsdict deleted file mode 100644 index 18422c772..000000000 --- a/Localization/StringsConvertor/Intents/input/pt_BR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/pt_PT/Intents.strings b/Localization/StringsConvertor/Intents/input/pt_PT/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/pt_PT/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/pt_PT/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/pt_PT/Intents.stringsdict deleted file mode 100644 index 18422c772..000000000 --- a/Localization/StringsConvertor/Intents/input/pt_PT/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/ro_RO/Intents.strings b/Localization/StringsConvertor/Intents/input/ro_RO/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/ro_RO/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/ro_RO/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ro_RO/Intents.stringsdict deleted file mode 100644 index f9c25ced3..000000000 --- a/Localization/StringsConvertor/Intents/input/ro_RO/Intents.stringsdict +++ /dev/null @@ -1,42 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - few - %ld options - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - few - %ld options - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/ru_RU/Intents.strings b/Localization/StringsConvertor/Intents/input/ru_RU/Intents.strings deleted file mode 100644 index 6877490ba..000000000 --- a/Localization/StringsConvertor/Intents/input/ru_RU/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Post on Mastodon"; - -"751xkl" = "Text Content"; - -"CsR7G2" = "Post on Mastodon"; - -"HZSGTr" = "What content to post?"; - -"HdGikU" = "Posting failed"; - -"KDNTJ4" = "Failure Reason"; - -"RHxKOw" = "Send Post with text content"; - -"RxSqsb" = "Post"; - -"WCIR3D" = "Post ${content} on Mastodon"; - -"ZKJSNu" = "Post"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibility"; - -"Zo4jgJ" = "Post Visibility"; - -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; - -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; - -"ayoYEb-dYQ5NN" = "${content}, Public"; - -"ayoYEb-ehFLjY" = "${content}, Followers Only"; - -"dUyuGg" = "Post on Mastodon"; - -"dYQ5NN" = "Public"; - -"ehFLjY" = "Followers Only"; - -"gfePDu" = "Posting failed. ${failureReason}"; - -"k7dbKQ" = "Post was sent successfully."; - -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; - -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Post was sent successfully. "; diff --git a/Localization/StringsConvertor/Intents/input/ru_RU/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/ru_RU/Intents.stringsdict deleted file mode 100644 index a739f778f..000000000 --- a/Localization/StringsConvertor/Intents/input/ru_RU/Intents.stringsdict +++ /dev/null @@ -1,46 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - few - %ld options - many - %ld options - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 option - few - %ld options - many - %ld options - other - %ld options - - - - diff --git a/Localization/StringsConvertor/Intents/input/sv_FI/Intents.strings b/Localization/StringsConvertor/Intents/input/sv_FI/Intents.strings deleted file mode 100644 index 1be213d45..000000000 --- a/Localization/StringsConvertor/Intents/input/sv_FI/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Julkaise Mastodonissa"; - -"751xkl" = "Tekstisisältö"; - -"CsR7G2" = "Julkaise Mastodonissa"; - -"HZSGTr" = "Mitä sisältöä julkaista?"; - -"HdGikU" = "Julkaiseminen epäonnistui"; - -"KDNTJ4" = "Epäonnistumisen syy"; - -"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; - -"RxSqsb" = "Julkaisu"; - -"WCIR3D" = "Julkaise ${content} Mastodonissa"; - -"ZKJSNu" = "Julkaisu"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Näkyvyys"; - -"Zo4jgJ" = "Julkaisun näkyvyys"; - -"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; - -"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; - -"ayoYEb-dYQ5NN" = "${content}, julkinen"; - -"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; - -"dUyuGg" = "Julkaise Mastodonissa"; - -"dYQ5NN" = "Julkinen"; - -"ehFLjY" = "Vain seuraajat"; - -"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; - -"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; - -"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; - -"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; diff --git a/Localization/StringsConvertor/Intents/input/sv_FI/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/sv_FI/Intents.stringsdict deleted file mode 100644 index 7825b778e..000000000 --- a/Localization/StringsConvertor/Intents/input/sv_FI/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - On %#@count_option@, joka/jotka vastaavat sisältöön ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vaihtoehto - other - %ld vaihtoehtoa - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - On vaihtoehtoa %#@count_option@, joka/jotka vastaavat näkyvyyteen ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 vaihtoehto - other - %ld vaihtoehtoa - - - - diff --git a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings deleted file mode 100644 index 526e495d2..000000000 --- a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Publicera på Mastodon"; - -"751xkl" = "Textinnehåll"; - -"CsR7G2" = "Publicera på Mastodon"; - -"HZSGTr" = "Vilket innehåll ska publiceras?"; - -"HdGikU" = "Publiceringen misslyckades"; - -"KDNTJ4" = "Felorsak"; - -"RHxKOw" = "Skicka inlägg med textinnehåll"; - -"RxSqsb" = "Inlägg"; - -"WCIR3D" = "Publicera ${content} på Mastodon"; - -"ZKJSNu" = "Inlägg"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Synlighet"; - -"Zo4jgJ" = "Inläggssynlighet"; - -"apSxMG-dYQ5NN" = "Det finns ${count} alternativ som matchar ‘Offentligt’."; - -"apSxMG-ehFLjY" = "Det finns ${count} alternativ som matchar ‘Endast följare’."; - -"ayoYEb-dYQ5NN" = "${content}, Offentligt"; - -"ayoYEb-ehFLjY" = "${content}, Endast följare"; - -"dUyuGg" = "Publicera på Mastodon"; - -"dYQ5NN" = "Offentligt"; - -"ehFLjY" = "Endast följare"; - -"gfePDu" = "Publicering misslyckades. ${failureReason}"; - -"k7dbKQ" = "Inlägget har publicerats."; - -"oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Offentligt'?"; - -"oGiqmY-ehFLjY" = "Bara för att bekräfta, ville du ha 'Endast följare'?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Inlägget har publicerats. "; diff --git a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/sv_SE/Intents.stringsdict deleted file mode 100644 index a5e8432fb..000000000 --- a/Localization/StringsConvertor/Intents/input/sv_SE/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Det finns %#@count_option@ alternativ som matchar ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld alternativ - other - %ld alternativ - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Det finns %#@count_option@ alternativ som matchar ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - %ld alternativ - other - %ld alternativ - - - - diff --git a/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings b/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings deleted file mode 100644 index d655b7952..000000000 --- a/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "โพสต์ใน Mastodon"; - -"751xkl" = "เนื้อหาข้อความ"; - -"CsR7G2" = "โพสต์ใน Mastodon"; - -"HZSGTr" = "เนื้อหาอะไรที่จะโพสต์?"; - -"HdGikU" = "การโพสต์ล้มเหลว"; - -"KDNTJ4" = "เหตุผลของความล้มเหลว"; - -"RHxKOw" = "ส่งโพสต์พร้อมเนื้อหาข้อความ"; - -"RxSqsb" = "โพสต์"; - -"WCIR3D" = "โพสต์ ${content} ใน Mastodon"; - -"ZKJSNu" = "โพสต์"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "การมองเห็น"; - -"Zo4jgJ" = "การมองเห็นโพสต์"; - -"apSxMG-dYQ5NN" = "มี ${count} ตัวเลือกที่ตรงกันกับ ‘สาธารณะ’"; - -"apSxMG-ehFLjY" = "มี ${count} ตัวเลือกที่ตรงกันกับ ‘ผู้ติดตามเท่านั้น’"; - -"ayoYEb-dYQ5NN" = "${content}, สาธารณะ"; - -"ayoYEb-ehFLjY" = "${content}, ผู้ติดตามเท่านั้น"; - -"dUyuGg" = "โพสต์ใน Mastodon"; - -"dYQ5NN" = "สาธารณะ"; - -"ehFLjY" = "ผู้ติดตามเท่านั้น"; - -"gfePDu" = "การโพสต์ล้มเหลว ${failureReason}"; - -"k7dbKQ" = "ส่งโพสต์สำเร็จ"; - -"oGiqmY-dYQ5NN" = "เพียงเพื่อยืนยัน คุณต้องการ ‘สาธารณะ’?"; - -"oGiqmY-ehFLjY" = "เพียงเพื่อยืนยัน คุณต้องการ ‘ผู้ติดตามเท่านั้น’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "ส่งโพสต์สำเร็จ "; diff --git a/Localization/StringsConvertor/Intents/input/th_TH/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/th_TH/Intents.stringsdict deleted file mode 100644 index ff99d1912..000000000 --- a/Localization/StringsConvertor/Intents/input/th_TH/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - มี %#@count_option@ ที่ตรงกันกับ ‘${content}’ - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld ตัวเลือก - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - มี %#@count_option@ ที่ตรงกันกับ ‘${visibility}’ - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld ตัวเลือก - - - - diff --git a/Localization/StringsConvertor/Intents/input/tr_TR/Intents.strings b/Localization/StringsConvertor/Intents/input/tr_TR/Intents.strings deleted file mode 100644 index dc60dee73..000000000 --- a/Localization/StringsConvertor/Intents/input/tr_TR/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Mastodon'da paylaş"; - -"751xkl" = "Metin içeriği"; - -"CsR7G2" = "Mastodon'da paylaş"; - -"HZSGTr" = "Ne içeriği paylaşılacak?"; - -"HdGikU" = "Gönderi paylaşılamadı"; - -"KDNTJ4" = "Hata Sebebi"; - -"RHxKOw" = "Metin içeriği ile gönderiyi paylaş"; - -"RxSqsb" = "Gönderi"; - -"WCIR3D" = "${content} içeriğini Mastodon'da paylaş"; - -"ZKJSNu" = "Gönderi"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Gizlilik"; - -"Zo4jgJ" = "Gönderi Gizliliği"; - -"apSxMG-dYQ5NN" = "\"Herkese açık\" ile eşleşen ${count} seçenek var."; - -"apSxMG-ehFLjY" = "\"Sadece takipçiler\" ile eşleşen ${count} seçenek var."; - -"ayoYEb-dYQ5NN" = "${content}, Herkese açık"; - -"ayoYEb-ehFLjY" = "${content}, Sadece takipçiler"; - -"dUyuGg" = "Mastodon'da paylaş"; - -"dYQ5NN" = "Herkese açık"; - -"ehFLjY" = "Sadece takipçiler"; - -"gfePDu" = "Gönderi paylaşılamadı. ${failureReason}"; - -"k7dbKQ" = "Gönderi başarıyla paylaşıldı."; - -"oGiqmY-dYQ5NN" = "\"Herkese açık\" paylaşmak istediğinize emin misiniz?"; - -"oGiqmY-ehFLjY" = "\"Sadece takipçiler\" için paylaşmak istediğinize emin misiniz?"; - -"rM6dvp" = "Bağlantı"; - -"ryJLwG" = "Gönderi başarıyla paylaşıldı. "; diff --git a/Localization/StringsConvertor/Intents/input/tr_TR/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/tr_TR/Intents.stringsdict deleted file mode 100644 index 2e75a0357..000000000 --- a/Localization/StringsConvertor/Intents/input/tr_TR/Intents.stringsdict +++ /dev/null @@ -1,38 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - ‘${content}’ ile eşleşen %#@count_option@ var. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 seçenek - other - %ld seçenek - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - ‘${visibility}’ ile eşleşen %#@count_option@ var. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - one - 1 seçenek - other - %ld seçenek - - - - diff --git a/Localization/StringsConvertor/Intents/input/vi_VN/Intents.strings b/Localization/StringsConvertor/Intents/input/vi_VN/Intents.strings deleted file mode 100644 index a95337317..000000000 --- a/Localization/StringsConvertor/Intents/input/vi_VN/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Đăng lên Mastodon"; - -"751xkl" = "Nội dung văn bản"; - -"CsR7G2" = "Đăng lên Mastodon"; - -"HZSGTr" = "Đăng loại nội dung nào?"; - -"HdGikU" = "Không thể đăng"; - -"KDNTJ4" = "Lý do không thể đăng"; - -"RHxKOw" = "Gửi tút với nội dung là chữ"; - -"RxSqsb" = "Tút"; - -"WCIR3D" = "Đăng ${content} lên Mastodon"; - -"ZKJSNu" = "Tút"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Hiển thị"; - -"Zo4jgJ" = "Thay đổi quyền riêng tư"; - -"apSxMG-dYQ5NN" = "Có ${count} lựa chọn khớp với ‘Công khai’."; - -"apSxMG-ehFLjY" = "Có ${count} lựa chọn khớp với ‘Riêng tư’."; - -"ayoYEb-dYQ5NN" = "${content}, Công khai"; - -"ayoYEb-ehFLjY" = "${content}, Riêng tư"; - -"dUyuGg" = "Đăng lên Mastodon"; - -"dYQ5NN" = "Công khai"; - -"ehFLjY" = "Riêng tư"; - -"gfePDu" = "Không thể đăng. ${failureReason}"; - -"k7dbKQ" = "Đã đăng tút thành công."; - -"oGiqmY-dYQ5NN" = "Xin xác nhận, bạn muốn ‘Công khai’?"; - -"oGiqmY-ehFLjY" = "Xin xác nhận, bạn muốn ‘Riêng tư’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Đã đăng tút thành công. "; diff --git a/Localization/StringsConvertor/Intents/input/vi_VN/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/vi_VN/Intents.stringsdict deleted file mode 100644 index a4bb783da..000000000 --- a/Localization/StringsConvertor/Intents/input/vi_VN/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - Có %#@count_option@ khớp với ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld lựa chọn - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - Có %#@count_option@ khớp với ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld lựa chọn - - - - diff --git a/Localization/StringsConvertor/Intents/input/zh_CN/Intents.strings b/Localization/StringsConvertor/Intents/input/zh_CN/Intents.strings deleted file mode 100644 index ea70942a5..000000000 --- a/Localization/StringsConvertor/Intents/input/zh_CN/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "在 Mastodon 上发布"; - -"751xkl" = "文本内容"; - -"CsR7G2" = "在 Mastodon 上发布"; - -"HZSGTr" = "要发送的内容是什么?"; - -"HdGikU" = "发送失败"; - -"KDNTJ4" = "失败原因"; - -"RHxKOw" = "发送带有文本内容的帖子"; - -"RxSqsb" = "帖子"; - -"WCIR3D" = "在 Mastodon 上发送 ${content}"; - -"ZKJSNu" = "帖子"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "可见性"; - -"Zo4jgJ" = "帖子可见性"; - -"apSxMG-dYQ5NN" = "有 ${count} 个选项匹配 “公开”"; - -"apSxMG-ehFLjY" = "有 ${count} 个选项匹配 “仅关注者”"; - -"ayoYEb-dYQ5NN" = "${content},公开"; - -"ayoYEb-ehFLjY" = "${content},仅关注者"; - -"dUyuGg" = "在 Mastodon 上发布"; - -"dYQ5NN" = "公开"; - -"ehFLjY" = "仅关注者"; - -"gfePDu" = "发送失败。 ${failureReason}"; - -"k7dbKQ" = "帖子发送成功。"; - -"oGiqmY-dYQ5NN" = "确认要选择 “公开”?"; - -"oGiqmY-ehFLjY" = "确认要选择 “仅关注者”?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "帖子发送成功。"; diff --git a/Localization/StringsConvertor/Intents/input/zh_CN/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/zh_CN/Intents.stringsdict deleted file mode 100644 index 1f5cbaf47..000000000 --- a/Localization/StringsConvertor/Intents/input/zh_CN/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - 有 %#@count_option@ 匹配 ‘${content}’。 - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld 个选项 - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - 有 %#@count_option@ 匹配 ‘${visibility}’。 - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld 个选项 - - - - diff --git a/Localization/StringsConvertor/Intents/input/zh_TW/Intents.strings b/Localization/StringsConvertor/Intents/input/zh_TW/Intents.strings deleted file mode 100644 index a45a5f511..000000000 --- a/Localization/StringsConvertor/Intents/input/zh_TW/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "於 Mastodon 上發嘟文"; - -"751xkl" = "文字內容"; - -"CsR7G2" = "於 Mastodon 上發嘟文"; - -"HZSGTr" = "要發什麼嘟呢?"; - -"HdGikU" = "嘟文失敗"; - -"KDNTJ4" = "失敗原因"; - -"RHxKOw" = "發送文字內容嘟文"; - -"RxSqsb" = "嘟文"; - -"WCIR3D" = "將 ${content} 於 Mastodon 上發嘟"; - -"ZKJSNu" = "嘟文"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "可見性"; - -"Zo4jgJ" = "嘟文可見性"; - -"apSxMG-dYQ5NN" = "有 ${count} 個選項符合「公開」。"; - -"apSxMG-ehFLjY" = "有 ${count} 個選項符合「僅限跟隨者」。"; - -"ayoYEb-dYQ5NN" = "${content},公開"; - -"ayoYEb-ehFLjY" = "${content},僅限跟隨者"; - -"dUyuGg" = "於 Mastodon 上發嘟文"; - -"dYQ5NN" = "公開"; - -"ehFLjY" = "僅限跟隨者"; - -"gfePDu" = "發嘟失敗。${failureReason}"; - -"k7dbKQ" = "成功發出嘟文。"; - -"oGiqmY-dYQ5NN" = "再確認一次,您想要「公開」?"; - -"oGiqmY-ehFLjY" = "再確認一次,您想要「僅限跟隨者」?"; - -"rM6dvp" = "網址"; - -"ryJLwG" = "成功發出嘟文。 "; diff --git a/Localization/StringsConvertor/Intents/input/zh_TW/Intents.stringsdict b/Localization/StringsConvertor/Intents/input/zh_TW/Intents.stringsdict deleted file mode 100644 index 00d1d5343..000000000 --- a/Localization/StringsConvertor/Intents/input/zh_TW/Intents.stringsdict +++ /dev/null @@ -1,34 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - 有 %#@count_option@ 符合「 ${content} 」。 - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld 個選項 - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - 有 %#@count_option@ 符合「 ${visibility} 」。 - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - other - %ld 個選項 - - - - From 02f383129f72f1aced648342c20528958803deab Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 12:46:37 +0800 Subject: [PATCH 380/571] chore: update strings mapping and i18n resources --- .../Sources/StringsConvertor/main.swift | 49 +- Mastodon.xcodeproj/project.pbxproj | 49 +- .../xcschemes/xcschememanagement.plist | 6 +- .../Resources/es-419.lproj/InfoPlist.strings | 4 - .../InfoPlist.strings | 0 .../InfoPlist.strings | 0 .../Resources/gd-GB.lproj/InfoPlist.strings | 4 - Mastodon/Resources/gd.lproj/InfoPlist.strings | 4 + MastodonIntent/es-419.lproj/Intents.strings | 51 --- .../Intents.strings | 0 .../Intents.stringsdict | 0 .../{eu-ES.lproj => eu.lproj}/Intents.strings | 0 .../Intents.stringsdict | 0 .../{gd-GB.lproj => gd.lproj}/Intents.strings | 0 .../Intents.stringsdict | 0 .../sv-FI.lproj/Intents.stringsdict | 54 --- MastodonIntent/sv.lproj/Intents.strings | 49 +- MastodonIntent/sv_FI.lproj/Intents.strings | 51 --- .../Generated/Strings.swift | 14 + .../Resources/ar.lproj/Localizable.strings | 6 +- .../ar.lproj/Localizable.stringsdict | 24 + .../Resources/ca.lproj/Localizable.strings | 3 + .../ca.lproj/Localizable.stringsdict | 16 + .../Resources/ckb.lproj/Localizable.strings | 3 + .../ckb.lproj/Localizable.stringsdict | 16 + .../Resources/de.lproj/Localizable.strings | 6 +- .../de.lproj/Localizable.stringsdict | 16 + .../Resources/en.lproj/Localizable.strings | 3 + .../en.lproj/Localizable.stringsdict | 16 + .../es-419.lproj/Localizable.strings | 428 ----------------- .../es-419.lproj/Localizable.stringsdict | 406 ----------------- .../Resources/es.lproj/Localizable.strings | 3 + .../es.lproj/Localizable.stringsdict | 16 + .../Localizable.strings | 6 +- .../Localizable.stringsdict | 16 + .../Resources/fr.lproj/Localizable.strings | 6 +- .../fr.lproj/Localizable.stringsdict | 16 + .../Localizable.strings | 5 +- .../Localizable.stringsdict | 20 + .../Resources/gl.lproj/Localizable.strings | 71 +-- .../gl.lproj/Localizable.stringsdict | 16 + .../Resources/it.lproj/Localizable.strings | 3 + .../it.lproj/Localizable.stringsdict | 16 + .../Resources/ja.lproj/Localizable.strings | 3 + .../ja.lproj/Localizable.stringsdict | 14 + .../Resources/kab.lproj/Localizable.strings | 3 + .../kab.lproj/Localizable.stringsdict | 16 + .../Resources/ku.lproj/Localizable.strings | 29 +- .../ku.lproj/Localizable.stringsdict | 16 + .../Resources/nl.lproj/Localizable.strings | 3 + .../nl.lproj/Localizable.stringsdict | 16 + .../Resources/ru.lproj/Localizable.strings | 3 + .../ru.lproj/Localizable.stringsdict | 20 + .../Resources/sv.lproj/Localizable.strings | 429 ++++++++++++++++++ .../Localizable.stringsdict | 116 +++-- .../Resources/sv_FI.lproj/Localizable.strings | 393 ---------------- .../Resources/th.lproj/Localizable.strings | 3 + .../th.lproj/Localizable.stringsdict | 14 + .../Resources/tr.lproj/Localizable.strings | 3 + .../tr.lproj/Localizable.stringsdict | 16 + .../Resources/vi.lproj/Localizable.strings | 3 + .../vi.lproj/Localizable.stringsdict | 14 + .../zh-Hans.lproj/Localizable.strings | 8 +- .../zh-Hans.lproj/Localizable.stringsdict | 14 + .../zh-Hant.lproj/Localizable.strings | 71 +-- .../zh-Hant.lproj/Localizable.stringsdict | 14 + 66 files changed, 1078 insertions(+), 1615 deletions(-) delete mode 100644 Mastodon/Resources/es-419.lproj/InfoPlist.strings rename Mastodon/Resources/{eu-ES.lproj => es-AR.lproj}/InfoPlist.strings (100%) rename Mastodon/Resources/{sv-FI.lproj => eu.lproj}/InfoPlist.strings (100%) delete mode 100644 Mastodon/Resources/gd-GB.lproj/InfoPlist.strings create mode 100644 Mastodon/Resources/gd.lproj/InfoPlist.strings delete mode 100644 MastodonIntent/es-419.lproj/Intents.strings rename MastodonIntent/{sv-FI.lproj => es-AR.lproj}/Intents.strings (100%) rename MastodonIntent/{es-419.lproj => es-AR.lproj}/Intents.stringsdict (100%) rename MastodonIntent/{eu-ES.lproj => eu.lproj}/Intents.strings (100%) rename MastodonIntent/{eu-ES.lproj => eu.lproj}/Intents.stringsdict (100%) rename MastodonIntent/{gd-GB.lproj => gd.lproj}/Intents.strings (100%) rename MastodonIntent/{gd-GB.lproj => gd.lproj}/Intents.stringsdict (100%) delete mode 100644 MastodonIntent/sv-FI.lproj/Intents.stringsdict delete mode 100644 MastodonIntent/sv_FI.lproj/Intents.strings delete mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings delete mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.stringsdict rename MastodonSDK/Sources/MastodonLocalization/Resources/{eu-ES.lproj => eu.lproj}/Localizable.strings (98%) rename MastodonSDK/Sources/MastodonLocalization/Resources/{eu-ES.lproj => eu.lproj}/Localizable.stringsdict (96%) rename MastodonSDK/Sources/MastodonLocalization/Resources/{gd-GB.lproj => gd.lproj}/Localizable.strings (98%) rename MastodonSDK/Sources/MastodonLocalization/Resources/{gd-GB.lproj => gd.lproj}/Localizable.stringsdict (96%) create mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings rename MastodonSDK/Sources/MastodonLocalization/Resources/{sv_FI.lproj => sv.lproj}/Localizable.stringsdict (81%) delete mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.strings diff --git a/Localization/StringsConvertor/Sources/StringsConvertor/main.swift b/Localization/StringsConvertor/Sources/StringsConvertor/main.swift index e30cf56a5..7c0486548 100644 --- a/Localization/StringsConvertor/Sources/StringsConvertor/main.swift +++ b/Localization/StringsConvertor/Sources/StringsConvertor/main.swift @@ -47,31 +47,30 @@ private func convert(from inputDirectoryURL: URL, to outputDirectory: URL) { private func map(language: String) -> String? { switch language { - case "ar_SA": return "ar" // Arabic (Saudi Arabia) - case "eu_ES": return "eu-ES" // Basque - case "ca_ES": return "ca" // Catalan - case "zh_CN": return "zh-Hans" // Chinese Simplified - case "zh_TW": return "zh-Hant" // Chinese Traditional - case "nl_NL": return "nl" // Dutch - case "en_US": return "en" - case "fr_FR": return "fr" // French - case "gl_ES": return "gl" // Galician - case "de_DE": return "de" // German - case "it_IT": return "it" // Italian - case "ja_JP": return "ja" // Japanese - case "kab_KAB": return "kab" // Kabyle - case "kmr_TR": return "ku" // Kurmanji (Kurdish) - case "ru_RU": return "ru" // Russian - case "gd_GB": return "gd-GB" // Scottish Gaelic - case "ckb_IR": return "ckb" // Sorani (Kurdish) - case "es_ES": return "es" // Spanish - case "es_AR": return "es-419" // Spanish, Argentina - case "sv-SE": return "sv" // Swedish - case "sv_FI": return "sv_FI" // Swedish, Finland - case "th_TH": return "th" // Thai - case "tr_TR": return "tr" // Turkish - case "vi_VN": return "vi" // Vietnamese - default: return nil + case "ar.lproj": return "ar" // Arabic + case "eu.lproj": return "eu" // Basque + case "ca.lproj": return "ca" // Catalan + case "zh-Hans.lproj": return "zh-Hans" // Chinese Simplified + case "zh-Hant.lproj": return "zh-Hant" // Chinese Traditional + case "nl.lproj": return "nl" // Dutch + case "en.lproj": return "en" + case "fr.lproj": return "fr" // French + case "gl.lproj": return "gl" // Galician + case "de.lproj": return "de" // German + case "it.lproj": return "it" // Italian + case "ja.lproj": return "ja" // Japanese + case "kab.lproj": return "kab" // Kabyle + case "kmr.lproj": return "ku" // Kurmanji (Kurdish) [intent mapping] + case "ru.lproj": return "ru" // Russian + case "gd.lproj": return "gd" // Scottish Gaelic + case "ckb.lproj": return "ckb" // Sorani (Kurdish) + case "es.lproj": return "es" // Spanish + case "es_AR.lproj": return "es-AR" // Spanish, Argentina + case "sv.lproj": return "sv" // Swedish + case "th.lproj": return "th" // Thai + case "tr.lproj": return "tr" // Turkish + case "vi.lproj": return "vi" // Vietnamese + default: return nil } } diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index fb9e834cb..c2798aecf 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -903,12 +903,6 @@ DB0FCB992797F7AD006C02E2 /* UserView+Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserView+Configuration.swift"; sourceTree = ""; }; DB0FCB9B27980AB6006C02E2 /* HashtagTimelineViewController+DataSourceProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "HashtagTimelineViewController+DataSourceProvider.swift"; sourceTree = ""; }; DB118A8125E4B6E600FAB162 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; - DB126A4C278C063F005726EE /* eu-ES */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "eu-ES"; path = "eu-ES.lproj/Intents.strings"; sourceTree = ""; }; - DB126A4F278C063F005726EE /* eu-ES */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "eu-ES"; path = "eu-ES.lproj/InfoPlist.strings"; sourceTree = ""; }; - DB126A50278C063F005726EE /* eu-ES */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "eu-ES"; path = "eu-ES.lproj/Intents.stringsdict"; sourceTree = ""; }; - DB126A56278C088D005726EE /* sv-FI */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sv-FI"; path = "sv-FI.lproj/Intents.strings"; sourceTree = ""; }; - DB126A59278C088D005726EE /* sv-FI */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sv-FI"; path = "sv-FI.lproj/InfoPlist.strings"; sourceTree = ""; }; - DB126A5A278C088D005726EE /* sv-FI */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "sv-FI"; path = "sv-FI.lproj/Intents.stringsdict"; sourceTree = ""; }; DB159C2A27A17BAC0068DC77 /* DataSourceFacade+Media.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DataSourceFacade+Media.swift"; sourceTree = ""; }; DB1D186B25EF5BA7003F1F23 /* PollTableView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollTableView.swift; sourceTree = ""; }; DB1D61CE26F1B33600DA8662 /* WelcomeViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeViewModel.swift; sourceTree = ""; }; @@ -1010,11 +1004,7 @@ DB4B777F26CA4EFA00B087B3 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Intents.strings; sourceTree = ""; }; DB4B778226CA4EFA00B087B3 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/InfoPlist.strings; sourceTree = ""; }; DB4B778326CA4EFA00B087B3 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = ru.lproj/Intents.stringsdict; sourceTree = ""; }; - DB4B778426CA500E00B087B3 /* gd-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "gd-GB"; path = "gd-GB.lproj/Intents.strings"; sourceTree = ""; }; - DB4B778726CA500E00B087B3 /* gd-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "gd-GB"; path = "gd-GB.lproj/InfoPlist.strings"; sourceTree = ""; }; - DB4B778826CA500E00B087B3 /* gd-GB */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "gd-GB"; path = "gd-GB.lproj/Intents.stringsdict"; sourceTree = ""; }; DB4B778926CA504100B087B3 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = es; path = es.lproj/Intents.stringsdict; sourceTree = ""; }; - DB4B778A26CA504200B087B3 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "es-419"; path = "es-419.lproj/Intents.stringsdict"; sourceTree = ""; }; DB4B778B26CA504300B087B3 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ar; path = ar.lproj/Intents.stringsdict; sourceTree = ""; }; DB4B778C26CA504400B087B3 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ca; path = ca.lproj/Intents.stringsdict; sourceTree = ""; }; DB4B778D26CA504500B087B3 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "zh-Hans"; path = "zh-Hans.lproj/Intents.stringsdict"; sourceTree = ""; }; @@ -1243,8 +1233,6 @@ DBA4B0DE26BD11130077136E /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; DBA4B0DF26BD11C70077136E /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Intents.strings; sourceTree = ""; }; DBA4B0E226BD11C80077136E /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; - DBA4B0E326BD11D10077136E /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/Intents.strings"; sourceTree = ""; }; - DBA4B0E626BD11D10077136E /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/InfoPlist.strings"; sourceTree = ""; }; DBA4B0E826C153820077136E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Intents.strings; sourceTree = ""; }; DBA4B0EB26C153820077136E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/InfoPlist.strings; sourceTree = ""; }; DBA4B0EC26C153B10077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Intents.strings; sourceTree = ""; }; @@ -1302,6 +1290,15 @@ DBC6462226A1712000B0E31B /* ShareViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareViewModel.swift; sourceTree = ""; }; DBC7A671260C897100E57475 /* StatusContentWarningEditorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusContentWarningEditorView.swift; sourceTree = ""; }; DBC7A67B260DFADE00E57475 /* StatusPublishService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusPublishService.swift; sourceTree = ""; }; + DBC9E3A3282E13BB0063A4D9 /* eu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = eu; path = eu.lproj/Intents.strings; sourceTree = ""; }; + DBC9E3A4282E13BB0063A4D9 /* eu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = eu; path = eu.lproj/InfoPlist.strings; sourceTree = ""; }; + DBC9E3A5282E13BB0063A4D9 /* eu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = eu; path = eu.lproj/Intents.stringsdict; sourceTree = ""; }; + DBC9E3A6282E15190063A4D9 /* gd */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gd; path = gd.lproj/Intents.strings; sourceTree = ""; }; + DBC9E3A7282E15190063A4D9 /* gd */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = gd; path = gd.lproj/InfoPlist.strings; sourceTree = ""; }; + DBC9E3A8282E15190063A4D9 /* gd */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = gd; path = gd.lproj/Intents.stringsdict; sourceTree = ""; }; + DBC9E3A9282E17DF0063A4D9 /* es-AR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-AR"; path = "es-AR.lproj/Intents.strings"; sourceTree = ""; }; + DBC9E3AA282E17DF0063A4D9 /* es-AR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-AR"; path = "es-AR.lproj/InfoPlist.strings"; sourceTree = ""; }; + DBC9E3AB282E17DF0063A4D9 /* es-AR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "es-AR"; path = "es-AR.lproj/Intents.stringsdict"; sourceTree = ""; }; DBCA0EBB282BB38A0029E2B0 /* PageboyNavigateable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PageboyNavigateable.swift; sourceTree = ""; }; DBCBCBF3267CB070000F5B51 /* Decode85.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Decode85.swift; sourceTree = ""; }; DBCBCC0C2680B908000F5B51 /* HomeTimelinePreference.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeTimelinePreference.swift; sourceTree = ""; }; @@ -3568,14 +3565,10 @@ ca, fr, es, - "es-419", de, nl, ru, - "gd-GB", th, - "eu-ES", - "sv-FI", ku, kab, vi, @@ -3585,6 +3578,9 @@ gl, it, tr, + eu, + gd, + "es-AR", ); mainGroup = DB427DC925BAA00100D1B89D; packageReferences = ( @@ -4522,15 +4518,11 @@ DBA4B0D726BD10F40077136E /* ca */, DBA4B0DB26BD11130077136E /* fr */, DBA4B0DF26BD11C70077136E /* es */, - DBA4B0E326BD11D10077136E /* es-419 */, DBA4B0E826C153820077136E /* de */, DBA4B0EC26C153B10077136E /* nl */, DBA4B0F526C2621D0077136E /* en */, DB4B777F26CA4EFA00B087B3 /* ru */, - DB4B778426CA500E00B087B3 /* gd-GB */, DB4B779226CA50BA00B087B3 /* th */, - DB126A4C278C063F005726EE /* eu-ES */, - DB126A56278C088D005726EE /* sv-FI */, DBEB19E927E4F37B00B0E80E /* ku */, DBF81C7427F68F5A00004A56 /* kab */, DBF81C7727F6913300004A56 /* vi */, @@ -4540,6 +4532,9 @@ DB519B0F281BCB3300F0C99D /* gl */, DB519B12281BCBC400F0C99D /* it */, DB519B15281BCC2F00F0C99D /* tr */, + DBC9E3A3282E13BB0063A4D9 /* eu */, + DBC9E3A6282E15190063A4D9 /* gd */, + DBC9E3A9282E17DF0063A4D9 /* es-AR */, ); name = Intents.intentdefinition; sourceTree = ""; @@ -4554,14 +4549,10 @@ DBA4B0DA26BD10F40077136E /* ca */, DBA4B0DE26BD11130077136E /* fr */, DBA4B0E226BD11C80077136E /* es */, - DBA4B0E626BD11D10077136E /* es-419 */, DBA4B0EB26C153820077136E /* de */, DBA4B0EF26C153B20077136E /* nl */, DB4B778226CA4EFA00B087B3 /* ru */, - DB4B778726CA500E00B087B3 /* gd-GB */, DB4B779526CA50BA00B087B3 /* th */, - DB126A4F278C063F005726EE /* eu-ES */, - DB126A59278C088D005726EE /* sv-FI */, DBEB19EA27E4F37B00B0E80E /* ku */, DBF81C7527F68F5A00004A56 /* kab */, DBF81C7827F6913300004A56 /* vi */, @@ -4571,6 +4562,9 @@ DB519B10281BCB3300F0C99D /* gl */, DB519B13281BCBC400F0C99D /* it */, DB519B16281BCC2F00F0C99D /* tr */, + DBC9E3A4282E13BB0063A4D9 /* eu */, + DBC9E3A7282E15190063A4D9 /* gd */, + DBC9E3AA282E17DF0063A4D9 /* es-AR */, ); name = InfoPlist.strings; sourceTree = ""; @@ -4596,9 +4590,7 @@ children = ( DBA4B0F826C269880077136E /* en */, DB4B778326CA4EFA00B087B3 /* ru */, - DB4B778826CA500E00B087B3 /* gd-GB */, DB4B778926CA504100B087B3 /* es */, - DB4B778A26CA504200B087B3 /* es-419 */, DB4B778B26CA504300B087B3 /* ar */, DB4B778C26CA504400B087B3 /* ca */, DB4B778D26CA504500B087B3 /* zh-Hans */, @@ -4607,8 +4599,6 @@ DB4B779026CA504900B087B3 /* fr */, DB4B779126CA504A00B087B3 /* ja */, DB4B779626CA50BA00B087B3 /* th */, - DB126A50278C063F005726EE /* eu-ES */, - DB126A5A278C088D005726EE /* sv-FI */, DBEB19EB27E4F37B00B0E80E /* ku */, DBF81C7627F68F5A00004A56 /* kab */, DBF81C7927F6913300004A56 /* vi */, @@ -4618,6 +4608,9 @@ DB519B11281BCB3400F0C99D /* gl */, DB519B14281BCBC400F0C99D /* it */, DB519B17281BCC2F00F0C99D /* tr */, + DBC9E3A5282E13BB0063A4D9 /* eu */, + DBC9E3A8282E15190063A4D9 /* gd */, + DBC9E3AB282E17DF0063A4D9 /* es-AR */, ); name = Intents.stringsdict; sourceTree = ""; diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 5041bc0be..4dab4933f 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 31 + 22 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 30 + 20 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 32 + 21 SuppressBuildableAutocreation diff --git a/Mastodon/Resources/es-419.lproj/InfoPlist.strings b/Mastodon/Resources/es-419.lproj/InfoPlist.strings deleted file mode 100644 index e7ef4cb76..000000000 --- a/Mastodon/Resources/es-419.lproj/InfoPlist.strings +++ /dev/null @@ -1,4 +0,0 @@ -"NSCameraUsageDescription" = "Usado para tomar fotos para los mensajes"; -"NSPhotoLibraryAddUsageDescription" = "Usado para guardar la foto en la Biblioteca de fotos"; -"NewPostShortcutItemTitle" = "Nuevo mensaje"; -"SearchShortcutItemTitle" = "Buscar"; \ No newline at end of file diff --git a/Mastodon/Resources/eu-ES.lproj/InfoPlist.strings b/Mastodon/Resources/es-AR.lproj/InfoPlist.strings similarity index 100% rename from Mastodon/Resources/eu-ES.lproj/InfoPlist.strings rename to Mastodon/Resources/es-AR.lproj/InfoPlist.strings diff --git a/Mastodon/Resources/sv-FI.lproj/InfoPlist.strings b/Mastodon/Resources/eu.lproj/InfoPlist.strings similarity index 100% rename from Mastodon/Resources/sv-FI.lproj/InfoPlist.strings rename to Mastodon/Resources/eu.lproj/InfoPlist.strings diff --git a/Mastodon/Resources/gd-GB.lproj/InfoPlist.strings b/Mastodon/Resources/gd-GB.lproj/InfoPlist.strings deleted file mode 100644 index ccb39b44e..000000000 --- a/Mastodon/Resources/gd-GB.lproj/InfoPlist.strings +++ /dev/null @@ -1,4 +0,0 @@ -"NSCameraUsageDescription" = "’Ga chleachdadh airson dealbh a thogail do staid puist"; -"NSPhotoLibraryAddUsageDescription" = "’Ga chleachdadh airson dealbh a shàbhaladh ann an tasg-lann nan dealbhan"; -"NewPostShortcutItemTitle" = "Post ùr"; -"SearchShortcutItemTitle" = "Lorg"; \ No newline at end of file diff --git a/Mastodon/Resources/gd.lproj/InfoPlist.strings b/Mastodon/Resources/gd.lproj/InfoPlist.strings new file mode 100644 index 000000000..710865573 --- /dev/null +++ b/Mastodon/Resources/gd.lproj/InfoPlist.strings @@ -0,0 +1,4 @@ +"NSCameraUsageDescription" = "Used to take photo for post status"; +"NSPhotoLibraryAddUsageDescription" = "Used to save photo into the Photo Library"; +"NewPostShortcutItemTitle" = "New Post"; +"SearchShortcutItemTitle" = "Search"; \ No newline at end of file diff --git a/MastodonIntent/es-419.lproj/Intents.strings b/MastodonIntent/es-419.lproj/Intents.strings deleted file mode 100644 index 55a47e209..000000000 --- a/MastodonIntent/es-419.lproj/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Enviar a Mastodon"; - -"751xkl" = "Contenido del texto"; - -"CsR7G2" = "Enviar"; - -"HZSGTr" = "¿Qué contenido enviar?"; - -"HdGikU" = "Error al enviar mensaje"; - -"KDNTJ4" = "Motivo del error"; - -"RHxKOw" = "Enviar mensaje con contenido de texto"; - -"RxSqsb" = "Mensaje"; - -"WCIR3D" = "Enviar ${content} a Mastodon"; - -"ZKJSNu" = "Mensaje"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Visibilidad"; - -"Zo4jgJ" = "Visibilidad del mensaje"; - -"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con \"Público\"."; - -"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con \"Sólo para seguidores\"."; - -"ayoYEb-dYQ5NN" = "${content}, público"; - -"ayoYEb-ehFLjY" = "${content}, sólo para seguidores"; - -"dUyuGg" = "Enviar"; - -"dYQ5NN" = "Público"; - -"ehFLjY" = "Sólo para seguidores"; - -"gfePDu" = "Error al enviar mensaje. ${failureReason}"; - -"k7dbKQ" = "El mensaje se envió exitosamente."; - -"oGiqmY-dYQ5NN" = "Sólo para confirmar, ¿querías que este mensaje sea PÚBLICO?"; - -"oGiqmY-ehFLjY" = "Sólo para confirmar, ¿querías que este mensaje sea SÓLO PARA SEGUIDORES?"; - -"rM6dvp" = "Dirección web"; - -"ryJLwG" = "El mensaje se envió exitosamente. "; diff --git a/MastodonIntent/sv-FI.lproj/Intents.strings b/MastodonIntent/es-AR.lproj/Intents.strings similarity index 100% rename from MastodonIntent/sv-FI.lproj/Intents.strings rename to MastodonIntent/es-AR.lproj/Intents.strings diff --git a/MastodonIntent/es-419.lproj/Intents.stringsdict b/MastodonIntent/es-AR.lproj/Intents.stringsdict similarity index 100% rename from MastodonIntent/es-419.lproj/Intents.stringsdict rename to MastodonIntent/es-AR.lproj/Intents.stringsdict diff --git a/MastodonIntent/eu-ES.lproj/Intents.strings b/MastodonIntent/eu.lproj/Intents.strings similarity index 100% rename from MastodonIntent/eu-ES.lproj/Intents.strings rename to MastodonIntent/eu.lproj/Intents.strings diff --git a/MastodonIntent/eu-ES.lproj/Intents.stringsdict b/MastodonIntent/eu.lproj/Intents.stringsdict similarity index 100% rename from MastodonIntent/eu-ES.lproj/Intents.stringsdict rename to MastodonIntent/eu.lproj/Intents.stringsdict diff --git a/MastodonIntent/gd-GB.lproj/Intents.strings b/MastodonIntent/gd.lproj/Intents.strings similarity index 100% rename from MastodonIntent/gd-GB.lproj/Intents.strings rename to MastodonIntent/gd.lproj/Intents.strings diff --git a/MastodonIntent/gd-GB.lproj/Intents.stringsdict b/MastodonIntent/gd.lproj/Intents.stringsdict similarity index 100% rename from MastodonIntent/gd-GB.lproj/Intents.stringsdict rename to MastodonIntent/gd.lproj/Intents.stringsdict diff --git a/MastodonIntent/sv-FI.lproj/Intents.stringsdict b/MastodonIntent/sv-FI.lproj/Intents.stringsdict deleted file mode 100644 index 5a39d5e64..000000000 --- a/MastodonIntent/sv-FI.lproj/Intents.stringsdict +++ /dev/null @@ -1,54 +0,0 @@ - - - - - There are ${count} options matching ‘${content}’. - 2 - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${content}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - 0 options - one - 1 option - two - 2 options - few - %ld options - many - %ld options - other - %ld options - - - There are ${count} options matching ‘${visibility}’. - - NSStringLocalizedFormatKey - There are %#@count_option@ matching ‘${visibility}’. - count_option - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - %ld - zero - 0 options - one - 1 option - two - 2 options - few - %ld options - many - %ld options - other - %ld options - - - - diff --git a/MastodonIntent/sv.lproj/Intents.strings b/MastodonIntent/sv.lproj/Intents.strings index b85bec4c5..526e495d2 100644 --- a/MastodonIntent/sv.lproj/Intents.strings +++ b/MastodonIntent/sv.lproj/Intents.strings @@ -1,52 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Publicera på Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Textinnehåll"; -"CsR7G2" = "Post on Mastodon"; +"CsR7G2" = "Publicera på Mastodon"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Vilket innehåll ska publiceras?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Publiceringen misslyckades"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Felorsak"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Skicka inlägg med textinnehåll"; -"RxSqsb" = "Post"; +"RxSqsb" = "Inlägg"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Publicera ${content} på Mastodon"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Inlägg"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Synlighet"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Inläggssynlighet"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Det finns ${count} alternativ som matchar ‘Offentligt’."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Det finns ${count} alternativ som matchar ‘Endast följare’."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, Offentligt"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, Endast följare"; -"dUyuGg" = "Post on Mastodon"; +"dUyuGg" = "Publicera på Mastodon"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Offentligt"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Endast följare"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Publicering misslyckades. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Inlägget har publicerats."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Bara för att bekräfta, ville du ha 'Offentligt'?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Bara för att bekräfta, ville du ha 'Endast följare'?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully."; - +"ryJLwG" = "Inlägget har publicerats. "; diff --git a/MastodonIntent/sv_FI.lproj/Intents.strings b/MastodonIntent/sv_FI.lproj/Intents.strings deleted file mode 100644 index 1be213d45..000000000 --- a/MastodonIntent/sv_FI.lproj/Intents.strings +++ /dev/null @@ -1,51 +0,0 @@ -"16wxgf" = "Julkaise Mastodonissa"; - -"751xkl" = "Tekstisisältö"; - -"CsR7G2" = "Julkaise Mastodonissa"; - -"HZSGTr" = "Mitä sisältöä julkaista?"; - -"HdGikU" = "Julkaiseminen epäonnistui"; - -"KDNTJ4" = "Epäonnistumisen syy"; - -"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; - -"RxSqsb" = "Julkaisu"; - -"WCIR3D" = "Julkaise ${content} Mastodonissa"; - -"ZKJSNu" = "Julkaisu"; - -"ZS1XaK" = "${content}"; - -"ZbSjzC" = "Näkyvyys"; - -"Zo4jgJ" = "Julkaisun näkyvyys"; - -"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; - -"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; - -"ayoYEb-dYQ5NN" = "${content}, julkinen"; - -"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; - -"dUyuGg" = "Julkaise Mastodonissa"; - -"dYQ5NN" = "Julkinen"; - -"ehFLjY" = "Vain seuraajat"; - -"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; - -"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; - -"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; - -"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; - -"rM6dvp" = "URL"; - -"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; diff --git a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift index b5403a142..f8208f0db 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift +++ b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift @@ -518,6 +518,8 @@ public enum L10n { public enum ConfirmEmail { /// Tap the link we emailed to you to verify your account. public static let subtitle = L10n.tr("Localizable", "Scene.ConfirmEmail.Subtitle") + /// Tap the link we emailed to you to verify your account + public static let tapTheLinkWeEmailedToYouToVerifyYourAccount = L10n.tr("Localizable", "Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount") /// One last thing. public static let title = L10n.tr("Localizable", "Scene.ConfirmEmail.Title") public enum Button { @@ -708,6 +710,10 @@ public enum L10n { } } public enum Register { + /// Let’s get you set up on %@ + public static func letsGetYouSetUpOnDomain(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Register.LetsGetYouSetUpOnDomain", String(describing: p1)) + } /// Let’s get you set up on %@ public static func title(_ p1: Any) -> String { return L10n.tr("Localizable", "Scene.Register.Title", String(describing: p1)) @@ -869,6 +875,10 @@ public enum L10n { } /// When you see something you don’t like on Mastodon, you can remove the person from your experience. public static let whenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience = L10n.tr("Localizable", "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience.") + /// While we review this, you can take action against %@ + public static func whileWeReviewThisYouCanTakeActionAgainstUser(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser", String(describing: p1)) + } /// You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted. public static let youWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted = L10n.tr("Localizable", "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted") } @@ -1305,6 +1315,10 @@ public enum L10n { public static func following(_ p1: Int) -> String { return L10n.tr("Localizable", "plural.count.following", p1) } + /// Plural format key: "%#@media_count@" + public static func media(_ p1: Int) -> String { + return L10n.tr("Localizable", "plural.count.media", p1) + } /// Plural format key: "%#@post_count@" public static func post(_ p1: Int) -> String { return L10n.tr("Localizable", "plural.count.post", p1) diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index c49b9f9d6..12ce8cd2d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -199,8 +199,8 @@ "Scene.ConfirmEmail.OpenEmailApp.Mail" = "البريد"; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "فتح عميل البريد الإلكتروني"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "تحقَّق من بريدك الوارِد."; -"Scene.ConfirmEmail.Subtitle" = "لقد أرسلنا للتو بريد إلكتروني إلى %@، -انقر على الرابط لتأكيد حسابك."; +"Scene.ConfirmEmail.Subtitle" = "أنقر على الرابط المرسل إليك لاستيثاق حسابك."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "شيءٌ أخير."; "Scene.Discovery.Intro" = "هَذِهِ هِيَ المَنشُوراتُ الَّتي تَكْتَسِبُ شَعبِيَّةً فِي الرُّكنِ الخاصِّ بِكَ مِن مَاستُودون."; "Scene.Discovery.Tabs.Community" = "المُجتَمَع"; @@ -286,6 +286,7 @@ "Scene.Register.Input.Password.Require" = "رمز المرور الخاص بك يجب أن يحتوي على الأقل:"; "Scene.Register.Input.Username.DuplicatePrompt" = "اِسم المُستَخدِم هذا مأخوذٌ بالفعل."; "Scene.Register.Input.Username.Placeholder" = "اِسمُ مُستَخدِم"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "أخبرنا عن نفسك."; "Scene.Report.Content1" = "هل ترغب في إضافة أي منشورات أُخرى إلى البلاغ؟"; "Scene.Report.Content2" = "هل هناك أي شيء يجب أن يعرفه المُراقبين حول هذا البلاغ؟"; @@ -303,6 +304,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "إلغاءُ مُتابَعَةِ %@"; "Scene.Report.StepFinal.Unfollowed" = "أُلغِيَت المُتابَعَة"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟"; "Scene.Report.StepFour.Step4Of4" = "الخطوة 4 مِن أصل 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict index dddba5132..61ba17c28 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict @@ -98,6 +98,30 @@ منشور + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + %ld media + one + 1 media + two + %ld media + few + %ld media + many + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index 502b26729..cb3fabf33 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -200,6 +200,7 @@ carregat a Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Obre el Client de Correu electrònic"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Comprova la teva safata d'entrada."; "Scene.ConfirmEmail.Subtitle" = "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Una última cosa."; "Scene.Discovery.Intro" = "Aquestes son les publicacions que criden l'atenció en el teu racó de Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunitat"; @@ -285,6 +286,7 @@ carregat a Mastodon."; "Scene.Register.Input.Password.Require" = "La teva contrasenya com a mínim necessita:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Aquest nom d'usuari ja està en ús."; "Scene.Register.Input.Username.Placeholder" = "nom d'usuari"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Anem a configurar-te a %@"; "Scene.Report.Content1" = "Hi ha alguna altre publicació que vulguis afegir a l'informe?"; "Scene.Report.Content2" = "Hi ha alguna cosa que els moderadors hagin de saber sobre aquest informe?"; @@ -302,6 +304,7 @@ carregat a Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Deixa de seguir %@"; "Scene.Report.StepFinal.Unfollowed" = "S'ha deixat de seguir"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Quan veus alguna cosa que no t'agrada a Mastodon, pots eliminar la persona de la vostra experiència."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Mentre ho revisem, pots prendre mesures contra %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "No veuràs les seves publicacions o impulsos a la teva línia de temps personal. No sabran que han estat silenciats."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Hi ha res més que hauríem de saber?"; "Scene.Report.StepFour.Step4Of4" = "Pas 4 de 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict index dfbd38c0b..c83c65883 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ publicacions + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mèdia + other + %ld mèdia + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings index 89ba6315d..a3eda382e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings @@ -199,6 +199,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "بەرنامەی ئیمێڵەکەت بکەوە"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "ئیمێڵەکانت ببینە."; "Scene.ConfirmEmail.Subtitle" = "بۆ پشتڕاستکردنەوەی هەژمارەکەت ئەو بەستەرە بکەوە کە بە ئیمێڵ بۆمان ناردوویت."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "کۆتا شت."; "Scene.Discovery.Intro" = "پۆست هەیە سەرنجیان لەسەرە لە گۆشەکەی تۆ."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -284,6 +285,7 @@ "Scene.Register.Input.Password.Require" = "تێپەڕوشەکەت لایەنی کەم پێویستیی هەیە بە:"; "Scene.Register.Input.Username.DuplicatePrompt" = "ئەم ناوە گیراوە."; "Scene.Register.Input.Username.Placeholder" = "ناوی بەکارهێنەر"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "خۆت تۆمار بکە لە %@"; "Scene.Report.Content1" = "پۆستی تر هەیە بتەوێت سکاڵایان لێ بکەیت؟"; "Scene.Report.Content2" = "هیچ شتێکی هەیە بە چاودێرەکان بیزانن دەربارەی ئەم سکاڵایە؟"; @@ -301,6 +303,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict index e744a4bd5..9d9adb118 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ پۆست + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index 7b3af4622..1a361b7c3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -199,8 +199,8 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.ConfirmEmail.OpenEmailApp.Mail" = "Mail"; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "E-Mail-Client öffnen"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Überprüfe deinen Posteingang."; -"Scene.ConfirmEmail.Subtitle" = "Wir haben gerade eine E-Mail an %@ gesendet, -tippe darin auf den Link, um Dein Konto zu bestätigen."; +"Scene.ConfirmEmail.Subtitle" = "Schaue kurz in dein E-Mail-Postfach und tippe den Link an, den wir dir gesendet haben."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Noch eine letzte Sache."; "Scene.Discovery.Intro" = "Dies sind die Beiträge, die in deiner Umgebung auf Mastodon beliebter werden."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -286,6 +286,7 @@ tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.Register.Input.Password.Require" = "Anforderungen an dein Passwort:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Dieser Benutzername ist vergeben."; "Scene.Register.Input.Username.Placeholder" = "Benutzername"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Erzähle uns von dir."; "Scene.Report.Content1" = "Gibt es noch weitere Beiträge, die du der Meldung hinzufügen möchtest?"; "Scene.Report.Content2" = "Gibt es etwas, was die Moderatoren über diese Meldung wissen sollten?"; @@ -303,6 +304,7 @@ tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict index 20e8b615e..36fb9f19e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ Beiträge + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings index 91ad3a0e3..cf08499b7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings @@ -200,6 +200,7 @@ uploaded to Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Open Email Client"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Check your inbox."; "Scene.ConfirmEmail.Subtitle" = "Tap the link we emailed to you to verify your account."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "One last thing."; "Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -285,6 +286,7 @@ uploaded to Mastodon."; "Scene.Register.Input.Password.Require" = "Your password needs at least:"; "Scene.Register.Input.Username.DuplicatePrompt" = "This username is taken."; "Scene.Register.Input.Username.Placeholder" = "username"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Let’s get you set up on %@"; "Scene.Report.Content1" = "Are there any other posts you’d like to add to the report?"; "Scene.Report.Content2" = "Is there anything the moderators should know about this report?"; @@ -302,6 +304,7 @@ uploaded to Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict index 503ff9dbd..80cfd3d62 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ posts + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings deleted file mode 100644 index 5b05b535d..000000000 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.strings +++ /dev/null @@ -1,428 +0,0 @@ -"Common.Alerts.BlockDomain.BlockEntireDomain" = "Bloquear dominio"; -"Common.Alerts.BlockDomain.Title" = "¿Estás completamente seguro que querés bloquear el %@ entero? En la mayoría de los casos, unos cuantos bloqueos y silenciados puntuales son suficientes y preferibles. No vas a ver contenido de ese dominio y todos tus seguidores de ese dominio serán quitados."; -"Common.Alerts.CleanCache.Message" = "Se limpió exitosamente %@ de la memoria caché."; -"Common.Alerts.CleanCache.Title" = "Limpiar caché"; -"Common.Alerts.Common.PleaseTryAgain" = "Por favor, intentá de nuevo."; -"Common.Alerts.Common.PleaseTryAgainLater" = "Por favor, intentá de nuevo más tarde."; -"Common.Alerts.DeletePost.Message" = "¿Estás seguro que querés eliminar este mensaje?"; -"Common.Alerts.DeletePost.Title" = "Eliminar mensaje"; -"Common.Alerts.DiscardPostContent.Message" = "Confirmá para descartar el contenido del mensaje redactado."; -"Common.Alerts.DiscardPostContent.Title" = "Descartar borrador"; -"Common.Alerts.EditProfileFailure.Message" = "No se pudo editar el perfil. Por favor, intentá de nuevo."; -"Common.Alerts.EditProfileFailure.Title" = "Error al editar el perfil"; -"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "No se puede adjuntar más de un video."; -"Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "No se puede adjuntar un video a un mensaje que ya contenga imágenes."; -"Common.Alerts.PublishPostFailure.Message" = "Error al enviar en mensaje. -Por favor, revisá tu conexión a Internet."; -"Common.Alerts.PublishPostFailure.Title" = "Error al enviar el mensaje"; -"Common.Alerts.SavePhotoFailure.Message" = "Por favor, habilitá el permiso de acceso a la biblioteca de fotos para guardar la imagen."; -"Common.Alerts.SavePhotoFailure.Title" = "Error al guardar la imagen"; -"Common.Alerts.ServerError.Title" = "Error del servidor"; -"Common.Alerts.SignOut.Confirm" = "Cerrar sesión"; -"Common.Alerts.SignOut.Message" = "¿Estás seguro que querés cerrar la sesión?"; -"Common.Alerts.SignOut.Title" = "Cerrar sesión"; -"Common.Alerts.SignUpFailure.Title" = "Error al registrarse"; -"Common.Alerts.VoteFailure.PollEnded" = "La encuesta finalizó"; -"Common.Alerts.VoteFailure.Title" = "Error al votar"; -"Common.Controls.Actions.Add" = "Agregar"; -"Common.Controls.Actions.Back" = "Volver"; -"Common.Controls.Actions.BlockDomain" = "Bloquear a %@"; -"Common.Controls.Actions.Cancel" = "Cancelar"; -"Common.Controls.Actions.Compose" = "Redactar"; -"Common.Controls.Actions.Confirm" = "Confirmar"; -"Common.Controls.Actions.Continue" = "Continuar"; -"Common.Controls.Actions.CopyPhoto" = "Copiar foto"; -"Common.Controls.Actions.Delete" = "Eliminar"; -"Common.Controls.Actions.Discard" = "Descartar"; -"Common.Controls.Actions.Done" = "Listo"; -"Common.Controls.Actions.Edit" = "Editar"; -"Common.Controls.Actions.FindPeople" = "Encontrá cuentas para seguir"; -"Common.Controls.Actions.ManuallySearch" = "Buscar manualmente"; -"Common.Controls.Actions.Next" = "Siguiente"; -"Common.Controls.Actions.Ok" = "Aceptar"; -"Common.Controls.Actions.Open" = "Abrir"; -"Common.Controls.Actions.OpenInBrowser" = "Abrir en el navegador"; -"Common.Controls.Actions.OpenInSafari" = "Abrir en Safari"; -"Common.Controls.Actions.Preview" = "Previsualización"; -"Common.Controls.Actions.Previous" = "Anterior"; -"Common.Controls.Actions.Remove" = "Quitar"; -"Common.Controls.Actions.Reply" = "Responder"; -"Common.Controls.Actions.ReportUser" = "Denunciar a %@"; -"Common.Controls.Actions.Save" = "Guardar"; -"Common.Controls.Actions.SavePhoto" = "Guardar foto"; -"Common.Controls.Actions.SeeMore" = "Ver más"; -"Common.Controls.Actions.Settings" = "Configuración"; -"Common.Controls.Actions.Share" = "Compartir"; -"Common.Controls.Actions.SharePost" = "Compartir mensaje"; -"Common.Controls.Actions.ShareUser" = "Compartir %@"; -"Common.Controls.Actions.SignIn" = "Iniciar sesión"; -"Common.Controls.Actions.SignUp" = "Registrarse"; -"Common.Controls.Actions.Skip" = "Omitir"; -"Common.Controls.Actions.TakePhoto" = "Tomar foto"; -"Common.Controls.Actions.TryAgain" = "Intentá de nuevo"; -"Common.Controls.Actions.UnblockDomain" = "Desbloquear a %@"; -"Common.Controls.Friendship.Block" = "Bloquear"; -"Common.Controls.Friendship.BlockDomain" = "Bloquear %@"; -"Common.Controls.Friendship.BlockUser" = "Bloquear a %@"; -"Common.Controls.Friendship.Blocked" = "Bloqueado"; -"Common.Controls.Friendship.EditInfo" = "Editar información"; -"Common.Controls.Friendship.Follow" = "Seguir"; -"Common.Controls.Friendship.Following" = "Siguiendo"; -"Common.Controls.Friendship.Mute" = "Silenciar"; -"Common.Controls.Friendship.MuteUser" = "Silenciar a %@"; -"Common.Controls.Friendship.Muted" = "Silenciado"; -"Common.Controls.Friendship.Pending" = "Pendientes"; -"Common.Controls.Friendship.Request" = "Solicitar"; -"Common.Controls.Friendship.Unblock" = "Desbloquear"; -"Common.Controls.Friendship.UnblockUser" = "Desbloquear a %@"; -"Common.Controls.Friendship.Unmute" = "Dejar de silenciar"; -"Common.Controls.Friendship.UnmuteUser" = "Dejar de silenciar a %@"; -"Common.Controls.Keyboard.Common.ComposeNewPost" = "Redactar un nuevo mensaje"; -"Common.Controls.Keyboard.Common.OpenSettings" = "Abrir Configuración"; -"Common.Controls.Keyboard.Common.ShowFavorites" = "Mostrar favoritos"; -"Common.Controls.Keyboard.Common.SwitchToTab" = "Cambiar a %@"; -"Common.Controls.Keyboard.SegmentedControl.NextSection" = "Sección siguiente"; -"Common.Controls.Keyboard.SegmentedControl.PreviousSection" = "Sección anterior"; -"Common.Controls.Keyboard.Timeline.NextStatus" = "Mensaje siguiente"; -"Common.Controls.Keyboard.Timeline.OpenAuthorProfile" = "Abrir perfil del autor"; -"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "Abrir perfil del adherente"; -"Common.Controls.Keyboard.Timeline.OpenStatus" = "Abrir mensaje"; -"Common.Controls.Keyboard.Timeline.PreviewImage" = "Previsualizar imagen"; -"Common.Controls.Keyboard.Timeline.PreviousStatus" = "Mensaje anterior"; -"Common.Controls.Keyboard.Timeline.ReplyStatus" = "Responder al mensaje"; -"Common.Controls.Keyboard.Timeline.ToggleContentWarning" = "Cambiar modo de advertencia de contenido"; -"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "Cambiar marca de favorito del mensaje"; -"Common.Controls.Keyboard.Timeline.ToggleReblog" = "Cambiar adhesión al mensaje"; -"Common.Controls.Status.Actions.Favorite" = "Marcar como favorito"; -"Common.Controls.Status.Actions.Hide" = "Ocultar"; -"Common.Controls.Status.Actions.Menu" = "Menú"; -"Common.Controls.Status.Actions.Reblog" = "Adherir"; -"Common.Controls.Status.Actions.Reply" = "Responder"; -"Common.Controls.Status.Actions.ShowGif" = "Mostrar GIF"; -"Common.Controls.Status.Actions.ShowImage" = "Mostrar imagen"; -"Common.Controls.Status.Actions.ShowVideoPlayer" = "Mostrar reproductor de video"; -"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tocá y mantené presionado para mostrar el menú"; -"Common.Controls.Status.Actions.Unfavorite" = "Dejar de marcar como favorito"; -"Common.Controls.Status.Actions.Unreblog" = "Deshacer adhesión"; -"Common.Controls.Status.ContentWarning" = "Advertencia de contenido"; -"Common.Controls.Status.MediaContentWarning" = "Tocá en cualquier parte para mostrar"; -"Common.Controls.Status.Poll.Closed" = "Cerrada"; -"Common.Controls.Status.Poll.Vote" = "Votar"; -"Common.Controls.Status.SensitiveContent" = "Contenido sensible"; -"Common.Controls.Status.ShowPost" = "Mostrar mensaje"; -"Common.Controls.Status.ShowUserProfile" = "Mostrar perfil de usuario"; -"Common.Controls.Status.Tag.Email" = "Correo electrónico"; -"Common.Controls.Status.Tag.Emoji" = "Emoji"; -"Common.Controls.Status.Tag.Hashtag" = "Etiqueta"; -"Common.Controls.Status.Tag.Link" = "Enlace"; -"Common.Controls.Status.Tag.Mention" = "Mención"; -"Common.Controls.Status.Tag.Url" = "Dirección web"; -"Common.Controls.Status.TapToReveal" = "Tocá para mostrar"; -"Common.Controls.Status.UserReblogged" = "%@ adhirió"; -"Common.Controls.Status.UserRepliedTo" = "Respondió a %@"; -"Common.Controls.Status.Visibility.Direct" = "Sólo el usuario mencionado puede ver este mensaje."; -"Common.Controls.Status.Visibility.Private" = "Sólo sus seguidores pueden ver este mensaje."; -"Common.Controls.Status.Visibility.PrivateFromMe" = "Sólo mis seguidores pueden ver este mensaje."; -"Common.Controls.Status.Visibility.Unlisted" = "Todo el mundo puede ver este mensaje pero no mostrarse en la línea temporal pública."; -"Common.Controls.Tabs.Home" = "Principal"; -"Common.Controls.Tabs.Notification" = "Notificación"; -"Common.Controls.Tabs.Profile" = "Perfil"; -"Common.Controls.Tabs.Search" = "Buscar"; -"Common.Controls.Timeline.Filtered" = "Filtrado"; -"Common.Controls.Timeline.Header.BlockedWarning" = "No podés ver el perfil de este usuario - hasta que dicho usuario te desbloquee."; -"Common.Controls.Timeline.Header.BlockingWarning" = "No podés ver el perfil de este usuario - hasta que lo desbloquees. -Tu perfil le aparece así a este usuario."; -"Common.Controls.Timeline.Header.NoStatusFound" = "Mensaje no encontrado"; -"Common.Controls.Timeline.Header.SuspendedWarning" = "Este usuario está suspendido."; -"Common.Controls.Timeline.Header.UserBlockedWarning" = "No podés ver el perfil de %@ - hasta que dicho usuario te desbloquee."; -"Common.Controls.Timeline.Header.UserBlockingWarning" = "No podés ver el perfil de %@ - hasta que lo desbloquees. -Tu perfil le aparece así a este usuario."; -"Common.Controls.Timeline.Header.UserSuspendedWarning" = "La cuenta de %@ está suspendida."; -"Common.Controls.Timeline.Loader.LoadMissingPosts" = "Cargar mensajes faltantes"; -"Common.Controls.Timeline.Loader.LoadingMissingPosts" = "Cargando mensajes faltantes…"; -"Common.Controls.Timeline.Loader.ShowMoreReplies" = "Mostrar más respuestas"; -"Common.Controls.Timeline.Timestamp.Now" = "Ahora"; -"Scene.AccountList.AddAccount" = "Agregar cuenta"; -"Scene.AccountList.DismissAccountSwitcher" = "Descartar cambio de cuenta"; -"Scene.AccountList.TabBarHint" = "Perfil seleccionado actualmente: %@. Tocá dos veces y mantenelo presionado para cambiar de cuenta"; -"Scene.Compose.Accessibility.AppendAttachment" = "Agregar archivo adjunto"; -"Scene.Compose.Accessibility.AppendPoll" = "Agregar encuesta"; -"Scene.Compose.Accessibility.CustomEmojiPicker" = "Selector de emoji personalizado"; -"Scene.Compose.Accessibility.DisableContentWarning" = "Deshabilitar advertencia de contenido"; -"Scene.Compose.Accessibility.EnableContentWarning" = "Habilitar advertencia de contenido"; -"Scene.Compose.Accessibility.PostVisibilityMenu" = "Menú de visibilidad del mensaje"; -"Scene.Compose.Accessibility.RemovePoll" = "Quitar encuesta"; -"Scene.Compose.Attachment.AttachmentBroken" = "Este archivo de %@ está roto -y no se puede subir a Mastodon."; -"Scene.Compose.Attachment.DescriptionPhoto" = "Describí la foto para personas con dificultades visuales…"; -"Scene.Compose.Attachment.DescriptionVideo" = "Describí el video para personas con dificultades visuales…"; -"Scene.Compose.Attachment.Photo" = "foto"; -"Scene.Compose.Attachment.Video" = "video"; -"Scene.Compose.AutoComplete.SpaceToAdd" = "Espacio para agregar"; -"Scene.Compose.ComposeAction" = "Enviar"; -"Scene.Compose.ContentInputPlaceholder" = "¿Qué onda?"; -"Scene.Compose.ContentWarning.Placeholder" = "Escribí una advertencia precisa acá…"; -"Scene.Compose.Keyboard.AppendAttachmentEntry" = "Agregar archivo adjunto - %@"; -"Scene.Compose.Keyboard.DiscardPost" = "Descartar mensaje"; -"Scene.Compose.Keyboard.PublishPost" = "Enviar mensaje"; -"Scene.Compose.Keyboard.SelectVisibilityEntry" = "Seleccionar visibilidad - %@"; -"Scene.Compose.Keyboard.ToggleContentWarning" = "Cambiar advertencia de contenido"; -"Scene.Compose.Keyboard.TogglePoll" = "Cambiar encuesta"; -"Scene.Compose.MediaSelection.Browse" = "Explorar"; -"Scene.Compose.MediaSelection.Camera" = "Tomar foto"; -"Scene.Compose.MediaSelection.PhotoLibrary" = "Biblioteca de fotos"; -"Scene.Compose.Poll.DurationTime" = "Duración: %@"; -"Scene.Compose.Poll.OneDay" = "1 día"; -"Scene.Compose.Poll.OneHour" = "1 hora"; -"Scene.Compose.Poll.OptionNumber" = "Opción %ld"; -"Scene.Compose.Poll.SevenDays" = "7 días"; -"Scene.Compose.Poll.SixHours" = "6 horas"; -"Scene.Compose.Poll.ThirtyMinutes" = "30 minutos"; -"Scene.Compose.Poll.ThreeDays" = "3 días"; -"Scene.Compose.ReplyingToUser" = "respondiendo a %@"; -"Scene.Compose.Title.NewPost" = "Nuevo mensaje"; -"Scene.Compose.Title.NewReply" = "Nueva respuesta"; -"Scene.Compose.Visibility.Direct" = "Sólo a las cuentas que menciono"; -"Scene.Compose.Visibility.Private" = "Sólo para seguidores"; -"Scene.Compose.Visibility.Public" = "Público"; -"Scene.Compose.Visibility.Unlisted" = "No listado"; -"Scene.ConfirmEmail.Button.OpenEmailApp" = "Abrir aplicación de correo electrónico"; -"Scene.ConfirmEmail.Button.Resend" = "Reenviar"; -"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Revisá si tu dirección de correo electrónico es correcta así como tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste."; -"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Reenviar correo electrónico"; -"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Revisá tu correo electrónico"; -"Scene.ConfirmEmail.OpenEmailApp.Description" = "Te acabamos de enviar un correo electrónico. Revisá tu carpeta de correo basura / correo no deseado / spam, si todavía no lo hiciste."; -"Scene.ConfirmEmail.OpenEmailApp.Mail" = "Correo"; -"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Abrir cliente de correo electrónico"; -"Scene.ConfirmEmail.OpenEmailApp.Title" = "Revisá tu bandeja de entrada."; -"Scene.ConfirmEmail.Subtitle" = "Acabamos de enviar un correo electrónico a %@, -pulsá en el enlace para confirmar tu cuenta."; -"Scene.ConfirmEmail.Title" = "Una última cosa."; -"Scene.Discovery.Intro" = "Estos son los mensajes que están ganando tracción en tu rincón de Mastodon."; -"Scene.Discovery.Tabs.Community" = "Comunidad"; -"Scene.Discovery.Tabs.ForYou" = "Para vos"; -"Scene.Discovery.Tabs.Hashtags" = "Etiquetas"; -"Scene.Discovery.Tabs.News" = "Novedades"; -"Scene.Discovery.Tabs.Posts" = "Mensajes"; -"Scene.Favorite.Title" = "Tus favoritos"; -"Scene.Follower.Footer" = "No se muestran los seguidores de otros servidores."; -"Scene.Following.Footer" = "No se muestran las cuentas de otros servidores que seguís."; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; -"Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ver nuevos mensajes"; -"Scene.HomeTimeline.NavigationBarState.Offline" = "Desconectado"; -"Scene.HomeTimeline.NavigationBarState.Published" = "¡Enviado!"; -"Scene.HomeTimeline.NavigationBarState.Publishing" = "Enviando mensaje…"; -"Scene.HomeTimeline.Title" = "Principal"; -"Scene.Notification.Keyobard.ShowEverything" = "Mostrar todo"; -"Scene.Notification.Keyobard.ShowMentions" = "Mostrar menciones"; -"Scene.Notification.NotificationDescription.FavoritedYourPost" = "marcó como favorito tu mensaje"; -"Scene.Notification.NotificationDescription.FollowedYou" = "te sigue"; -"Scene.Notification.NotificationDescription.MentionedYou" = "te mencionó"; -"Scene.Notification.NotificationDescription.PollHasEnded" = "la encuesta terminó"; -"Scene.Notification.NotificationDescription.RebloggedYourPost" = "adhirió a tu mensaje"; -"Scene.Notification.NotificationDescription.RequestToFollowYou" = "solicitó seguirte"; -"Scene.Notification.Title.Everything" = "Todo"; -"Scene.Notification.Title.Mentions" = "Menciones"; -"Scene.Preview.Keyboard.ClosePreview" = "Cerrar previsualización"; -"Scene.Preview.Keyboard.ShowNext" = "Mostrar siguiente"; -"Scene.Preview.Keyboard.ShowPrevious" = "Mostrar anterior"; -"Scene.Profile.Accessibility.DoubleTapToOpenTheList" = "Tocá dos veces para abrir la lista"; -"Scene.Profile.Accessibility.EditAvatarImage" = "Editar imagen de avatar"; -"Scene.Profile.Accessibility.ShowAvatarImage" = "Mostrar imagen de avatar"; -"Scene.Profile.Accessibility.ShowBannerImage" = "Mostrar imagen de banner"; -"Scene.Profile.Dashboard.Followers" = "seguidores"; -"Scene.Profile.Dashboard.Following" = "siguiendo"; -"Scene.Profile.Dashboard.Posts" = "mensajes"; -"Scene.Profile.Fields.AddRow" = "Agregar fila"; -"Scene.Profile.Fields.Placeholder.Content" = "Valor de campo"; -"Scene.Profile.Fields.Placeholder.Label" = "Nombre de campo"; -"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Message" = "Confirmá para desbloquear a %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Title" = "Bloquear cuenta"; -"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Message" = "Confirmá para silenciar a %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Title" = "Silenciar cuenta"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Message" = "Confirmá para desbloquear a %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Title" = "Desbloquear cuenta"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Message" = "Confirmá para dejar de silenciar a %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Title" = "Dejar de silenciar cuenta"; -"Scene.Profile.SegmentedControl.About" = "Información"; -"Scene.Profile.SegmentedControl.Media" = "Medios"; -"Scene.Profile.SegmentedControl.Posts" = "Mensajes"; -"Scene.Profile.SegmentedControl.PostsAndReplies" = "Mensajes y respuestas"; -"Scene.Profile.SegmentedControl.Replies" = "Respuestas"; -"Scene.Register.Error.Item.Agreement" = "Acuerdo"; -"Scene.Register.Error.Item.Email" = "Correo electrónico"; -"Scene.Register.Error.Item.Locale" = "Idioma de la interface"; -"Scene.Register.Error.Item.Password" = "Contraseña"; -"Scene.Register.Error.Item.Reason" = "Motivo"; -"Scene.Register.Error.Item.Username" = "Nombre de usuario"; -"Scene.Register.Error.Reason.Accepted" = "%@ debe ser aceptado"; -"Scene.Register.Error.Reason.Blank" = "%@ es obligatorio"; -"Scene.Register.Error.Reason.Blocked" = "%@ contiene un proveedor de correo electrónico no permitido"; -"Scene.Register.Error.Reason.Inclusion" = "%@ no es un valor soportado"; -"Scene.Register.Error.Reason.Invalid" = "%@ no es válido"; -"Scene.Register.Error.Reason.Reserved" = "%@ es una palabra clave reservada"; -"Scene.Register.Error.Reason.Taken" = "%@ ya está en uso"; -"Scene.Register.Error.Reason.TooLong" = "%@ es demasiado largo"; -"Scene.Register.Error.Reason.TooShort" = "%@ es demasiado corto"; -"Scene.Register.Error.Reason.Unreachable" = "%@ parece no existir"; -"Scene.Register.Error.Special.EmailInvalid" = "Esta no es una dirección de correo electrónico válida"; -"Scene.Register.Error.Special.PasswordTooShort" = "La contraseña es demasiado corta (debe tener al menos 8 caracteres)"; -"Scene.Register.Error.Special.UsernameInvalid" = "El nombre de usuario sólo debe contener caracteres alfanuméricos sin signos diacríticos y subguiones (\"_\")"; -"Scene.Register.Error.Special.UsernameTooLong" = "El nombre de usuario es demasiado largo (no puede tener más de 30 caracteres)"; -"Scene.Register.Input.Avatar.Delete" = "Eliminar"; -"Scene.Register.Input.DisplayName.Placeholder" = "nombre para mostrar"; -"Scene.Register.Input.Email.Placeholder" = "correo electrónico"; -"Scene.Register.Input.Invite.RegistrationUserInviteRequest" = "¿Por qué querés unirte?"; -"Scene.Register.Input.Password.Accessibility.Checked" = "marcado"; -"Scene.Register.Input.Password.Accessibility.Unchecked" = "sin marcar"; -"Scene.Register.Input.Password.CharacterLimit" = "8 caracteres"; -"Scene.Register.Input.Password.Hint" = "Tu contraseña necesita al menos ocho caracteres"; -"Scene.Register.Input.Password.Placeholder" = "contraseña"; -"Scene.Register.Input.Password.Require" = "Tu contraseña necesita al menos:"; -"Scene.Register.Input.Username.DuplicatePrompt" = "Este nombre de usuario ya está en uso."; -"Scene.Register.Input.Username.Placeholder" = "nombre de usuario"; -"Scene.Register.Title" = "Contanos sobre vos."; -"Scene.Report.Content1" = "¿Hay otros mensajes que te gustaría agregar a la denuncia?"; -"Scene.Report.Content2" = "¿Hay algo que los moderadores deban saber sobre esta denuncia?"; -"Scene.Report.ReportSentTitle" = "Gracias por tu denuncia, vamos a revisarla."; -"Scene.Report.Reported" = "DENUNCIADA"; -"Scene.Report.Send" = "Enviar denuncia"; -"Scene.Report.SkipToSend" = "Enviar sin comentarios"; -"Scene.Report.Step1" = "Paso 1 de 2"; -"Scene.Report.Step2" = "Paso 2 de 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; -"Scene.Report.TextPlaceholder" = "Escribí o pegá comentarios adicionales"; -"Scene.Report.Title" = "Denunciar a %@"; -"Scene.Report.TitleReport" = "Denunciar"; -"Scene.Search.Recommend.Accounts.Description" = "Puede que te guste seguir estas cuentas"; -"Scene.Search.Recommend.Accounts.Follow" = "Seguir"; -"Scene.Search.Recommend.Accounts.Title" = "Cuentas que te pueden gustar"; -"Scene.Search.Recommend.ButtonText" = "Ver todos"; -"Scene.Search.Recommend.HashTag.Description" = "Etiquetas que están recibiendo bastante atención"; -"Scene.Search.Recommend.HashTag.PeopleTalking" = "%@ cuentas están hablando"; -"Scene.Search.Recommend.HashTag.Title" = "Tendencias en Mastodon"; -"Scene.Search.SearchBar.Cancel" = "Cancelar"; -"Scene.Search.SearchBar.Placeholder" = "Buscar etiquetas y cuentas"; -"Scene.Search.Searching.Clear" = "Limpiar"; -"Scene.Search.Searching.EmptyState.NoResults" = "No hay resultados"; -"Scene.Search.Searching.RecentSearch" = "Búsquedas recientes"; -"Scene.Search.Searching.Segment.All" = "Todas"; -"Scene.Search.Searching.Segment.Hashtags" = "Etiquetas"; -"Scene.Search.Searching.Segment.People" = "Cuentas"; -"Scene.Search.Searching.Segment.Posts" = "Mensajes"; -"Scene.Search.Title" = "Buscar"; -"Scene.ServerPicker.Button.Category.Academia" = "académico"; -"Scene.ServerPicker.Button.Category.Activism" = "activismo"; -"Scene.ServerPicker.Button.Category.All" = "Todas"; -"Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "Categoría: Todas"; -"Scene.ServerPicker.Button.Category.Art" = "arte"; -"Scene.ServerPicker.Button.Category.Food" = "comida"; -"Scene.ServerPicker.Button.Category.Furry" = "furry"; -"Scene.ServerPicker.Button.Category.Games" = "juegos"; -"Scene.ServerPicker.Button.Category.General" = "general"; -"Scene.ServerPicker.Button.Category.Journalism" = "periodismo"; -"Scene.ServerPicker.Button.Category.Lgbt" = "lgbtq+"; -"Scene.ServerPicker.Button.Category.Music" = "música"; -"Scene.ServerPicker.Button.Category.Regional" = "regional"; -"Scene.ServerPicker.Button.Category.Tech" = "tecnología"; -"Scene.ServerPicker.Button.SeeLess" = "Ver menos"; -"Scene.ServerPicker.Button.SeeMore" = "Ver más"; -"Scene.ServerPicker.EmptyState.BadNetwork" = "Algo salió mal al cargar los datos. Revisá tu conexión de Internet."; -"Scene.ServerPicker.EmptyState.FindingServers" = "Buscando servidores disponibles…"; -"Scene.ServerPicker.EmptyState.NoResults" = "No hay resultados"; -"Scene.ServerPicker.Input.Placeholder" = "Encontrá un servidor o unite al tuyo…"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; -"Scene.ServerPicker.Label.Category" = "CATEGORÍA"; -"Scene.ServerPicker.Label.Language" = "IDIOMA"; -"Scene.ServerPicker.Label.Users" = "CUENTAS"; -"Scene.ServerPicker.Subtitle" = "Elegí una comunidad basada en tus intereses, región o una de propósitos generales."; -"Scene.ServerPicker.SubtitleExtend" = "Elegí una comunidad basada en tus intereses, región o una de propósitos generales. Cada comunidad es operada por una organización o individuo totalmente independiente."; -"Scene.ServerPicker.Title" = "Elegí un servidor, -el que quieras."; -"Scene.ServerRules.Button.Confirm" = "Estoy de acuerdo"; -"Scene.ServerRules.PrivacyPolicy" = "política de privacidad"; -"Scene.ServerRules.Prompt" = "Al continuar, estás sujeto a los términos de servicio y política de privacidad de %@."; -"Scene.ServerRules.Subtitle" = "Estas reglas son establecidas por los administradores de %@."; -"Scene.ServerRules.TermsOfService" = "términos del servicio"; -"Scene.ServerRules.Title" = "Algunas reglas básicas."; -"Scene.Settings.Footer.MastodonDescription" = "Mastodon es software de código abierto. Podés informar errores en GitHub en %@ (%@)"; -"Scene.Settings.Keyboard.CloseSettingsWindow" = "Cerrar ventana de configuración"; -"Scene.Settings.Section.Appearance.Automatic" = "Automática"; -"Scene.Settings.Section.Appearance.Dark" = "Siempre oscura"; -"Scene.Settings.Section.Appearance.Light" = "Siempre clara"; -"Scene.Settings.Section.Appearance.Title" = "Apariencia"; -"Scene.Settings.Section.BoringZone.AccountSettings" = "Configuración de la cuenta"; -"Scene.Settings.Section.BoringZone.Privacy" = "Política de privacidad"; -"Scene.Settings.Section.BoringZone.Terms" = "Términos del servicio"; -"Scene.Settings.Section.BoringZone.Title" = "La zona aburrida"; -"Scene.Settings.Section.LookAndFeel.Light" = "Claro"; -"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Oscuro de verdad"; -"Scene.Settings.Section.LookAndFeel.SortaDark" = "Algo oscuro"; -"Scene.Settings.Section.LookAndFeel.Title" = "Apariencia"; -"Scene.Settings.Section.LookAndFeel.UseSystem" = "Usar sistema"; -"Scene.Settings.Section.Notifications.Boosts" = "Adhirió a mi mensaje"; -"Scene.Settings.Section.Notifications.Favorites" = "Marcó como favorito mi mensaje"; -"Scene.Settings.Section.Notifications.Follows" = "Me sigue"; -"Scene.Settings.Section.Notifications.Mentions" = "Me mencionó"; -"Scene.Settings.Section.Notifications.Title" = "Notificaciones"; -"Scene.Settings.Section.Notifications.Trigger.Anyone" = "cualquiera"; -"Scene.Settings.Section.Notifications.Trigger.Follow" = "alguien a quien sigo"; -"Scene.Settings.Section.Notifications.Trigger.Follower" = "un seguidor"; -"Scene.Settings.Section.Notifications.Trigger.Noone" = "nadie"; -"Scene.Settings.Section.Notifications.Trigger.Title" = "Notificarme cuando"; -"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Deshabilitar avatares animados"; -"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Deshabilitar emojis animados"; -"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Abrir enlaces en Mastodon"; -"Scene.Settings.Section.Preference.Title" = "Configuración"; -"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "Modo negro oscuro real"; -"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Usar navegador web predeterminado para abrir enlaces"; -"Scene.Settings.Section.SpicyZone.Clear" = "Limpiar memoria caché multimedia"; -"Scene.Settings.Section.SpicyZone.Signout" = "Cerrar sesión"; -"Scene.Settings.Section.SpicyZone.Title" = "La zona picante"; -"Scene.Settings.Title" = "Configuración"; -"Scene.SuggestionAccount.FollowExplain" = "Cuando sigás a alguien, verás sus mensajes en tu línea temporal principal."; -"Scene.SuggestionAccount.Title" = "Encontrá cuentas para seguir"; -"Scene.Thread.BackTitle" = "Mensaje"; -"Scene.Thread.Title" = "Mensaje de %@"; -"Scene.Welcome.GetStarted" = "Comenzá"; -"Scene.Welcome.LogIn" = "Iniciar sesión"; -"Scene.Welcome.Slogan" = "La red social, -nuevamente en tu poder."; -"Scene.Wizard.AccessibilityHint" = "Tocá dos veces para descartar este asistente"; -"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Cambiá entre varias cuentas manteniendo presionado el botón del perfil."; -"Scene.Wizard.NewInMastodon" = "Novedad en Mastodon"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.stringsdict deleted file mode 100644 index 9d1fdadb6..000000000 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es-419.lproj/Localizable.stringsdict +++ /dev/null @@ -1,406 +0,0 @@ - - - - - a11y.plural.count.unread.notification - - NSStringLocalizedFormatKey - %#@notification_count_unread_notification@ - notification_count_unread_notification - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 notificación sin leer - other - %ld notificaciones sin leer - - - a11y.plural.count.input_limit_exceeds - - NSStringLocalizedFormatKey - El límite de entrada excede %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - a11y.plural.count.input_limit_remains - - NSStringLocalizedFormatKey - El límite de entrada permite %#@character_count@ caracteres - character_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 caracter - other - %ld caracteres - - - plural.count.metric_formatted.post - - NSStringLocalizedFormatKey - %@ %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - mensaje - other - mensajes - - - plural.count.post - - NSStringLocalizedFormatKey - %#@post_count@ - post_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mensaje - other - %ld mensajes - - - plural.count.favorite - - NSStringLocalizedFormatKey - %#@favorite_count@ - favorite_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 favorito - other - %ld favoritos - - - plural.count.reblog - - NSStringLocalizedFormatKey - %#@reblog_count@ - reblog_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 adhesión - other - %ld adhesiones - - - plural.count.reply - - NSStringLocalizedFormatKey - %#@reply_count@ - reply_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 respuesta - other - %ld respuestas - - - plural.count.vote - - NSStringLocalizedFormatKey - %#@vote_count@ - vote_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 voto - other - %ld votos - - - plural.count.voter - - NSStringLocalizedFormatKey - %#@voter_count@ - voter_count - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 votante - other - %ld votantes - - - plural.people_talking - - NSStringLocalizedFormatKey - %#@count_people_talking@ - count_people_talking - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 cuenta hablando - other - %ld cuentas hablando - - - plural.count.following - - NSStringLocalizedFormatKey - %#@count_following@ - count_following - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - siguiendo a 1 - other - siguiendo a %ld - - - plural.count.follower - - NSStringLocalizedFormatKey - %#@count_follower@ - count_follower - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 seguidor - other - %ld seguidores - - - date.year.left - - NSStringLocalizedFormatKey - %#@count_year_left@ - count_year_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 año restante - other - %ld años restantes - - - date.month.left - - NSStringLocalizedFormatKey - %#@count_month_left@ - count_month_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 mes restante - other - %ld meses restantes - - - date.day.left - - NSStringLocalizedFormatKey - %#@count_day_left@ - count_day_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 día restante - other - %ld días restantes - - - date.hour.left - - NSStringLocalizedFormatKey - %#@count_hour_left@ - count_hour_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 hora restante - other - %ld horas restantes - - - date.minute.left - - NSStringLocalizedFormatKey - %#@count_minute_left@ - count_minute_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 minuto restante - other - %ld minutos restantes - - - date.second.left - - NSStringLocalizedFormatKey - %#@count_second_left@ - count_second_left - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - 1 segundo restante - other - %ld segundos restantes - - - date.year.ago.abbr - - NSStringLocalizedFormatKey - %#@count_year_ago_abbr@ - count_year_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 año - other - hace %ld años - - - date.month.ago.abbr - - NSStringLocalizedFormatKey - %#@count_month_ago_abbr@ - count_month_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 mes - other - hace %ld meses - - - date.day.ago.abbr - - NSStringLocalizedFormatKey - %#@count_day_ago_abbr@ - count_day_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 día - other - hace %ld días - - - date.hour.ago.abbr - - NSStringLocalizedFormatKey - %#@count_hour_ago_abbr@ - count_hour_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 hora - other - hace %ld horas - - - date.minute.ago.abbr - - NSStringLocalizedFormatKey - %#@count_minute_ago_abbr@ - count_minute_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 minuto - other - hace %ld minutos - - - date.second.ago.abbr - - NSStringLocalizedFormatKey - %#@count_second_ago_abbr@ - count_second_ago_abbr - - NSStringFormatSpecTypeKey - NSStringPluralRuleType - NSStringFormatValueTypeKey - ld - one - hace 1 segundo - other - hace %ld segundos - - - - diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings index 48b14608a..e6193c45e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings @@ -201,6 +201,7 @@ subirse a Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Revisa tu bandeja de entrada."; "Scene.ConfirmEmail.Subtitle" = "Te acabamos de enviar un correo a %@, pulsa en el enlace para confirmar tu cuenta."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Una última cosa."; "Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -286,6 +287,7 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Register.Input.Password.Require" = "Tu contraseña debe contener como mínimo:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Este nombre de usuario ya está en uso."; "Scene.Register.Input.Username.Placeholder" = "nombre de usuario"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Háblanos de ti."; "Scene.Report.Content1" = "¿Hay alguna otra publicación que te gustaría añadir al reporte?"; "Scene.Report.Content2" = "¿Hay algo que los moderadores deberían saber acerca de este reporte?"; @@ -303,6 +305,7 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict index 8f3e94f6b..31cd9d237 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ publicaciones + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings similarity index 98% rename from MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings rename to MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings index 8f2055df9..72105dcd0 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings @@ -199,8 +199,8 @@ Mastodonera igo."; "Scene.ConfirmEmail.OpenEmailApp.Mail" = "Posta"; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Ireki eposta bezeroa"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Egiaztatu zure sarrerako ontzia."; -"Scene.ConfirmEmail.Subtitle" = "Eposta bat bidali dizugu %@ helbidera, -sakatu kontua berresteko esteka."; +"Scene.ConfirmEmail.Subtitle" = "Sakatu epostaz bidali dizugun loturan zure kontua egiaztatzeko."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Eta azkenik..."; "Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -286,6 +286,7 @@ sakatu kontua berresteko esteka."; "Scene.Register.Input.Password.Require" = "Zure pasahitzak izan behar ditu gutxienez:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Erabiltzaile-izen hau hartuta dago."; "Scene.Register.Input.Username.Placeholder" = "erabiltzaile-izena"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Hitz egin iezaguzu zuri buruz."; "Scene.Report.Content1" = "Salaketan beste bidalketarik gehitu nahi duzu?"; "Scene.Report.Content2" = "Moderatzaileek besterik jakin behar dute salaketa honi buruz?"; @@ -303,6 +304,7 @@ sakatu kontua berresteko esteka."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict similarity index 96% rename from MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.stringsdict rename to MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict index 871fb10bc..5de100844 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu-ES.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ bidalketa + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings index f5c60fcb7..6cd159a8e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings @@ -199,8 +199,8 @@ téléversé sur Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.Mail" = "Courriel"; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Ouvrir le client de messagerie"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Vérifier votre boîte aux lettres."; -"Scene.ConfirmEmail.Subtitle" = "Nous venons d’envoyer un courriel à %@, -tapotez le lien pour confirmer votre compte."; +"Scene.ConfirmEmail.Subtitle" = "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Une dernière chose."; "Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -286,6 +286,7 @@ tapotez le lien pour confirmer votre compte."; "Scene.Register.Input.Password.Require" = "Votre mot de passe doit être composé d’au moins :"; "Scene.Register.Input.Username.DuplicatePrompt" = "Ce nom d'utilisateur est déjà pris."; "Scene.Register.Input.Username.Placeholder" = "nom d'utilisateur"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Parlez-nous de vous."; "Scene.Report.Content1" = "Y a-t-il d’autres messages que vous aimeriez ajouter au signalement?"; "Scene.Report.Content2" = "Y a-t-il quelque chose que les modérateurs devraient savoir sur ce rapport ?"; @@ -303,6 +304,7 @@ tapotez le lien pour confirmer votre compte."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict index 5c2b14978..d251c82f3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ publications + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings similarity index 98% rename from MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings rename to MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings index a1576bb9e..b310e3ef5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings @@ -201,6 +201,7 @@ a luchdadh suas gu Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Thoir sùil air a’ bhogsa a-steach agad."; "Scene.ConfirmEmail.Subtitle" = "Tha sinn air post-d a chur gu %@, thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Aon rud eile."; "Scene.Discovery.Intro" = "Seo na postaichean fèillmhor ’nad cheàrnaidh de Mhastodon."; "Scene.Discovery.Tabs.Community" = "Coimhearsnachd"; @@ -220,7 +221,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.HomeTimeline.Title" = "Dachaigh"; "Scene.Notification.Keyobard.ShowEverything" = "Seall a h-uile càil"; "Scene.Notification.Keyobard.ShowMentions" = "Seall na h-iomraidhean"; -"Scene.Notification.NotificationDescription.FavoritedYourPost" = "– ’s iad air am post agad a chur ris na h-annsachdan aca"; +"Scene.Notification.NotificationDescription.FavoritedYourPost" = "– is annsa leotha am post agad"; "Scene.Notification.NotificationDescription.FollowedYou" = "– ’s iad ’gad leantainn a-nis"; "Scene.Notification.NotificationDescription.MentionedYou" = "– ’s iad air iomradh a thoirt ort"; "Scene.Notification.NotificationDescription.PollHasEnded" = "thàinig cunntas-bheachd gu crìoch"; @@ -286,6 +287,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Register.Input.Password.Require" = "Feumaidh am facal-faire agad co-dhiù:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Tha an t-ainm-cleachdaiche seo aig cuideigin eile."; "Scene.Register.Input.Username.Placeholder" = "ainm-cleachdaiche"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Innis dhuinn mu do dhèidhinn."; "Scene.Report.Content1" = "A bheil post sam bith eile ann a bu mhiann leat cur ris a’ ghearan?"; "Scene.Report.Content2" = "A bheil rud sam bith ann a bu mhiann leat innse dha na maoir mun ghearan seo?"; @@ -303,6 +305,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict similarity index 96% rename from MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.stringsdict rename to MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict index b149323eb..c7bc77310 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd-GB.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict @@ -82,6 +82,26 @@ post + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + two + %ld media + few + %ld media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings index 9aa918938..25c59d712 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings @@ -200,6 +200,7 @@ ser subido a Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Abrir cliente de email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Mira na caixa de correo."; "Scene.ConfirmEmail.Subtitle" = "Preme na ligazón que che enviamos ao email para verificar a conta."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "O último detalle."; "Scene.Discovery.Intro" = "Estas son as publicacións en voga no teu recuncho de Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunidade"; @@ -210,8 +211,8 @@ ser subido a Mastodon."; "Scene.Favorite.Title" = "Publicacións Favoritas"; "Scene.Follower.Footer" = "Non se mostran seguidoras desde outros servidores."; "Scene.Following.Footer" = "Non se mostran os seguimentos desde outros servidores."; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Toca para ir arriba e toca outra vez para volver ao mesmo lugar"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Botón do logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Novas publicacións"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Sen conexión"; "Scene.HomeTimeline.NavigationBarState.Published" = "Publicado!"; @@ -285,6 +286,7 @@ ser subido a Mastodon."; "Scene.Register.Input.Password.Require" = "O contrasinal debe ter polo menos:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Este nome de usuaria xa está en uso."; "Scene.Register.Input.Username.Placeholder" = "identificador"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Imos crear a túa conta en %@"; "Scene.Report.Content1" = "Hai outras publicacións que desexes engadir á denuncia?"; "Scene.Report.Content2" = "Hai algo que a moderación deba saber acerca desta denuncia?"; @@ -294,37 +296,38 @@ ser subido a Mastodon."; "Scene.Report.SkipToSend" = "Enviar sen comentarios"; "Scene.Report.Step1" = "Paso 1 de 2"; "Scene.Report.Step2" = "Paso 2 de 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepFinal.BlockUser" = "Bloquear a %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Non queres ver esto?"; +"Scene.Report.StepFinal.MuteUser" = "Acalar a %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "Non poderá seguirte nin ver o que publicas, pero pode ver se foi bloqueada."; +"Scene.Report.StepFinal.Unfollow" = "Deixar de seguir"; +"Scene.Report.StepFinal.UnfollowUser" = "Deixar de seguir a %@"; +"Scene.Report.StepFinal.Unfollowed" = "Deixaches de seguir"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Cando ves en Mastodon algo que non che gusta podes retirar a esa persoa da túa experiencia como usuaria."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Mentras revisamos esto, podes tomar accións contra %@"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Non verás as súas publicacións ou repeticións na túa cronoloxía. Non saberá que foi acalada."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Hai algo máis que creas debamos saber?"; +"Scene.Report.StepFour.Step4Of4" = "Paso 4 de 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Non me gusta"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "Non é algo que queiras ver"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Viola as regras do servidor"; +"Scene.Report.StepOne.ItsSomethingElse" = "É outra cousa"; +"Scene.Report.StepOne.ItsSpam" = "É spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Ligazóns perigosas, relacións falsas, ou respostas repetitivas"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Elixe a mellor coincidencia"; +"Scene.Report.StepOne.Step1Of4" = "Paso 1 de 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "O problema non cae dentro de outras categorías"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Cal é o problema con esta conta?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Cal é o problema con esta publicación?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Cal é o problema con %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Décheste conta de que quebra unhas normas en concreto"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Hai algunha publicación que apoie esta denuncia?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Elixe todo o que sexa de aplicación"; +"Scene.Report.StepThree.Step3Of4" = "Paso 3 de 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Non me gusta"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Elixe todo o que sexa de aplicación"; +"Scene.Report.StepTwo.Step2Of4" = "Paso 2 de 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Que regras foron incumpridas?"; "Scene.Report.TextPlaceholder" = "Escribe ou pega comentarios adicionais"; "Scene.Report.Title" = "Denunciar a %@"; "Scene.Report.TitleReport" = "Denunciar"; @@ -365,7 +368,7 @@ ser subido a Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Buscando servidores dispoñibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sen resultados"; "Scene.ServerPicker.Input.Placeholder" = "Buscar comunidades"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Busca comunidades ou escribe URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "USUARIAS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict index a67c938ab..abd72c1b9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ publicacións + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 mutlimedia + other + %ld multimedias + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index 38b0ed65d..23e3a0778 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -200,6 +200,7 @@ caricato su Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Apri client Email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Controlla la tua posta in arrivo."; "Scene.ConfirmEmail.Subtitle" = "Tocca il link che ti abbiamo inviato per verificare il tuo account."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Un'ultima cosa."; "Scene.Discovery.Intro" = "Questi sono i post che stanno guadagnando popolarità nel tuo angolo di Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunità"; @@ -285,6 +286,7 @@ caricato su Mastodon."; "Scene.Register.Input.Password.Require" = "La tua password ha bisogno di almeno:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Questo nome utente è già stato preso."; "Scene.Register.Input.Username.Placeholder" = "nome utente"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Facciamo in modo che sia configurato il %@"; "Scene.Report.Content1" = "Ci sono altri post che vorresti aggiungere alla segnalazione?"; "Scene.Report.Content2" = "C'è qualcosa che i moderatori dovrebbero sapere su questa segnalazione?"; @@ -302,6 +304,7 @@ caricato su Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Smetti di seguire %@"; "Scene.Report.StepFinal.Unfollowed" = "Non seguito"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Quando vedi qualcosa che non ti piace su Mastodon, puoi rimuovere la persona dalla tua esperienza."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Mentre controlliamo, puoi agire contro %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Non vedrai i loro post o le condivisioni nel tuo feed. Non sapranno di essere stati silenziati."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "C'è altro che dovremmo sapere?"; "Scene.Report.StepFour.Step4Of4" = "Fase 4 di 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict index 710980608..423ca4104 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ post + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 contenuto multimediale + other + %ld contenuti multimediali + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings index d746c1962..be6690aba 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings @@ -195,6 +195,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "メールアプリを開く"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "メールを確認"; "Scene.ConfirmEmail.Subtitle" = "先程 %@ にメールを送信しました。リンクをタップしてアカウントを確認してください。"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "さいごにもうひとつ。"; "Scene.Discovery.Intro" = "あなたのMastodonサーバーで注目を集めている投稿がここに表示されます。"; "Scene.Discovery.Tabs.Community" = "コミュニティ"; @@ -280,6 +281,7 @@ "Scene.Register.Input.Password.Require" = "Your password needs at least:"; "Scene.Register.Input.Username.DuplicatePrompt" = "このユーザー名は使用されています"; "Scene.Register.Input.Username.Placeholder" = "ユーザー名"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "あなたのことを教えてください"; "Scene.Report.Content1" = "他に通報したい投稿はありますか?"; "Scene.Report.Content2" = "この通報についてモデレーターに伝達しておきたい事項はありますか?"; @@ -297,6 +299,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict index 95c35172e..87e4f8a5e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict @@ -58,6 +58,20 @@ 投稿 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings index bbc9856c3..d783baee5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings @@ -200,6 +200,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Ldi amsaɣ n yimayl"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Sefqed Tanaka-inek."; "Scene.ConfirmEmail.Subtitle" = "Sit ɣef useɣwen i ak-n-uznen i wakken ad tesneqdeḍ amiḍan-ik."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Taɣawsa taneggarut."; "Scene.Discovery.Intro" = "Tigi d tisuffaɣ i d-ijebbden s waṭas deg tama-inek•inem n Mastodon."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -285,6 +286,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Register.Input.Password.Require" = "Awal-ik uffir yesra ma drus:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Isem-ayi n umseqdac yettwaṭṭef yakan."; "Scene.Register.Input.Username.Placeholder" = "isem n useqdac"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Aha ad nebdu asbadu ɣef %@"; "Scene.Report.Content1" = "Tebɣiḍ ad ternuḍ tisuffaɣ-nniḍen ɣer uneqqis?"; "Scene.Report.Content2" = "Yella wayen i ilaqen ad teẓren yimḍebbren ɣef uneqqis-a?"; @@ -302,6 +304,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict index 4ccb271fa..0fde8d68f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ tisuffaɣ + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings index 6f46f990d..7732c500b 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings @@ -201,6 +201,7 @@ Profîla te ji wan ra wiha xuya dike."; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Nameyên xwe yên wergirtî kontrol bike."; "Scene.ConfirmEmail.Subtitle" = "Me tenê e-nameyek ji %@ re şand, girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Tiştekî dawî."; "Scene.Discovery.Intro" = "Ev şandiyên ku di quncika Mastodon balê dikişîne."; "Scene.Discovery.Tabs.Community" = "Civak"; @@ -286,6 +287,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Register.Input.Password.Require" = "Pêdiviya pêborîna te ya herî kêm:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Navê vê bikarhêner tê girtin."; "Scene.Register.Input.Username.Placeholder" = "navê bikarhêner"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Ji me re hinekî qala xwe bike %@"; "Scene.Report.Content1" = "Şandiyên din hene ku tu dixwazî tevlî ragihandinê bikî?"; "Scene.Report.Content2" = "Derbarê vê ragihandinê de tiştek heye ku divê çavdêr bizanin?"; @@ -295,25 +297,26 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Report.SkipToSend" = "Bêyî şirove bişîne"; "Scene.Report.Step1" = "Gav 1 ji 2"; "Scene.Report.Step2" = "Gav 2 ji 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.BlockUser" = "%@ asteng bike"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Tu naxwazî vê bibînî?"; +"Scene.Report.StepFinal.MuteUser" = "%@ bêdeng bike"; "Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.Unfollow" = "Neşopîne"; +"Scene.Report.StepFinal.UnfollowUser" = "%@ neşopîne"; +"Scene.Report.StepFinal.Unfollowed" = "Ji şopê hate derketin"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepFour.Step4Of4" = "Gav 4 ji 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Ez jê hez nakim"; "Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; "Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; "Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.ItsSpam" = "Ew spam e"; "Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; "Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.Step1Of4" = "Gav 1 ji 4"; "Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; "Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; "Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; @@ -321,10 +324,10 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; "Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; "Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepThree.Step3Of4" = "Gav 3 ji 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Tenê ez jê hez nakim"; "Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.Step2Of4" = "Gav 2 ji 4"; "Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; "Scene.Report.TextPlaceholder" = "Şiroveyên daxwazkirê binivîsine an jî pê ve bike"; "Scene.Report.Title" = "%@ ragihîne"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict index 0fa7d8214..7b2e40773 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ şandî + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 medya + other + %ld medya + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings index f0b5eb42d..b9770969b 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings @@ -195,6 +195,7 @@ Uw profiel ziet er zo uit voor hen."; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Ga naar uw inbox."; "Scene.ConfirmEmail.Subtitle" = "We hebben een e-mail gestuurd naar %@, klik op de link om uw account te bevestigen."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Nog één ding."; "Scene.Discovery.Intro" = "Dit zijn de berichten die populair zijn in jouw Mastodon-kringen."; "Scene.Discovery.Tabs.Community" = "Community"; @@ -280,6 +281,7 @@ klik op de link om uw account te bevestigen."; "Scene.Register.Input.Password.Require" = "Je wachtwoord moet ten minste:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Deze gebruikersnaam is al in gebruik."; "Scene.Register.Input.Username.Placeholder" = "gebruikersnaam"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Vertel ons over uzelf."; "Scene.Report.Content1" = "Zijn er nog meer berichten die u aan het rapport wilt toevoegen?"; "Scene.Report.Content2" = "Is er iets anders over dit rapport dat de moderators zouden moeten weten?"; @@ -297,6 +299,7 @@ klik op de link om uw account te bevestigen."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict index 5ae33cbef..e6f9353de 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ berichten + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings index ba32a979e..4d742dc6e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings @@ -211,6 +211,7 @@ %@. Нажмите на ссылку в нём, чтобы подтвердить свою учётную запись."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "И ещё кое-что."; "Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; "Scene.Discovery.Tabs.Community" = "Сообщество"; @@ -296,6 +297,7 @@ "Scene.Register.Input.Password.Require" = "Your password needs at least:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Это имя пользователя занято."; "Scene.Register.Input.Username.Placeholder" = "имя пользователя"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Расскажите нам о себе."; "Scene.Report.Content1" = "Есть ли другие сообщения, которые вы хотите добавить в отчёт?"; "Scene.Report.Content2" = "Есть ли что-то, что модераторы должны знать об этом сообщении?"; @@ -313,6 +315,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Пока мы рассматриваем его, вот действия, которые вы можете предпринять лично против %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict index 626a10d75..026815a8e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict @@ -82,6 +82,26 @@ поста + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %ld медиафайл + few + %ld медиафайла + many + %ld медиафайлов + other + %ld медиафайла + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings new file mode 100644 index 000000000..3d801f1a6 --- /dev/null +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings @@ -0,0 +1,429 @@ +"Common.Alerts.BlockDomain.BlockEntireDomain" = "Blockera domän"; +"Common.Alerts.BlockDomain.Title" = "Är du verkligen, verkligen säker på att du vill blockera hela %@? I de flesta fall är några riktade blockeringar eller nedtystade konton tillräckligt och att föredra. Du kommer inte se innehåll från den domänen och dina följare från den domänen kommer att tas bort."; +"Common.Alerts.CleanCache.Message" = "Rensade %@ cache."; +"Common.Alerts.CleanCache.Title" = "Rensa cache"; +"Common.Alerts.Common.PleaseTryAgain" = "Var god försök igen."; +"Common.Alerts.Common.PleaseTryAgainLater" = "Var god försök igen senare."; +"Common.Alerts.DeletePost.Message" = "Är du säker på att du vill radera detta inlägg?"; +"Common.Alerts.DeletePost.Title" = "Radera inlägg"; +"Common.Alerts.DiscardPostContent.Message" = "Bekräfta för att slänga inläggsutkast."; +"Common.Alerts.DiscardPostContent.Title" = "Släng utkast"; +"Common.Alerts.EditProfileFailure.Message" = "Kan inte redigera profil. Var god försök igen."; +"Common.Alerts.EditProfileFailure.Title" = "Profilredigering misslyckades"; +"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "Det går inte att bifoga mer än en video."; +"Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "Det går inte att bifoga en video till ett inlägg som redan innehåller bilder."; +"Common.Alerts.PublishPostFailure.Message" = "Det gick inte att publicera inlägget. +Kontrollera din internetanslutning."; +"Common.Alerts.PublishPostFailure.Title" = "Publicering misslyckades"; +"Common.Alerts.SavePhotoFailure.Message" = "Aktivera åtkomst till Bilder för att spara bilden."; +"Common.Alerts.SavePhotoFailure.Title" = "Spara foto misslyckades"; +"Common.Alerts.ServerError.Title" = "Serverfel"; +"Common.Alerts.SignOut.Confirm" = "Logga ut"; +"Common.Alerts.SignOut.Message" = "Är du säker på att du vill logga ut?"; +"Common.Alerts.SignOut.Title" = "Logga ut"; +"Common.Alerts.SignUpFailure.Title" = "Registrering misslyckades"; +"Common.Alerts.VoteFailure.PollEnded" = "Omröstningen har avslutats"; +"Common.Alerts.VoteFailure.Title" = "Röstning misslyckades"; +"Common.Controls.Actions.Add" = "Lägg till"; +"Common.Controls.Actions.Back" = "Tillbaka"; +"Common.Controls.Actions.BlockDomain" = "Blockera %@"; +"Common.Controls.Actions.Cancel" = "Avbryt"; +"Common.Controls.Actions.Compose" = "Skriv"; +"Common.Controls.Actions.Confirm" = "Bekräfta"; +"Common.Controls.Actions.Continue" = "Fortsätt"; +"Common.Controls.Actions.CopyPhoto" = "Kopiera foto"; +"Common.Controls.Actions.Delete" = "Radera"; +"Common.Controls.Actions.Discard" = "Släng"; +"Common.Controls.Actions.Done" = "Klar"; +"Common.Controls.Actions.Edit" = "Redigera"; +"Common.Controls.Actions.FindPeople" = "Hitta personer att följa"; +"Common.Controls.Actions.ManuallySearch" = "Sök manuellt istället"; +"Common.Controls.Actions.Next" = "Nästa"; +"Common.Controls.Actions.Ok" = "OK"; +"Common.Controls.Actions.Open" = "Öppna"; +"Common.Controls.Actions.OpenInBrowser" = "Öppna i webbläsare"; +"Common.Controls.Actions.OpenInSafari" = "Öppna i Safari"; +"Common.Controls.Actions.Preview" = "Förhandsvisa"; +"Common.Controls.Actions.Previous" = "Föregående"; +"Common.Controls.Actions.Remove" = "Radera"; +"Common.Controls.Actions.Reply" = "Svara"; +"Common.Controls.Actions.ReportUser" = "Rapportera %@"; +"Common.Controls.Actions.Save" = "Spara"; +"Common.Controls.Actions.SavePhoto" = "Spara foto"; +"Common.Controls.Actions.SeeMore" = "Visa mer"; +"Common.Controls.Actions.Settings" = "Inställningar"; +"Common.Controls.Actions.Share" = "Dela"; +"Common.Controls.Actions.SharePost" = "Dela inlägg"; +"Common.Controls.Actions.ShareUser" = "Dela %@"; +"Common.Controls.Actions.SignIn" = "Logga in"; +"Common.Controls.Actions.SignUp" = "Registrera dig"; +"Common.Controls.Actions.Skip" = "Hoppa över"; +"Common.Controls.Actions.TakePhoto" = "Ta foto"; +"Common.Controls.Actions.TryAgain" = "Försök igen"; +"Common.Controls.Actions.UnblockDomain" = "Avblockera %@"; +"Common.Controls.Friendship.Block" = "Blockera"; +"Common.Controls.Friendship.BlockDomain" = "Blockera %@"; +"Common.Controls.Friendship.BlockUser" = "Blockera %@"; +"Common.Controls.Friendship.Blocked" = "Blockerad"; +"Common.Controls.Friendship.EditInfo" = "Redigera info"; +"Common.Controls.Friendship.Follow" = "Följ"; +"Common.Controls.Friendship.Following" = "Följer"; +"Common.Controls.Friendship.Mute" = "Tysta"; +"Common.Controls.Friendship.MuteUser" = "Tysta %@"; +"Common.Controls.Friendship.Muted" = "Tystad"; +"Common.Controls.Friendship.Pending" = "Väntande"; +"Common.Controls.Friendship.Request" = "Följ"; +"Common.Controls.Friendship.Unblock" = "Avblockera"; +"Common.Controls.Friendship.UnblockUser" = "Avblockera %@"; +"Common.Controls.Friendship.Unmute" = "Avtysta"; +"Common.Controls.Friendship.UnmuteUser" = "Avtysta %@"; +"Common.Controls.Keyboard.Common.ComposeNewPost" = "Skriv nytt inlägg"; +"Common.Controls.Keyboard.Common.OpenSettings" = "Öppna inställningar"; +"Common.Controls.Keyboard.Common.ShowFavorites" = "Visa favoriter"; +"Common.Controls.Keyboard.Common.SwitchToTab" = "Växla till %@"; +"Common.Controls.Keyboard.SegmentedControl.NextSection" = "Nästa avsnitt"; +"Common.Controls.Keyboard.SegmentedControl.PreviousSection" = "Föregående avsnitt"; +"Common.Controls.Keyboard.Timeline.NextStatus" = "Nästa inlägg"; +"Common.Controls.Keyboard.Timeline.OpenAuthorProfile" = "Öppna författarens profil"; +"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "Öppna ompostarens profil"; +"Common.Controls.Keyboard.Timeline.OpenStatus" = "Öppna inlägg"; +"Common.Controls.Keyboard.Timeline.PreviewImage" = "Förhandsgranska bild"; +"Common.Controls.Keyboard.Timeline.PreviousStatus" = "Föregående inlägg"; +"Common.Controls.Keyboard.Timeline.ReplyStatus" = "Svara på inlägg"; +"Common.Controls.Keyboard.Timeline.ToggleContentWarning" = "Växla innehållsvarning"; +"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "Växla favorit på inlägg"; +"Common.Controls.Keyboard.Timeline.ToggleReblog" = "Växla ompostning på inlägg"; +"Common.Controls.Status.Actions.Favorite" = "Favorit"; +"Common.Controls.Status.Actions.Hide" = "Dölj"; +"Common.Controls.Status.Actions.Menu" = "Meny"; +"Common.Controls.Status.Actions.Reblog" = "Omposta"; +"Common.Controls.Status.Actions.Reply" = "Svara"; +"Common.Controls.Status.Actions.ShowGif" = "Visa GIF"; +"Common.Controls.Status.Actions.ShowImage" = "Visa bild"; +"Common.Controls.Status.Actions.ShowVideoPlayer" = "Visa videospelare"; +"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tryck och håll ned för att visa menyn"; +"Common.Controls.Status.Actions.Unfavorite" = "Ta bort favorit"; +"Common.Controls.Status.Actions.Unreblog" = "Ångra ompostning"; +"Common.Controls.Status.ContentWarning" = "Innehållsvarning"; +"Common.Controls.Status.MediaContentWarning" = "Tryck var som helst för att visa"; +"Common.Controls.Status.Poll.Closed" = "Stängd"; +"Common.Controls.Status.Poll.Vote" = "Rösta"; +"Common.Controls.Status.SensitiveContent" = "Känsligt innehåll"; +"Common.Controls.Status.ShowPost" = "Visa inlägg"; +"Common.Controls.Status.ShowUserProfile" = "Visa användarprofil"; +"Common.Controls.Status.Tag.Email" = "E-post"; +"Common.Controls.Status.Tag.Emoji" = "Emoji"; +"Common.Controls.Status.Tag.Hashtag" = "Hashtagg"; +"Common.Controls.Status.Tag.Link" = "Länk"; +"Common.Controls.Status.Tag.Mention" = "Omnämn"; +"Common.Controls.Status.Tag.Url" = "URL"; +"Common.Controls.Status.TapToReveal" = "Tryck för att visa"; +"Common.Controls.Status.UserReblogged" = "%@ ompostade"; +"Common.Controls.Status.UserRepliedTo" = "Svarade på %@"; +"Common.Controls.Status.Visibility.Direct" = "Endast omnämnda användare kan se detta inlägg."; +"Common.Controls.Status.Visibility.Private" = "Endast deras följare kan se detta inlägg."; +"Common.Controls.Status.Visibility.PrivateFromMe" = "Bara mina följare kan se det här inlägget."; +"Common.Controls.Status.Visibility.Unlisted" = "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen."; +"Common.Controls.Tabs.Home" = "Hem"; +"Common.Controls.Tabs.Notification" = "Notis"; +"Common.Controls.Tabs.Profile" = "Profil"; +"Common.Controls.Tabs.Search" = "Sök"; +"Common.Controls.Timeline.Filtered" = "Filtrerat"; +"Common.Controls.Timeline.Header.BlockedWarning" = "Du kan inte visa den här användarens profil +förrän de avblockerar dig."; +"Common.Controls.Timeline.Header.BlockingWarning" = "Du kan inte visa användarens profil +förrän du avblockerar dem. +Din profil ser ut så här för dem."; +"Common.Controls.Timeline.Header.NoStatusFound" = "Inga inlägg hittades"; +"Common.Controls.Timeline.Header.SuspendedWarning" = "Denna användare har blivit avstängd."; +"Common.Controls.Timeline.Header.UserBlockedWarning" = "Du kan inte visa %@s profil +förrän de avblockerar dig."; +"Common.Controls.Timeline.Header.UserBlockingWarning" = "Du kan inte visa %@s profil +förrän du avblockerar dem. +Din profil ser ut så här för dem."; +"Common.Controls.Timeline.Header.UserSuspendedWarning" = "%@s konto har blivit avstängt."; +"Common.Controls.Timeline.Loader.LoadMissingPosts" = "Ladda saknade inlägg"; +"Common.Controls.Timeline.Loader.LoadingMissingPosts" = "Laddar saknade inlägg..."; +"Common.Controls.Timeline.Loader.ShowMoreReplies" = "Visa fler svar"; +"Common.Controls.Timeline.Timestamp.Now" = "Nu"; +"Scene.AccountList.AddAccount" = "Lägg till konto"; +"Scene.AccountList.DismissAccountSwitcher" = "Stäng kontoväxlare"; +"Scene.AccountList.TabBarHint" = "Nuvarande vald profil: %@. Dubbeltryck och håll för att visa kontoväxlare"; +"Scene.Compose.Accessibility.AppendAttachment" = "Lägg till bilaga"; +"Scene.Compose.Accessibility.AppendPoll" = "Lägg till omröstning"; +"Scene.Compose.Accessibility.CustomEmojiPicker" = "Anpassad emoji-väljare"; +"Scene.Compose.Accessibility.DisableContentWarning" = "Inaktivera innehållsvarning"; +"Scene.Compose.Accessibility.EnableContentWarning" = "Aktivera innehållsvarning"; +"Scene.Compose.Accessibility.PostVisibilityMenu" = "Inläggssynlighetsmeny"; +"Scene.Compose.Accessibility.RemovePoll" = "Ta bort omröstning"; +"Scene.Compose.Attachment.AttachmentBroken" = "Denna %@ är trasig och kan inte +laddas upp till Mastodon."; +"Scene.Compose.Attachment.DescriptionPhoto" = "Beskriv fotot för synskadade..."; +"Scene.Compose.Attachment.DescriptionVideo" = "Beskriv videon för de synskadade..."; +"Scene.Compose.Attachment.Photo" = "foto"; +"Scene.Compose.Attachment.Video" = "video"; +"Scene.Compose.AutoComplete.SpaceToAdd" = "Mellanslag för att lägga till"; +"Scene.Compose.ComposeAction" = "Publicera"; +"Scene.Compose.ContentInputPlaceholder" = "Skriv eller klistra in vad du har på hjärtat"; +"Scene.Compose.ContentWarning.Placeholder" = "Skriv en noggrann varning här..."; +"Scene.Compose.Keyboard.AppendAttachmentEntry" = "Lägg till bilaga - %@"; +"Scene.Compose.Keyboard.DiscardPost" = "Släng inlägget"; +"Scene.Compose.Keyboard.PublishPost" = "Publicera inlägget"; +"Scene.Compose.Keyboard.SelectVisibilityEntry" = "Välj synlighet - %@"; +"Scene.Compose.Keyboard.ToggleContentWarning" = "Växla innehållsvarning"; +"Scene.Compose.Keyboard.TogglePoll" = "Växla omröstning"; +"Scene.Compose.MediaSelection.Browse" = "Bläddra"; +"Scene.Compose.MediaSelection.Camera" = "Ta foto"; +"Scene.Compose.MediaSelection.PhotoLibrary" = "Fotobibliotek"; +"Scene.Compose.Poll.DurationTime" = "Längd: %@"; +"Scene.Compose.Poll.OneDay" = "1 dag"; +"Scene.Compose.Poll.OneHour" = "1 timme"; +"Scene.Compose.Poll.OptionNumber" = "Alternativ %ld"; +"Scene.Compose.Poll.SevenDays" = "7 dagar"; +"Scene.Compose.Poll.SixHours" = "6 timmar"; +"Scene.Compose.Poll.ThirtyMinutes" = "30 minuter"; +"Scene.Compose.Poll.ThreeDays" = "3 dagar"; +"Scene.Compose.ReplyingToUser" = "svarar %@"; +"Scene.Compose.Title.NewPost" = "Nytt inlägg"; +"Scene.Compose.Title.NewReply" = "Nytt svar"; +"Scene.Compose.Visibility.Direct" = "Bara personer jag nämner"; +"Scene.Compose.Visibility.Private" = "Endast följare"; +"Scene.Compose.Visibility.Public" = "Offentlig"; +"Scene.Compose.Visibility.Unlisted" = "Olistad"; +"Scene.ConfirmEmail.Button.OpenEmailApp" = "Öppna e-postappen"; +"Scene.ConfirmEmail.Button.Resend" = "Skicka igen"; +"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Kontrollera om din e-postadress är korrekt samt din skräppostmapp om du inte har gjort det."; +"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Skicka e-postmeddelande igen"; +"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Kolla din e-post"; +"Scene.ConfirmEmail.OpenEmailApp.Description" = "Vi har precis skickat ett e-postmeddelande till dig. Kontrollera din skräpmapp om du inte har gjort det."; +"Scene.ConfirmEmail.OpenEmailApp.Mail" = "E-post"; +"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Öppna e-postklient"; +"Scene.ConfirmEmail.OpenEmailApp.Title" = "Kolla din inkorg."; +"Scene.ConfirmEmail.Subtitle" = "Tryck på länken vi e-postade till dig för att verifiera ditt konto."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.Title" = "En sista sak."; +"Scene.Discovery.Intro" = "Detta är de inlägg som engagerar i ditt hörn av Mastodon."; +"Scene.Discovery.Tabs.Community" = "Server"; +"Scene.Discovery.Tabs.ForYou" = "För dig"; +"Scene.Discovery.Tabs.Hashtags" = "Hashtaggar"; +"Scene.Discovery.Tabs.News" = "Nyheter"; +"Scene.Discovery.Tabs.Posts" = "Inlägg"; +"Scene.Favorite.Title" = "Dina favoriter"; +"Scene.Follower.Footer" = "Följare från andra servrar visas inte."; +"Scene.Following.Footer" = "Följda på andra servrar visas inte."; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tryck för att bläddra till toppen och tryck igen för föregående plats"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo-knapp"; +"Scene.HomeTimeline.NavigationBarState.NewPosts" = "Nya inlägg"; +"Scene.HomeTimeline.NavigationBarState.Offline" = "Offline"; +"Scene.HomeTimeline.NavigationBarState.Published" = "Publicerat!"; +"Scene.HomeTimeline.NavigationBarState.Publishing" = "Publicerar inlägget..."; +"Scene.HomeTimeline.Title" = "Hem"; +"Scene.Notification.Keyobard.ShowEverything" = "Visa allt"; +"Scene.Notification.Keyobard.ShowMentions" = "Visa omnämningar"; +"Scene.Notification.NotificationDescription.FavoritedYourPost" = "favoriserade ditt inlägg"; +"Scene.Notification.NotificationDescription.FollowedYou" = "följde dig"; +"Scene.Notification.NotificationDescription.MentionedYou" = "nämnde dig"; +"Scene.Notification.NotificationDescription.PollHasEnded" = "omröstningen har avslutats"; +"Scene.Notification.NotificationDescription.RebloggedYourPost" = "ompostade ditt inlägg"; +"Scene.Notification.NotificationDescription.RequestToFollowYou" = "begär att följa dig"; +"Scene.Notification.Title.Everything" = "Allting"; +"Scene.Notification.Title.Mentions" = "Omnämningar"; +"Scene.Preview.Keyboard.ClosePreview" = "Stäng förhandsvisning"; +"Scene.Preview.Keyboard.ShowNext" = "Visa nästa"; +"Scene.Preview.Keyboard.ShowPrevious" = "Visa föregående"; +"Scene.Profile.Accessibility.DoubleTapToOpenTheList" = "Dubbeltryck för att öppna listan"; +"Scene.Profile.Accessibility.EditAvatarImage" = "Redigera profilbild"; +"Scene.Profile.Accessibility.ShowAvatarImage" = "Visa profilbild"; +"Scene.Profile.Accessibility.ShowBannerImage" = "Visa banner"; +"Scene.Profile.Dashboard.Followers" = "följare"; +"Scene.Profile.Dashboard.Following" = "följer"; +"Scene.Profile.Dashboard.Posts" = "inlägg"; +"Scene.Profile.Fields.AddRow" = "Lägg till rad"; +"Scene.Profile.Fields.Placeholder.Content" = "Innehåll"; +"Scene.Profile.Fields.Placeholder.Label" = "Etikett"; +"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Message" = "Bekräfta för att blockera %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Title" = "Blockera konto"; +"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Message" = "Bekräfta för att tysta %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Title" = "Tysta konto"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Message" = "Bekräfta för att avblockera %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Title" = "Avblockera konto"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Message" = "Bekräfta för att avtysta %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Title" = "Avtysta konto"; +"Scene.Profile.SegmentedControl.About" = "Om"; +"Scene.Profile.SegmentedControl.Media" = "Media"; +"Scene.Profile.SegmentedControl.Posts" = "Inlägg"; +"Scene.Profile.SegmentedControl.PostsAndReplies" = "Inlägg och svar"; +"Scene.Profile.SegmentedControl.Replies" = "Svar"; +"Scene.Register.Error.Item.Agreement" = "Avtal"; +"Scene.Register.Error.Item.Email" = "E-post"; +"Scene.Register.Error.Item.Locale" = "Språk"; +"Scene.Register.Error.Item.Password" = "Lösenord"; +"Scene.Register.Error.Item.Reason" = "Anledning"; +"Scene.Register.Error.Item.Username" = "Användarnamn"; +"Scene.Register.Error.Reason.Accepted" = "%@ måste godkännas"; +"Scene.Register.Error.Reason.Blank" = "%@ krävs"; +"Scene.Register.Error.Reason.Blocked" = "%@ innehåller en icke tillåten e-postleverantör"; +"Scene.Register.Error.Reason.Inclusion" = "%@ är inte ett värde som stöds"; +"Scene.Register.Error.Reason.Invalid" = "%@ är ogiltig"; +"Scene.Register.Error.Reason.Reserved" = "%@ är ett reserverat nyckelord"; +"Scene.Register.Error.Reason.Taken" = "%@ används redan"; +"Scene.Register.Error.Reason.TooLong" = "%@ är för långt"; +"Scene.Register.Error.Reason.TooShort" = "%@ är för kort"; +"Scene.Register.Error.Reason.Unreachable" = "%@ verkar inte existera"; +"Scene.Register.Error.Special.EmailInvalid" = "Detta är inte en giltig e-postadress"; +"Scene.Register.Error.Special.PasswordTooShort" = "Lösenordet är för kort (det måste vara minst 8 tecken)"; +"Scene.Register.Error.Special.UsernameInvalid" = "Användarnamnet kan bara innehålla alfanumeriska tecken och understreck"; +"Scene.Register.Error.Special.UsernameTooLong" = "Användarnamnet är för långt (kan inte vara längre än 30 tecken)"; +"Scene.Register.Input.Avatar.Delete" = "Radera"; +"Scene.Register.Input.DisplayName.Placeholder" = "visningsnamn"; +"Scene.Register.Input.Email.Placeholder" = "e-post"; +"Scene.Register.Input.Invite.RegistrationUserInviteRequest" = "Varför vill du gå med?"; +"Scene.Register.Input.Password.Accessibility.Checked" = "markerad"; +"Scene.Register.Input.Password.Accessibility.Unchecked" = "avmarkerad"; +"Scene.Register.Input.Password.CharacterLimit" = "8 tecken"; +"Scene.Register.Input.Password.Hint" = "Ditt lösenord måste bestå av minst 8 tecken"; +"Scene.Register.Input.Password.Placeholder" = "lösenord"; +"Scene.Register.Input.Password.Require" = "Ditt lösenord behöver minst:"; +"Scene.Register.Input.Username.DuplicatePrompt" = "Det här användarnamnet är redan taget."; +"Scene.Register.Input.Username.Placeholder" = "användarnamn"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.Title" = "Låt oss få igång dig på %@"; +"Scene.Report.Content1" = "Finns det några andra inlägg du vill lägga till i rapporten?"; +"Scene.Report.Content2" = "Finns det något som moderatorerna borde känna till om denna rapport?"; +"Scene.Report.ReportSentTitle" = "Tack för din rapport, vi ska titta på det."; +"Scene.Report.Reported" = "RAPPORTERAD"; +"Scene.Report.Send" = "Skicka rapport"; +"Scene.Report.SkipToSend" = "Skicka utan kommentar"; +"Scene.Report.Step1" = "Steg 1 av 2"; +"Scene.Report.Step2" = "Steg 2 av 2"; +"Scene.Report.StepFinal.BlockUser" = "Blockera %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Vill du inte se det här?"; +"Scene.Report.StepFinal.MuteUser" = "Tysta %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats."; +"Scene.Report.StepFinal.Unfollow" = "Avfölj"; +"Scene.Report.StepFinal.UnfollowUser" = "Avfölj %@"; +"Scene.Report.StepFinal.Unfollowed" = "Slutade följa"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "När du ser något som du inte gillar på Mastodon kan du ta bort personen från din upplevelse."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Finns det något annat vi borde veta?"; +"Scene.Report.StepFour.Step4Of4" = "Steg 4 av 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Jag tycker inte om det"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "Det är inget som du vill se"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Det bryter mot serverns regler"; +"Scene.Report.StepOne.ItsSomethingElse" = "Det är något annat"; +"Scene.Report.StepOne.ItsSpam" = "Det är skräppost"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Skadliga länkar, bedrägligt beteende eller repetitiva svar"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Välj den bästa träffen"; +"Scene.Report.StepOne.Step1Of4" = "Steg 1 av 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Frågan passar inte in i andra kategorier"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Vad är fel med det här kontot?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Vad är fel med det här inlägget?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Vad är fel med %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Du är medveten om att det bryter mot specifika regler"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Finns det några inlägg som stöder denna rapport?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Välj allt som stämmer"; +"Scene.Report.StepThree.Step3Of4" = "Steg 3 av 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Jag tycker bara inte om det"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Välj allt som stämmer"; +"Scene.Report.StepTwo.Step2Of4" = "Steg 2 av 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Vilka regler överträds?"; +"Scene.Report.TextPlaceholder" = "Skriv eller klistra in ytterligare kommentarer"; +"Scene.Report.Title" = "Rapportera %@"; +"Scene.Report.TitleReport" = "Rapportera"; +"Scene.Search.Recommend.Accounts.Description" = "Du kanske vill följa dessa konton"; +"Scene.Search.Recommend.Accounts.Follow" = "Följ"; +"Scene.Search.Recommend.Accounts.Title" = "Konton som du kanske gillar"; +"Scene.Search.Recommend.ButtonText" = "Visa alla"; +"Scene.Search.Recommend.HashTag.Description" = "Hashtaggar som får en hel del uppmärksamhet"; +"Scene.Search.Recommend.HashTag.PeopleTalking" = "%@ personer diskuterar"; +"Scene.Search.Recommend.HashTag.Title" = "Trendar på Mastodon"; +"Scene.Search.SearchBar.Cancel" = "Avbryt"; +"Scene.Search.SearchBar.Placeholder" = "Sök hashtaggar och användare"; +"Scene.Search.Searching.Clear" = "Rensa"; +"Scene.Search.Searching.EmptyState.NoResults" = "Inga resultat"; +"Scene.Search.Searching.RecentSearch" = "Senaste sökningarna"; +"Scene.Search.Searching.Segment.All" = "Allt"; +"Scene.Search.Searching.Segment.Hashtags" = "Hashtaggar"; +"Scene.Search.Searching.Segment.People" = "Personer"; +"Scene.Search.Searching.Segment.Posts" = "Inlägg"; +"Scene.Search.Title" = "Sök"; +"Scene.ServerPicker.Button.Category.Academia" = "vetenskap"; +"Scene.ServerPicker.Button.Category.Activism" = "aktivism"; +"Scene.ServerPicker.Button.Category.All" = "Alla"; +"Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "Kategori: Alla"; +"Scene.ServerPicker.Button.Category.Art" = "konst"; +"Scene.ServerPicker.Button.Category.Food" = "mat"; +"Scene.ServerPicker.Button.Category.Furry" = "furry"; +"Scene.ServerPicker.Button.Category.Games" = "spel"; +"Scene.ServerPicker.Button.Category.General" = "allmänt"; +"Scene.ServerPicker.Button.Category.Journalism" = "journalistik"; +"Scene.ServerPicker.Button.Category.Lgbt" = "lgbt"; +"Scene.ServerPicker.Button.Category.Music" = "musik"; +"Scene.ServerPicker.Button.Category.Regional" = "regionalt"; +"Scene.ServerPicker.Button.Category.Tech" = "teknik"; +"Scene.ServerPicker.Button.SeeLess" = "Visa mindre"; +"Scene.ServerPicker.Button.SeeMore" = "Visa mer"; +"Scene.ServerPicker.EmptyState.BadNetwork" = "Något gick fel när data laddades. Försök igen eller kontrollera din internetanslutning."; +"Scene.ServerPicker.EmptyState.FindingServers" = "Söker tillgängliga servrar..."; +"Scene.ServerPicker.EmptyState.NoResults" = "Inga resultat"; +"Scene.ServerPicker.Input.Placeholder" = "Sök gemenskaper"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Sök gemenskaper eller ange URL"; +"Scene.ServerPicker.Label.Category" = "KATEGORI"; +"Scene.ServerPicker.Label.Language" = "SPRÅK"; +"Scene.ServerPicker.Label.Users" = "ANVÄNDARE"; +"Scene.ServerPicker.Subtitle" = "Välj en server baserat på dina intressen, region eller ett allmänt syfte."; +"Scene.ServerPicker.SubtitleExtend" = "Välj en server baserat på dina intressen, region eller ett allmänt syfte. Varje server drivs av en helt oberoende organisation eller individ."; +"Scene.ServerPicker.Title" = "Mastodon utgörs av användare på olika servrar."; +"Scene.ServerRules.Button.Confirm" = "Jag godkänner"; +"Scene.ServerRules.PrivacyPolicy" = "integritetspolicy"; +"Scene.ServerRules.Prompt" = "Genom att fortsätta omfattas du av villkoren för tjänsten och sekretesspolicyn för %@."; +"Scene.ServerRules.Subtitle" = "Dessa sätts och verkställs av moderatorerna på %@."; +"Scene.ServerRules.TermsOfService" = "användarvillkor"; +"Scene.ServerRules.Title" = "Några grundregler."; +"Scene.Settings.Footer.MastodonDescription" = "Mastodon är programvara med öppen källkod. Du kan rapportera problem via GitHub på %@ (%@)"; +"Scene.Settings.Keyboard.CloseSettingsWindow" = "Stäng inställningsfönstret"; +"Scene.Settings.Section.Appearance.Automatic" = "Automatisk"; +"Scene.Settings.Section.Appearance.Dark" = "Alltid mörk"; +"Scene.Settings.Section.Appearance.Light" = "Alltid ljus"; +"Scene.Settings.Section.Appearance.Title" = "Utseende"; +"Scene.Settings.Section.BoringZone.AccountSettings" = "Kontoinställningar"; +"Scene.Settings.Section.BoringZone.Privacy" = "Integritetspolicy"; +"Scene.Settings.Section.BoringZone.Terms" = "Användarvillkor"; +"Scene.Settings.Section.BoringZone.Title" = "Den tråkiga zonen"; +"Scene.Settings.Section.LookAndFeel.Light" = "Ljust"; +"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Verkligen mörk"; +"Scene.Settings.Section.LookAndFeel.SortaDark" = "Ganska mörk"; +"Scene.Settings.Section.LookAndFeel.Title" = "Utseende och känsla"; +"Scene.Settings.Section.LookAndFeel.UseSystem" = "Följ systeminställningarna"; +"Scene.Settings.Section.Notifications.Boosts" = "Ompostar mitt inlägg"; +"Scene.Settings.Section.Notifications.Favorites" = "Favoriserar mitt inlägg"; +"Scene.Settings.Section.Notifications.Follows" = "Följer mig"; +"Scene.Settings.Section.Notifications.Mentions" = "Omnämner mig"; +"Scene.Settings.Section.Notifications.Title" = "Notiser"; +"Scene.Settings.Section.Notifications.Trigger.Anyone" = "alla"; +"Scene.Settings.Section.Notifications.Trigger.Follow" = "någon jag följer"; +"Scene.Settings.Section.Notifications.Trigger.Follower" = "en följare"; +"Scene.Settings.Section.Notifications.Trigger.Noone" = "ingen"; +"Scene.Settings.Section.Notifications.Trigger.Title" = "Meddela mig när"; +"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Inaktivera animerade avatarer"; +"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Inaktivera animerade emojis"; +"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Öppna länkar i Mastodon"; +"Scene.Settings.Section.Preference.Title" = "Inställningar"; +"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "True black-mörkt läge"; +"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Använd standardwebbläsare för att öppna länkar"; +"Scene.Settings.Section.SpicyZone.Clear" = "Rensa mediacache"; +"Scene.Settings.Section.SpicyZone.Signout" = "Logga ut"; +"Scene.Settings.Section.SpicyZone.Title" = "Den spännande zonen"; +"Scene.Settings.Title" = "Inställningar"; +"Scene.SuggestionAccount.FollowExplain" = "När du följer någon, kommer du att se deras inlägg i ditt hemflöde."; +"Scene.SuggestionAccount.Title" = "Hitta personer att följa"; +"Scene.Thread.BackTitle" = "Inlägg"; +"Scene.Thread.Title" = "Inlägg från %@"; +"Scene.Welcome.GetStarted" = "Kom igång"; +"Scene.Welcome.LogIn" = "Logga in"; +"Scene.Welcome.Slogan" = "Socialt nätverkande +tillbaka i dina händer."; +"Scene.Wizard.AccessibilityHint" = "Dubbeltryck för att avvisa den här guiden"; +"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Växla mellan flera konton genom att hålla inne profilknappen."; +"Scene.Wizard.NewInMastodon" = "Nytt i Mastodon"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict similarity index 81% rename from MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.stringsdict rename to MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict index 091c8555e..653a69373 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey ld one - 1 lukematon ilmoitus + 1 oläst notis other - %ld lukematonta ilmoitusta + %ld olästa notiser a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ + Inmatningsgränsen överskrider %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -29,15 +29,15 @@ NSStringFormatValueTypeKey ld one - 1 merkki + 1 tecken other - %ld merkkiä + %ld tecken a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Syöterajoitus ylittyy %#@character_count@ päästä + Inmatningsgränsen återstår %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -45,9 +45,9 @@ NSStringFormatValueTypeKey ld one - 1 merkki + 1 tecken other - %ld merkkiä + %ld tecken plural.count.metric_formatted.post @@ -61,9 +61,25 @@ NSStringFormatValueTypeKey ld one - julkaisu + inlägg other - julkaisut + inläggen + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media plural.count.post @@ -77,9 +93,9 @@ NSStringFormatValueTypeKey ld one - 1 julkaisu + 1 inlägg other - %ld julkaisua + %ld inlägg plural.count.favorite @@ -93,9 +109,9 @@ NSStringFormatValueTypeKey ld one - 1 suosikki + 1 favorit other - %ld suosikkia + %ld favoriter plural.count.reblog @@ -109,9 +125,9 @@ NSStringFormatValueTypeKey ld one - 1 edelleen jako + %ld ompostning other - %ld edelleen jakoa + %ld ompostningar plural.count.reply @@ -141,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 ääni + 1 röst other - %ld ääntä + %ld röster plural.count.voter @@ -157,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 vastaaja + %ld röstare other - %ld vastaajaa + %ld röster plural.people_talking @@ -173,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 ihminen puhuu + %ld person diskuterar other - %ld ihmistä puhuu + %ld personer diskuterar plural.count.following @@ -189,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 seurataan + %ld följer other - %ld seurataan + %ld följer plural.count.follower @@ -205,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 seuraaja + 1 följare other - %ld seuraajaa + %ld följare date.year.left @@ -221,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 vuosi jäljellä + %ld år kvar other - %ld vuotta jäljellä + %ld år kvar date.month.left @@ -237,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 kuukausi jäljellä + %ld månad kvar other - %ld kuukautta jäljellä + %ld månader kvar date.day.left @@ -253,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 päivä jäljellä + %ld dag kvar other - %ld päivää jäljellä + %ld dagar kvar date.hour.left @@ -269,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1 tunti jäljellä + %ld timme kvar other - %ld tuntia jäljellä + %ld timmar kvar date.minute.left @@ -285,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1 minuutti jäljellä + %ld minut kvar other - %ld minuuttia jäljellä + %ld minuter kvar date.second.left @@ -301,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1 sekuntti + %ld sekund kvar other - %ld sekunttia jäljellä + %ld sekunder kvar date.year.ago.abbr @@ -317,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1v sitten + %ld år sedan other - %ldv sitten + %ldå sedan date.month.ago.abbr @@ -333,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1kk sitten + %ld mån sedan other - %ldkk sitten + %ld mån sedan date.day.ago.abbr @@ -349,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1pv sitten + %ldd sedan other - %ldpv sitten + %ldd sedan date.hour.ago.abbr @@ -365,9 +381,9 @@ NSStringFormatValueTypeKey ld one - 1t sitten + %ldt sedan other - %ldt sitten + %ldt sedan date.minute.ago.abbr @@ -381,9 +397,9 @@ NSStringFormatValueTypeKey ld one - 1min sitten + %ld min sedan other - %ldmin sitten + %ld min sedan date.second.ago.abbr @@ -397,9 +413,9 @@ NSStringFormatValueTypeKey ld one - 1s sitten + %lds sedan other - %lds sitten + %lds sedan diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.strings deleted file mode 100644 index 135e34990..000000000 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv_FI.lproj/Localizable.strings +++ /dev/null @@ -1,393 +0,0 @@ -"Common.Alerts.BlockDomain.BlockEntireDomain" = "Estä verkkotunnus"; -"Common.Alerts.BlockDomain.Title" = "Är du verkligen, verkligen säker på att du vill blockera hela %@? I de flesta fall är några riktade blockeringar eller nedtystade konton tillräckligt och att föredra. Du kommer inte se innehåll från den domänen och dina följare från den domänen kommer att tas bort."; -"Common.Alerts.CleanCache.Message" = "%@ välimuisti tyhjennetty onnistuneesti."; -"Common.Alerts.CleanCache.Title" = "Puhdista välimuisti"; -"Common.Alerts.Common.PleaseTryAgain" = "Yritä uudelleen."; -"Common.Alerts.Common.PleaseTryAgainLater" = "Yritä uudelleen myöhemmin."; -"Common.Alerts.DeletePost.Message" = "Är du säker på att du vill radera detta inlägg?"; -"Common.Alerts.DeletePost.Title" = "Haluatko varmasti poistaa tämän julkaisun?"; -"Common.Alerts.DiscardPostContent.Message" = "Bekräfta för att slänga inläggsutkast."; -"Common.Alerts.DiscardPostContent.Title" = "Hylkää luonnos"; -"Common.Alerts.EditProfileFailure.Message" = "Profiilia ei voida muoka. Yritä uudelleen."; -"Common.Alerts.EditProfileFailure.Title" = "Virhe profiilin muokkauksessa"; -"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "Ei voi liittä yhtä videota enempää."; -"Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "Det går inte att bifoga en video till en status som redan innehåller bilder."; -"Common.Alerts.PublishPostFailure.Message" = "Julkaisun julkaiseminen epäonnistui. -Tarkista internet-yhteytesi."; -"Common.Alerts.PublishPostFailure.Title" = "Julkaiseminen epäonnistui"; -"Common.Alerts.SavePhotoFailure.Message" = "Aktivera åtkomst till Bilder för att spara bilden."; -"Common.Alerts.SavePhotoFailure.Title" = "Kuvan tallentaminen epäonnistui"; -"Common.Alerts.ServerError.Title" = "Palvelinvirhe"; -"Common.Alerts.SignOut.Confirm" = "Kirjaudu ulos"; -"Common.Alerts.SignOut.Message" = "Haluatko varmasti kirjautua ulos?"; -"Common.Alerts.SignOut.Title" = "Kirjaudu ulos"; -"Common.Alerts.SignUpFailure.Title" = "Rekisteröinti epäonnistui"; -"Common.Alerts.VoteFailure.PollEnded" = "Kysely on päättynyt"; -"Common.Alerts.VoteFailure.Title" = "Röstning misslyckades"; -"Common.Controls.Actions.Add" = "Lisää"; -"Common.Controls.Actions.Back" = "Takaisin"; -"Common.Controls.Actions.BlockDomain" = "Estä %@"; -"Common.Controls.Actions.Cancel" = "Kumoa"; -"Common.Controls.Actions.Compose" = "Koosta"; -"Common.Controls.Actions.Confirm" = "Vahvista"; -"Common.Controls.Actions.Continue" = "Jatka"; -"Common.Controls.Actions.CopyPhoto" = "Kopioi kuva"; -"Common.Controls.Actions.Delete" = "Poista"; -"Common.Controls.Actions.Discard" = "Hylkää"; -"Common.Controls.Actions.Done" = "Valmis"; -"Common.Controls.Actions.Edit" = "Muokkaa"; -"Common.Controls.Actions.FindPeople" = "Löydä tilejä seurattavaksi"; -"Common.Controls.Actions.ManuallySearch" = "Sök manuellt istället"; -"Common.Controls.Actions.Next" = "Seuraava"; -"Common.Controls.Actions.Ok" = "OK"; -"Common.Controls.Actions.Open" = "Avaa"; -"Common.Controls.Actions.OpenInBrowser" = "Öppna i webbläsare"; -"Common.Controls.Actions.OpenInSafari" = "Avaa Safarissa"; -"Common.Controls.Actions.Preview" = "Esikatselu"; -"Common.Controls.Actions.Previous" = "Edellinen"; -"Common.Controls.Actions.Remove" = "Poista"; -"Common.Controls.Actions.Reply" = "Vastaa"; -"Common.Controls.Actions.ReportUser" = "Ilmianna %@"; -"Common.Controls.Actions.Save" = "Tallenna"; -"Common.Controls.Actions.SavePhoto" = "Tallenna kuva"; -"Common.Controls.Actions.SeeMore" = "Näytä lisää"; -"Common.Controls.Actions.Settings" = "Asetukset"; -"Common.Controls.Actions.Share" = "Jaa"; -"Common.Controls.Actions.SharePost" = "Jaa julkaisu"; -"Common.Controls.Actions.ShareUser" = "Jaa %@"; -"Common.Controls.Actions.SignIn" = "Kirjaudu sisään"; -"Common.Controls.Actions.SignUp" = "Rekisteröidy"; -"Common.Controls.Actions.Skip" = "Ohita"; -"Common.Controls.Actions.TakePhoto" = "Ota kuva"; -"Common.Controls.Actions.TryAgain" = "Yritä uudelleen"; -"Common.Controls.Actions.UnblockDomain" = "Poista esto %@"; -"Common.Controls.Friendship.Block" = "Estä"; -"Common.Controls.Friendship.BlockDomain" = "Estä %@"; -"Common.Controls.Friendship.BlockUser" = "Estä %@"; -"Common.Controls.Friendship.Blocked" = "Estetty"; -"Common.Controls.Friendship.EditInfo" = "Muokkaa profiilia"; -"Common.Controls.Friendship.Follow" = "Seuraa"; -"Common.Controls.Friendship.Following" = "Seurataan"; -"Common.Controls.Friendship.Mute" = "Mykistä"; -"Common.Controls.Friendship.MuteUser" = "Mykistä %@"; -"Common.Controls.Friendship.Muted" = "Mykistetty"; -"Common.Controls.Friendship.Pending" = "Pyydetty"; -"Common.Controls.Friendship.Request" = "Pyydä"; -"Common.Controls.Friendship.Unblock" = "Poista esto"; -"Common.Controls.Friendship.UnblockUser" = "Avblockera %@"; -"Common.Controls.Friendship.Unmute" = "Poista mykistys"; -"Common.Controls.Friendship.UnmuteUser" = "Poista mykistys tililtä %@"; -"Common.Controls.Keyboard.Common.ComposeNewPost" = "Koosta uusi julkaisu"; -"Common.Controls.Keyboard.Common.OpenSettings" = "Avaa asetukset"; -"Common.Controls.Keyboard.Common.ShowFavorites" = "Näytä suosikit"; -"Common.Controls.Keyboard.Common.SwitchToTab" = "Vaihda %@"; -"Common.Controls.Keyboard.SegmentedControl.NextSection" = "Seuraava lohko"; -"Common.Controls.Keyboard.SegmentedControl.PreviousSection" = "Föregående avsnitt"; -"Common.Controls.Keyboard.Timeline.NextStatus" = "Seuraava julkaisu"; -"Common.Controls.Keyboard.Timeline.OpenAuthorProfile" = "Avaa tekijän profiili"; -"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "Avaa edelleen jakajan profiili"; -"Common.Controls.Keyboard.Timeline.OpenStatus" = "Avaa julkaisu"; -"Common.Controls.Keyboard.Timeline.PreviewImage" = "Förhandsgranska bild"; -"Common.Controls.Keyboard.Timeline.PreviousStatus" = "Edellinen julkaisu"; -"Common.Controls.Keyboard.Timeline.ReplyStatus" = "Vastaa julkaisuun"; -"Common.Controls.Keyboard.Timeline.ToggleContentWarning" = "Vaihda sisältövaroitus"; -"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "Växla favorit på inlägg"; -"Common.Controls.Keyboard.Timeline.ToggleReblog" = "Växla ompostning på inlägg"; -"Common.Controls.Status.Actions.Favorite" = "Favorit"; -"Common.Controls.Status.Actions.Hide" = "Dölj"; -"Common.Controls.Status.Actions.Menu" = "Valikko"; -"Common.Controls.Status.Actions.Reblog" = "Jaa edelleen"; -"Common.Controls.Status.Actions.Reply" = "Vastaa"; -"Common.Controls.Status.Actions.ShowGif" = "Visa GIF"; -"Common.Controls.Status.Actions.ShowImage" = "Visa bild"; -"Common.Controls.Status.Actions.ShowVideoPlayer" = "Visa videospelare"; -"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tryck och håll ned för att visa menyn"; -"Common.Controls.Status.Actions.Unfavorite" = "Ta bort favorit"; -"Common.Controls.Status.Actions.Unreblog" = "Peru edelleen jako"; -"Common.Controls.Status.ContentWarning" = "Sisältövaroitus"; -"Common.Controls.Status.MediaContentWarning" = "Napauta mistä tahansa paljastaaksesi"; -"Common.Controls.Status.Poll.Closed" = "Suljettu"; -"Common.Controls.Status.Poll.Vote" = "Rösta"; -"Common.Controls.Status.SensitiveContent" = "Känsligt innehåll"; -"Common.Controls.Status.ShowPost" = "Näytä julkaisu"; -"Common.Controls.Status.ShowUserProfile" = "Näytä tili"; -"Common.Controls.Status.Tag.Email" = "Sähköposti"; -"Common.Controls.Status.Tag.Emoji" = "Emoji"; -"Common.Controls.Status.Tag.Hashtag" = "Hashtagi"; -"Common.Controls.Status.Tag.Link" = "Linkki"; -"Common.Controls.Status.Tag.Mention" = "Nämn"; -"Common.Controls.Status.Tag.Url" = "URL"; -"Common.Controls.Status.TapToReveal" = "Tryck för att visa"; -"Common.Controls.Status.UserReblogged" = "%@ jakoi edelleen"; -"Common.Controls.Status.UserRepliedTo" = "Vastasi %@:lle"; -"Common.Controls.Status.Visibility.Direct" = "Endast nämnda användare kan se detta inlägg."; -"Common.Controls.Status.Visibility.Private" = "Endast deras följare kan se detta inlägg."; -"Common.Controls.Status.Visibility.PrivateFromMe" = "Bara mina följare kan se det här inlägget."; -"Common.Controls.Status.Visibility.Unlisted" = "Alla kan se detta inlägg men det visas inte i den offentliga tidslinjen."; -"Common.Controls.Tabs.Home" = "Koti"; -"Common.Controls.Tabs.Notification" = "Ilmoitus"; -"Common.Controls.Tabs.Profile" = "Profiili"; -"Common.Controls.Tabs.Search" = "Haku"; -"Common.Controls.Timeline.Filtered" = "Suodatettu"; -"Common.Controls.Timeline.Header.BlockedWarning" = "Et voi tarkastella tämän tilin profiilia -ennen kuin hän poistaa eston."; -"Common.Controls.Timeline.Header.BlockingWarning" = "Et voi tarkastella tämän tilin profiilia -ennen kuin poistat sen esto. -Profiilisi näyttää tältä hänelle."; -"Common.Controls.Timeline.Header.NoStatusFound" = "Julkaisua ei löytynyt"; -"Common.Controls.Timeline.Header.SuspendedWarning" = "Tämä tili on lakkautettu."; -"Common.Controls.Timeline.Header.UserBlockedWarning" = "Et voi tarkastella tilin %@ profiilia -ennen kuin hän poistaa eston."; -"Common.Controls.Timeline.Header.UserBlockingWarning" = "Et voi tarkastella tilin %@ profiilia -ennen kuin poistat sen esto. -Profiilisi näyttää tältä hänelle."; -"Common.Controls.Timeline.Header.UserSuspendedWarning" = "Tili %@ on lakkautettu."; -"Common.Controls.Timeline.Loader.LoadMissingPosts" = "Lataa puuttuvat julkaisut"; -"Common.Controls.Timeline.Loader.LoadingMissingPosts" = "Ladataan puuttuvia julkaisuja..."; -"Common.Controls.Timeline.Loader.ShowMoreReplies" = "Näytä lisää vastauksia"; -"Common.Controls.Timeline.Timestamp.Now" = "Nyt"; -"Scene.AccountList.AddAccount" = "Lisää tili"; -"Scene.AccountList.DismissAccountSwitcher" = "Sulje tilin vaihtaja"; -"Scene.AccountList.TabBarHint" = "Nykyinen valittu profiili: %@. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan"; -"Scene.Compose.Accessibility.AppendAttachment" = "Lisää liite"; -"Scene.Compose.Accessibility.AppendPoll" = "Lisää kysely"; -"Scene.Compose.Accessibility.CustomEmojiPicker" = "Mukautettu emojivalitsin"; -"Scene.Compose.Accessibility.DisableContentWarning" = "Poista sisältövaroitus käytöstä"; -"Scene.Compose.Accessibility.EnableContentWarning" = "Ota sisältövaroitus käyttöön"; -"Scene.Compose.Accessibility.PostVisibilityMenu" = "Julkaisun näkyvyysvalikko"; -"Scene.Compose.Accessibility.RemovePoll" = "Poista kysely"; -"Scene.Compose.Attachment.AttachmentBroken" = "Denna %@ är trasig och kan inte -laddas upp till Mastodon."; -"Scene.Compose.Attachment.DescriptionPhoto" = "Kuvaile kuva näkövammaisille..."; -"Scene.Compose.Attachment.DescriptionVideo" = "Kuvaile video näkövammaisille..."; -"Scene.Compose.Attachment.Photo" = "kuva"; -"Scene.Compose.Attachment.Video" = "video"; -"Scene.Compose.AutoComplete.SpaceToAdd" = "Mellanslag att lägga till"; -"Scene.Compose.ComposeAction" = "Julkaise"; -"Scene.Compose.ContentInputPlaceholder" = "Kirjoita tai liitä, siitä mitä ajattelet"; -"Scene.Compose.ContentWarning.Placeholder" = "Kirjoita tarkka varoitus tähän..."; -"Scene.Compose.Keyboard.AppendAttachmentEntry" = "Lisää liite - %@"; -"Scene.Compose.Keyboard.DiscardPost" = "Hylkää julkaisu"; -"Scene.Compose.Keyboard.PublishPost" = "Julkaise julkaisu"; -"Scene.Compose.Keyboard.SelectVisibilityEntry" = "Valitse näkyvyys - %@"; -"Scene.Compose.Keyboard.ToggleContentWarning" = "Vaihda sisältövaroitus"; -"Scene.Compose.Keyboard.TogglePoll" = "Vaihda kysely"; -"Scene.Compose.MediaSelection.Browse" = "Selaa"; -"Scene.Compose.MediaSelection.Camera" = "Ota kuva"; -"Scene.Compose.MediaSelection.PhotoLibrary" = "Kuvakirjasto"; -"Scene.Compose.Poll.DurationTime" = "Kesto: %@"; -"Scene.Compose.Poll.OneDay" = "1 päivä"; -"Scene.Compose.Poll.OneHour" = "1 tunti"; -"Scene.Compose.Poll.OptionNumber" = "Vaihtoehto %ld"; -"Scene.Compose.Poll.SevenDays" = "7 päivää"; -"Scene.Compose.Poll.SixHours" = "6 tuntia"; -"Scene.Compose.Poll.ThirtyMinutes" = "30 minuuttia"; -"Scene.Compose.Poll.ThreeDays" = "3 päivää"; -"Scene.Compose.ReplyingToUser" = "vastaamassa tilille %@"; -"Scene.Compose.Title.NewPost" = "Uusi julkaisu"; -"Scene.Compose.Title.NewReply" = "Uusi vastaus"; -"Scene.Compose.Visibility.Direct" = "Vain mainitsemani tilit"; -"Scene.Compose.Visibility.Private" = "Vain seuraajat"; -"Scene.Compose.Visibility.Public" = "Julkinen"; -"Scene.Compose.Visibility.Unlisted" = "Listaamaton"; -"Scene.ConfirmEmail.Button.OpenEmailApp" = "Avaa sähköpostisovellus"; -"Scene.ConfirmEmail.Button.Resend" = "Skicka igen"; -"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole."; -"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Lähetä sähköposti uudelleen"; -"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Tarkista sähköpostisi"; -"Scene.ConfirmEmail.OpenEmailApp.Description" = "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole."; -"Scene.ConfirmEmail.OpenEmailApp.Mail" = "Sähköposti"; -"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Avaa sähköpostisovellus"; -"Scene.ConfirmEmail.OpenEmailApp.Title" = "Tarkasta postilaatikkosi."; -"Scene.ConfirmEmail.Subtitle" = "Lähetimme juuri sähköpostin osoitteeseen %@, napauta siinä olevaa linkkiä vahvistaaksesi tilisi."; -"Scene.ConfirmEmail.Title" = "Viimeinen asia."; -"Scene.Discovery.Intro" = "Detta är de inlägg som engagerar i ditt hörn av Mastodon."; -"Scene.Discovery.Tabs.Community" = "Community"; -"Scene.Discovery.Tabs.ForYou" = "För dig"; -"Scene.Discovery.Tabs.Hashtags" = "Hashtaggar"; -"Scene.Discovery.Tabs.News" = "Nyheter"; -"Scene.Discovery.Tabs.Posts" = "Inlägg"; -"Scene.Favorite.Title" = "Omat suosikit"; -"Scene.Follower.Footer" = "Seuraajia muilta palvelimilta ei näytetä."; -"Scene.Following.Footer" = "Seurauksia muilta palvelimilta ei näytetä."; -"Scene.HomeTimeline.NavigationBarState.NewPosts" = "Uusia julkaisuja"; -"Scene.HomeTimeline.NavigationBarState.Offline" = "Yhteydetön"; -"Scene.HomeTimeline.NavigationBarState.Published" = "Julkaistu!"; -"Scene.HomeTimeline.NavigationBarState.Publishing" = "Julkaistaan julkaisua..."; -"Scene.HomeTimeline.Title" = "Koti"; -"Scene.Notification.Keyobard.ShowEverything" = "Näytä kaikki"; -"Scene.Notification.Keyobard.ShowMentions" = "Näytä maininnat"; -"Scene.Notification.NotificationDescription.FavoritedYourPost" = "favoriserade ditt inlägg"; -"Scene.Notification.NotificationDescription.FollowedYou" = "följde dig"; -"Scene.Notification.NotificationDescription.MentionedYou" = "nämnde dig"; -"Scene.Notification.NotificationDescription.PollHasEnded" = "omröstningen har avslutats"; -"Scene.Notification.NotificationDescription.RebloggedYourPost" = "ompostade ditt inlägg"; -"Scene.Notification.NotificationDescription.RequestToFollowYou" = "begär att följa dig"; -"Scene.Notification.Title.Everything" = "Kaikki"; -"Scene.Notification.Title.Mentions" = "Maininnat"; -"Scene.Preview.Keyboard.ClosePreview" = "Sulje esikatselu"; -"Scene.Preview.Keyboard.ShowNext" = "Näytä seuraava"; -"Scene.Preview.Keyboard.ShowPrevious" = "Näytä edellinen"; -"Scene.Profile.Accessibility.DoubleTapToOpenTheList" = "Dubbeltryck för att öppna listan"; -"Scene.Profile.Accessibility.EditAvatarImage" = "Redigera profilbild"; -"Scene.Profile.Accessibility.ShowAvatarImage" = "Visa profilbild"; -"Scene.Profile.Accessibility.ShowBannerImage" = "Visa banner"; -"Scene.Profile.Dashboard.Followers" = "seuraajat"; -"Scene.Profile.Dashboard.Following" = "seurataan"; -"Scene.Profile.Dashboard.Posts" = "julkaisut"; -"Scene.Profile.Fields.AddRow" = "Lisää rivi"; -"Scene.Profile.Fields.Placeholder.Content" = "Sisältö"; -"Scene.Profile.Fields.Placeholder.Label" = "Nimi"; -"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Message" = "Bekräfta för att blockera %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Title" = "Blockera konto"; -"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Message" = "Bekräfta för att tysta %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Title" = "Tysta konto"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Message" = "Bekräfta för att avblockera %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Title" = "Avblockera konto"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Message" = "Vahvista, että haluat poistaa mykistyksen tililtä %@"; -"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Title" = "Poista tilin mykistys"; -"Scene.Profile.SegmentedControl.About" = "Om"; -"Scene.Profile.SegmentedControl.Media" = "Media"; -"Scene.Profile.SegmentedControl.Posts" = "Julkaisut"; -"Scene.Profile.SegmentedControl.PostsAndReplies" = "Inlägg och svar"; -"Scene.Profile.SegmentedControl.Replies" = "Vastaukset"; -"Scene.Register.Error.Item.Agreement" = "Hyväksy"; -"Scene.Register.Error.Item.Email" = "Sähköposti"; -"Scene.Register.Error.Item.Locale" = "Språk"; -"Scene.Register.Error.Item.Password" = "Salasana"; -"Scene.Register.Error.Item.Reason" = "Syy"; -"Scene.Register.Error.Item.Username" = "Käyttäjänimi"; -"Scene.Register.Error.Reason.Accepted" = "%@ täytyy hyväksyä"; -"Scene.Register.Error.Reason.Blank" = "%@ vaaditaan"; -"Scene.Register.Error.Reason.Blocked" = "%@ sisältää estetyn sähköpostipalveluntarjoajan"; -"Scene.Register.Error.Reason.Inclusion" = "%@ ei ole tuettu arvo"; -"Scene.Register.Error.Reason.Invalid" = "%@ on virheellinen"; -"Scene.Register.Error.Reason.Reserved" = "%@ är ett reserverat nyckelord"; -"Scene.Register.Error.Reason.Taken" = "%@ on jo käytössä"; -"Scene.Register.Error.Reason.TooLong" = "%@ on liian pitkä"; -"Scene.Register.Error.Reason.TooShort" = "%@ on liian lyhyt"; -"Scene.Register.Error.Reason.Unreachable" = "%@ ei näytä olevan olemassa"; -"Scene.Register.Error.Special.EmailInvalid" = "Tämä ei ole kelvollinen sähköpostiosoite"; -"Scene.Register.Error.Special.PasswordTooShort" = "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)"; -"Scene.Register.Error.Special.UsernameInvalid" = "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja"; -"Scene.Register.Error.Special.UsernameTooLong" = "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)"; -"Scene.Register.Input.Avatar.Delete" = "Poista"; -"Scene.Register.Input.DisplayName.Placeholder" = "näyttönimi"; -"Scene.Register.Input.Email.Placeholder" = "sähköposti"; -"Scene.Register.Input.Invite.RegistrationUserInviteRequest" = "Miksi haluat liittyä?"; -"Scene.Register.Input.Password.Accessibility.Checked" = "markerad"; -"Scene.Register.Input.Password.Accessibility.Unchecked" = "avmarkerad"; -"Scene.Register.Input.Password.CharacterLimit" = "8 tecken"; -"Scene.Register.Input.Password.Hint" = "Salasanassasi on oltava vähintään kahdeksan merkkiä"; -"Scene.Register.Input.Password.Placeholder" = "salasana"; -"Scene.Register.Input.Password.Require" = "Ditt lösenord behöver minst:"; -"Scene.Register.Input.Username.DuplicatePrompt" = "Tämä käyttäjänimi on varattu."; -"Scene.Register.Input.Username.Placeholder" = "käyttäjänimi"; -"Scene.Register.Title" = "Kerro meille sinusta."; -"Scene.Report.Content1" = "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?"; -"Scene.Report.Content2" = "Onko valvojien syytä tietää tästä ilmiannosta?"; -"Scene.Report.ReportSentTitle" = "Tack för din rapport, vi ska titta på det."; -"Scene.Report.Reported" = "RAPPORTERAD"; -"Scene.Report.Send" = "Lähetä ilmianto"; -"Scene.Report.SkipToSend" = "Lähetä ilman kommentteja"; -"Scene.Report.Step1" = "Vaihe 1/2"; -"Scene.Report.Step2" = "Vaihe 2/2"; -"Scene.Report.TextPlaceholder" = "Kirjoita tai liitä lisäkommentteja"; -"Scene.Report.Title" = "Ilmianna %@"; -"Scene.Report.TitleReport" = "Rapportera"; -"Scene.Search.Recommend.Accounts.Description" = "Haluta ehkä seurata näitä tilejä"; -"Scene.Search.Recommend.Accounts.Follow" = "Seuraa"; -"Scene.Search.Recommend.Accounts.Title" = "Saatat pitää näistä tileistä"; -"Scene.Search.Recommend.ButtonText" = "Katso kaikki"; -"Scene.Search.Recommend.HashTag.Description" = "Hashtagit, jotka saavat melkoisesti huomiota"; -"Scene.Search.Recommend.HashTag.PeopleTalking" = "%@ ihmistä puhuu"; -"Scene.Search.Recommend.HashTag.Title" = "Trendaavat Mastodonissa"; -"Scene.Search.SearchBar.Cancel" = "Kumoa"; -"Scene.Search.SearchBar.Placeholder" = "Haku"; -"Scene.Search.Searching.Clear" = "Tyhjennä"; -"Scene.Search.Searching.EmptyState.NoResults" = "Ei hakutuloksia"; -"Scene.Search.Searching.RecentSearch" = "Viimeaikaiset"; -"Scene.Search.Searching.Segment.All" = "Kaikki"; -"Scene.Search.Searching.Segment.Hashtags" = "Hashtagit"; -"Scene.Search.Searching.Segment.People" = "Tilit"; -"Scene.Search.Searching.Segment.Posts" = "Julkaisut"; -"Scene.Search.Title" = "Haku"; -"Scene.ServerPicker.Button.Category.Academia" = "akateeminen"; -"Scene.ServerPicker.Button.Category.Activism" = "aktivismi"; -"Scene.ServerPicker.Button.Category.All" = "Kaikki"; -"Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "Kategoria: Kaikki"; -"Scene.ServerPicker.Button.Category.Art" = "taide"; -"Scene.ServerPicker.Button.Category.Food" = "ruoka"; -"Scene.ServerPicker.Button.Category.Furry" = "turri"; -"Scene.ServerPicker.Button.Category.Games" = "pelit"; -"Scene.ServerPicker.Button.Category.General" = "yleinen"; -"Scene.ServerPicker.Button.Category.Journalism" = "journalismi"; -"Scene.ServerPicker.Button.Category.Lgbt" = "hlbt"; -"Scene.ServerPicker.Button.Category.Music" = "musiikki"; -"Scene.ServerPicker.Button.Category.Regional" = "alueellinen"; -"Scene.ServerPicker.Button.Category.Tech" = "tekniikka"; -"Scene.ServerPicker.Button.SeeLess" = "Näytä vähemmän"; -"Scene.ServerPicker.Button.SeeMore" = "Näytä lisää"; -"Scene.ServerPicker.EmptyState.BadNetwork" = "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi."; -"Scene.ServerPicker.EmptyState.FindingServers" = "Etsistään saatavilla olevia palvelimia..."; -"Scene.ServerPicker.EmptyState.NoResults" = "Ei hakutuloksia"; -"Scene.ServerPicker.Input.Placeholder" = "Etsi palvelin tai liity omaan..."; -"Scene.ServerPicker.Label.Category" = "KATEGORIA"; -"Scene.ServerPicker.Label.Language" = "KIELI"; -"Scene.ServerPicker.Label.Users" = "TILIÄ"; -"Scene.ServerPicker.Subtitle" = "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte."; -"Scene.ServerPicker.SubtitleExtend" = "Välj en gemenskap baserad på dina intressen, region eller ett allmänt syfte. Varje gemenskap drivs av en helt oberoende organisation eller individ."; -"Scene.ServerPicker.Title" = "Valitse palvelin, -mikä tahansa palvelin."; -"Scene.ServerRules.Button.Confirm" = "Hyväksyn"; -"Scene.ServerRules.PrivacyPolicy" = "tietosuojakäytäntö"; -"Scene.ServerRules.Prompt" = "Jatkamalla, hyväksyt palvelun %@ palveluehdot ja tietosuojakäytönnön."; -"Scene.ServerRules.Subtitle" = "Nämä säännöt ovat %@ -palvelun asettamia."; -"Scene.ServerRules.TermsOfService" = "käyttöehdot"; -"Scene.ServerRules.Title" = "Joitakin perussääntöjä."; -"Scene.Settings.Footer.MastodonDescription" = "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %@ (%@)"; -"Scene.Settings.Keyboard.CloseSettingsWindow" = "Sulje asetukset"; -"Scene.Settings.Section.Appearance.Automatic" = "Seuraa järjestelmää"; -"Scene.Settings.Section.Appearance.Dark" = "Tumma"; -"Scene.Settings.Section.Appearance.Light" = "Vaalea"; -"Scene.Settings.Section.Appearance.Title" = "Ulkoasu"; -"Scene.Settings.Section.BoringZone.AccountSettings" = "Tiliasetukset"; -"Scene.Settings.Section.BoringZone.Privacy" = "Tietosuojakäytäntö"; -"Scene.Settings.Section.BoringZone.Terms" = "Palveluehdot"; -"Scene.Settings.Section.BoringZone.Title" = "Tylsä alue"; -"Scene.Settings.Section.LookAndFeel.Light" = "Ljust"; -"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Verkligen mörk"; -"Scene.Settings.Section.LookAndFeel.SortaDark" = "Ganska mörk"; -"Scene.Settings.Section.LookAndFeel.Title" = "Utseende och känsla"; -"Scene.Settings.Section.LookAndFeel.UseSystem" = "Följ systeminställningarna"; -"Scene.Settings.Section.Notifications.Boosts" = "Omien julkaisujen edelleen jaot"; -"Scene.Settings.Section.Notifications.Favorites" = "Favoriserar mitt inlägg"; -"Scene.Settings.Section.Notifications.Follows" = "Seuraa minua"; -"Scene.Settings.Section.Notifications.Mentions" = "Mainitsee minut"; -"Scene.Settings.Section.Notifications.Title" = "Ilmoitukset"; -"Scene.Settings.Section.Notifications.Trigger.Anyone" = "kuka tahansa"; -"Scene.Settings.Section.Notifications.Trigger.Follow" = "kuka tahansa, jota seuraan"; -"Scene.Settings.Section.Notifications.Trigger.Follower" = "seuraaja"; -"Scene.Settings.Section.Notifications.Trigger.Noone" = "ei kukaan"; -"Scene.Settings.Section.Notifications.Trigger.Title" = "Ilmoita minulle, kun"; -"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Poista käytöstä animoidut avatarit"; -"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Poista käytöstä animoidut emojit"; -"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Öppna länkar i Mastodon"; -"Scene.Settings.Section.Preference.Title" = "Lisäasetukset"; -"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "Todellinen mustan tumma tila"; -"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Käytä oletusselainta linkkien avaamiseen"; -"Scene.Settings.Section.SpicyZone.Clear" = "Tyhjennä median välimuisti"; -"Scene.Settings.Section.SpicyZone.Signout" = "Kirjaudu ulos"; -"Scene.Settings.Section.SpicyZone.Title" = "Varovainen alue"; -"Scene.Settings.Title" = "Asetukset"; -"Scene.SuggestionAccount.FollowExplain" = "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi."; -"Scene.SuggestionAccount.Title" = "Löydä tilejä seurattavaksi"; -"Scene.Thread.BackTitle" = "Julkaisu"; -"Scene.Thread.Title" = "Julkaisu tililtä %@"; -"Scene.Welcome.GetStarted" = "Kom igång"; -"Scene.Welcome.LogIn" = "Logga in"; -"Scene.Welcome.Slogan" = "Sosiaalinen verkostoituminen -takaisin käsissäsi."; -"Scene.Wizard.AccessibilityHint" = "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla"; -"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna."; -"Scene.Wizard.NewInMastodon" = "Uutta Mastodonissa"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index 204700321..7ba97e2ab 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -200,6 +200,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "เปิดไคลเอ็นต์อีเมล"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "ตรวจสอบกล่องขาเข้าของคุณ"; "Scene.ConfirmEmail.Subtitle" = "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "หนึ่งสิ่งสุดท้าย"; "Scene.Discovery.Intro" = "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ"; "Scene.Discovery.Tabs.Community" = "ชุมชน"; @@ -285,6 +286,7 @@ "Scene.Register.Input.Password.Require" = "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:"; "Scene.Register.Input.Username.DuplicatePrompt" = "ชื่อผู้ใช้นี้ถูกใช้ไปแล้ว"; "Scene.Register.Input.Username.Placeholder" = "ชื่อผู้ใช้"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "มาตั้งค่าของคุณใน %@ กันเลย"; "Scene.Report.Content1" = "มีโพสต์อื่นใดที่คุณต้องการเพิ่มไปยังรายงานหรือไม่?"; "Scene.Report.Content2" = "มีสิ่งใดที่ผู้ควบคุมควรทราบเกี่ยวกับรายงานนี้หรือไม่?"; @@ -302,6 +304,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict index 8ae8feb7b..4b4d47e84 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict @@ -58,6 +58,20 @@ โพสต์ + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings index 9467072f6..62667fde7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings @@ -199,6 +199,7 @@ yüklenemiyor."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "E-posta İstemcisini Aç"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Gelen kutunuzu kontrol edin."; "Scene.ConfirmEmail.Subtitle" = "Hesabınızı doğrulamak için size e-postayla gönderdiğimiz bağlantıya dokunun."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Son bir şey."; "Scene.Discovery.Intro" = "Bunlar, Mastodon'un köşesinde ilgi çeken gönderilerdir."; "Scene.Discovery.Tabs.Community" = "Topluluk"; @@ -284,6 +285,7 @@ yüklenemiyor."; "Scene.Register.Input.Password.Require" = "Parolanızda en azından şunlar olmalı:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Bu kullanıcı adı alınmış."; "Scene.Register.Input.Username.Placeholder" = "kullanıcı adı"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "%@ için kurulumunuzu yapalım"; "Scene.Report.Content1" = "Bu rapora eklemek istediğiniz başka gönderiler var mı?"; "Scene.Report.Content2" = "Bu rapor hakkında moderatörlerin bilmesi gerektiği bir şey var mı?"; @@ -301,6 +303,7 @@ yüklenemiyor."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Bilmemiz gereken başka bir şey var mı?"; "Scene.Report.StepFour.Step4Of4" = "Adım 4/4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict index d6817c1f6..a512c4a7f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict @@ -66,6 +66,22 @@ gönderi + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings index d93f0607d..b90f29ff4 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings @@ -200,6 +200,7 @@ tải lên Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Mở ứng dụng email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Kiểm tra hộp thư của bạn."; "Scene.ConfirmEmail.Subtitle" = "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "Còn điều này nữa."; "Scene.Discovery.Intro" = "Đây là những tút thu hút được sự chú ý trong góc Mastodon của bạn."; "Scene.Discovery.Tabs.Community" = "Máy chủ"; @@ -285,6 +286,7 @@ tải lên Mastodon."; "Scene.Register.Input.Password.Require" = "Mật khẩu phải tối thiểu:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Tên người dùng đã tồn tại."; "Scene.Register.Input.Username.Placeholder" = "tên người dùng"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "Hãy để tôi đăng ký trên %@"; "Scene.Report.Content1" = "Bạn muốn thêm tút nào vào báo cáo nữa không?"; "Scene.Report.Content2" = "Kiểm duyệt viên cần biết gì về báo cáo này?"; @@ -302,6 +304,7 @@ tải lên Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict index 71ba1951f..886021c08 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict @@ -58,6 +58,20 @@ tút + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index 50e5b42bf..956a0f2b5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -199,8 +199,8 @@ "Scene.ConfirmEmail.OpenEmailApp.Mail" = "邮件"; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "打开邮件客户端"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "检查你的邮箱"; -"Scene.ConfirmEmail.Subtitle" = "我们刚刚向 %@ 发送了一封电子邮件, -点击链接确认你的帐户。"; +"Scene.ConfirmEmail.Subtitle" = "点击我们发送给您的链接来验证您的账户。"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "最后一件事。"; "Scene.Discovery.Intro" = "这些嘟文在你的长毛象小宇宙中备受关注。"; "Scene.Discovery.Tabs.Community" = "社区"; @@ -286,7 +286,8 @@ "Scene.Register.Input.Password.Require" = "您的密码至少需要:"; "Scene.Register.Input.Username.DuplicatePrompt" = "此用户名已被使用"; "Scene.Register.Input.Username.Placeholder" = "用户名"; -"Scene.Register.Title" = "介绍一下你自己吧"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.Title" = "让我们在 %@ 上开始"; "Scene.Report.Content1" = "是否有帖子需要举报?"; "Scene.Report.Content2" = "是否有关于此举报的详细描述信息?"; "Scene.Report.ReportSentTitle" = "感谢提交举报,我们将会进行处理。"; @@ -303,6 +304,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; "Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict index 6c2661ee5..4040f30d0 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict @@ -58,6 +58,20 @@ 个帖子 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld media + + plural.count.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings index 0de6127e6..ed24d8923 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings @@ -195,6 +195,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "請開啟電子郵件程式"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "請檢查您的收件夾。"; "Scene.ConfirmEmail.Subtitle" = "點擊我們寄送給您的帳號驗證連結。"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; "Scene.ConfirmEmail.Title" = "最後一步。"; "Scene.Discovery.Intro" = "這些嘟文正在您 Mastodon 的角落受到注目。"; "Scene.Discovery.Tabs.Community" = "社群"; @@ -205,8 +206,8 @@ "Scene.Favorite.Title" = "您的最愛"; "Scene.Follower.Footer" = "來自其他伺服器的跟隨者不會被顯示。"; "Scene.Following.Footer" = "來自其他伺服器的跟隨中不會被顯示。"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "輕點一下捲至頂端並且再點ㄧ下回到原先位置"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "標誌按鈕"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "檢視最新嘟文"; "Scene.HomeTimeline.NavigationBarState.Offline" = "離線"; "Scene.HomeTimeline.NavigationBarState.Published" = "嘟出去!"; @@ -280,6 +281,7 @@ "Scene.Register.Input.Password.Require" = "您的密碼必須是至少:"; "Scene.Register.Input.Username.DuplicatePrompt" = "此使用者名稱已被佔用。"; "Scene.Register.Input.Username.Placeholder" = "使用者名稱"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; "Scene.Register.Title" = "讓我們一起設定 %@ 吧!"; "Scene.Report.Content1" = "還有其他您想加入這份檢舉報告的嘟文嗎?"; "Scene.Report.Content2" = "有其他管管們需要知道關於這份檢舉報告的嗎?"; @@ -289,37 +291,38 @@ "Scene.Report.SkipToSend" = "不加入備註並傳送"; "Scene.Report.Step1" = "兩個步驟中的第一步"; "Scene.Report.Step2" = "兩個步驟中的第二步"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepFinal.BlockUser" = "封鎖 %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "不想再看到這個?"; +"Scene.Report.StepFinal.MuteUser" = "靜音 %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "他們將無法跟隨您或是看到您的嘟文。他們能看到他們是否已被封鎖。"; +"Scene.Report.StepFinal.Unfollow" = "取消跟隨"; +"Scene.Report.StepFinal.UnfollowUser" = "取消跟隨 %@"; +"Scene.Report.StepFinal.Unfollowed" = "已取消跟隨"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "當您看到某些不喜歡的內容時,您可以將該帳號從您的體驗中移除。"; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "當我們正在審核時,您可以對 %@ 採取以下措施"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "您不會在您的首頁時間軸中再見到他們的嘟文或轉嘟。他們不會知道他們已被靜音。"; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "有什麼其他您想讓我們知道的嗎?"; +"Scene.Report.StepFour.Step4Of4" = "四個步驟中的第四步"; +"Scene.Report.StepOne.IDontLikeIt" = "我不喜歡"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "這是您不想看到的"; +"Scene.Report.StepOne.ItViolatesServerRules" = "違反伺服器規則"; +"Scene.Report.StepOne.ItsSomethingElse" = "其他原因"; +"Scene.Report.StepOne.ItsSpam" = "垃圾訊息"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "有害連結、假造的互動,或是重複性回覆"; +"Scene.Report.StepOne.SelectTheBestMatch" = "選擇最佳條件符合"; +"Scene.Report.StepOne.Step1Of4" = "四個步驟中的第一步"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "這個問題不屬於其他分類"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "這個帳號有什麼問題嗎?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "這則嘟文有什麼問題嗎?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "%@ 有什麼問題嗎?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "您知道它違反特定規則"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "是否有能佐證這份檢舉之嘟文?"; +"Scene.Report.StepThree.SelectAllThatApply" = "請選擇所有適用的選項"; +"Scene.Report.StepThree.Step3Of4" = "四個步驟中的第三步"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "就是不順眼"; +"Scene.Report.StepTwo.SelectAllThatApply" = "請選擇所有適用的選項"; +"Scene.Report.StepTwo.Step2Of4" = "四個步驟中的第二步"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "違反了哪些規則?"; "Scene.Report.TextPlaceholder" = "請輸入或貼上額外的備註"; "Scene.Report.Title" = "檢舉 %@"; "Scene.Report.TitleReport" = "檢舉"; @@ -360,7 +363,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "尋找可用的伺服器..."; "Scene.ServerPicker.EmptyState.NoResults" = "沒有結果"; "Scene.ServerPicker.Input.Placeholder" = "搜尋伺服器"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜尋社群或輸入 URL 地址"; "Scene.ServerPicker.Label.Category" = "分類"; "Scene.ServerPicker.Label.Language" = "語言"; "Scene.ServerPicker.Label.Users" = "使用者"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict index 0f28a8f6e..fe44cdfd0 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict @@ -58,6 +58,20 @@ 嘟文 + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld 個媒體 + + plural.count.post NSStringLocalizedFormatKey From 2784fb87716fc04e04d426607a19c993417aa25d Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 13:59:54 +0800 Subject: [PATCH 381/571] fix: duplicate auto complete items may crash the app issue --- Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel.swift b/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel.swift index dc6ab1789..3110f93e3 100644 --- a/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel.swift +++ b/Mastodon/Scene/Compose/AutoComplete/AutoCompleteViewModel.swift @@ -46,7 +46,7 @@ final class AutoCompleteViewModel { var snapshot = NSDiffableDataSourceSnapshot() snapshot.appendSections([.main]) - snapshot.appendItems(items, toSection: .main) + snapshot.appendItems(items.removingDuplicates(), toSection: .main) if let currentState = self.stateMachine.currentState { switch currentState { case is State.Loading, is State.Fail: From 2343284ca25ea7d0ab25bbd93d54e4c1a5d44007 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 08:06:27 +0200 Subject: [PATCH 382/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json index b17a80774..f7b597f1f 100644 --- a/Localization/StringsConvertor/input/ca.lproj/app.json +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "Anem a configurar-te a %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Anem a configurar-te a %s", "input": { "avatar": { "delete": "Suprimeix" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Una última cosa.", "subtitle": "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte", "button": { "open_email_app": "Obre l'aplicació de correu", "resend": "Reenvia" From ec8e1b8760c51dc40638052a84a6d1d360fb389a Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 14:31:53 +0800 Subject: [PATCH 383/571] fix: duplicated tag raise crash issue --- .../Hashtags/DiscoveryHashtagsViewModel+Diffable.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewModel+Diffable.swift b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewModel+Diffable.swift index 0370f3f58..19241d2e6 100644 --- a/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewModel+Diffable.swift +++ b/Mastodon/Scene/Discovery/Hashtags/DiscoveryHashtagsViewModel+Diffable.swift @@ -32,7 +32,7 @@ extension DiscoveryHashtagsViewModel { snapshot.appendSections([.hashtags]) let items = hashtags.map { DiscoveryItem.hashtag($0) } - snapshot.appendItems(items, toSection: .hashtags) + snapshot.appendItems(items.removingDuplicates(), toSection: .hashtags) diffableDataSource.apply(snapshot) } From 18fbab9f3ed2f7c2541f7dbfc1cfe9b072ec3236 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 09:33:39 +0200 Subject: [PATCH 384/571] New translations app.json (Italian) --- Localization/StringsConvertor/input/it.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json index 50244253b..4a83e3a0a 100644 --- a/Localization/StringsConvertor/input/it.lproj/app.json +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "Facciamo in modo che sia configurato il %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Facciamo in modo che sia configurato su %s", "input": { "avatar": { "delete": "Elimina" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Un'ultima cosa.", "subtitle": "Tocca il link che ti abbiamo inviato per verificare il tuo account.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tocca sul collegamento che ti abbiamo inviato, per verificare il tuo account", "button": { "open_email_app": "Apri l'app Email", "resend": "Invia di nuovo" From 8efaf38395ee74f4d2a2218d4c30e7cff9ca5827 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 17:26:57 +0800 Subject: [PATCH 385/571] fix: app enter background break profile header layout issue --- .../Scene/Profile/Header/View/ProfileHeaderView.swift | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Mastodon/Scene/Profile/Header/View/ProfileHeaderView.swift b/Mastodon/Scene/Profile/Header/View/ProfileHeaderView.swift index 78430cb36..1a6e10537 100644 --- a/Mastodon/Scene/Profile/Header/View/ProfileHeaderView.swift +++ b/Mastodon/Scene/Profile/Header/View/ProfileHeaderView.swift @@ -407,8 +407,14 @@ extension ProfileHeaderView { override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) { super.traitCollectionDidChange(previousTraitCollection) - - updateLayoutMargins() + + // workaround enter background breaking the layout issue + switch UIApplication.shared.applicationState { + case .active: + updateLayoutMargins() + default: + break + } } } From 384e0aff87ced954ce7138341be508e40a129760 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 18:42:25 +0800 Subject: [PATCH 386/571] chore: update i18n resources --- .../Resources/ca.lproj/Localizable.strings | 4 ++-- .../Resources/it.lproj/Localizable.strings | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index cb3fabf33..6f35c13b8 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -200,7 +200,7 @@ carregat a Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Obre el Client de Correu electrònic"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Comprova la teva safata d'entrada."; "Scene.ConfirmEmail.Subtitle" = "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Toca l'enllaç del correu electrònic que t'hem enviat per a confirmar el teu compte"; "Scene.ConfirmEmail.Title" = "Una última cosa."; "Scene.Discovery.Intro" = "Aquestes son les publicacions que criden l'atenció en el teu racó de Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunitat"; @@ -286,7 +286,7 @@ carregat a Mastodon."; "Scene.Register.Input.Password.Require" = "La teva contrasenya com a mínim necessita:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Aquest nom d'usuari ja està en ús."; "Scene.Register.Input.Username.Placeholder" = "nom d'usuari"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Anem a configurar-te a %@"; "Scene.Register.Title" = "Anem a configurar-te a %@"; "Scene.Report.Content1" = "Hi ha alguna altre publicació que vulguis afegir a l'informe?"; "Scene.Report.Content2" = "Hi ha alguna cosa que els moderadors hagin de saber sobre aquest informe?"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index 23e3a0778..c66ca14fa 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -200,7 +200,7 @@ caricato su Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Apri client Email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Controlla la tua posta in arrivo."; "Scene.ConfirmEmail.Subtitle" = "Tocca il link che ti abbiamo inviato per verificare il tuo account."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tocca sul collegamento che ti abbiamo inviato, per verificare il tuo account"; "Scene.ConfirmEmail.Title" = "Un'ultima cosa."; "Scene.Discovery.Intro" = "Questi sono i post che stanno guadagnando popolarità nel tuo angolo di Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunità"; @@ -286,7 +286,7 @@ caricato su Mastodon."; "Scene.Register.Input.Password.Require" = "La tua password ha bisogno di almeno:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Questo nome utente è già stato preso."; "Scene.Register.Input.Username.Placeholder" = "nome utente"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Facciamo in modo che sia configurato su %@"; "Scene.Register.Title" = "Facciamo in modo che sia configurato il %@"; "Scene.Report.Content1" = "Ci sono altri post che vorresti aggiungere alla segnalazione?"; "Scene.Report.Content2" = "C'è qualcosa che i moderatori dovrebbero sapere su questa segnalazione?"; From 7a3145083af974c1c2c02d06cbfc959a5e56f46e Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 19:09:33 +0800 Subject: [PATCH 387/571] fix: deprecated i18n translation still display issue --- .../ConfirmEmail/MastodonConfirmEmailViewController.swift | 2 +- .../Register/MastodonRegisterViewModel+Diffable.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift b/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift index cb7a96f85..550dae7cc 100644 --- a/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift +++ b/Mastodon/Scene/Onboarding/ConfirmEmail/MastodonConfirmEmailViewController.swift @@ -36,7 +36,7 @@ final class MastodonConfirmEmailViewController: UIViewController, NeedsDependenc let label = UILabel() label.font = UIFontMetrics(forTextStyle: .title1).scaledFont(for: UIFont.systemFont(ofSize: 20)) label.textColor = .secondaryLabel - label.text = L10n.Scene.ConfirmEmail.subtitle + label.text = L10n.Scene.ConfirmEmail.tapTheLinkWeEmailedToYouToVerifyYourAccount label.numberOfLines = 0 return label }() diff --git a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel+Diffable.swift b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel+Diffable.swift index d8dc8943d..dda59843a 100644 --- a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel+Diffable.swift +++ b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel+Diffable.swift @@ -23,7 +23,7 @@ extension MastodonRegisterViewModel { switch item { case .header(let domain): let cell = tableView.dequeueReusableCell(withIdentifier: String(describing: OnboardingHeadlineTableViewCell.self), for: indexPath) as! OnboardingHeadlineTableViewCell - cell.titleLabel.text = L10n.Scene.Register.title(domain) + cell.titleLabel.text = L10n.Scene.Register.letsGetYouSetUpOnDomain(domain) cell.subTitleLabel.isHidden = true return cell case .avatar: From db638167f4e557940a79b3c3c64d5082b3d7f5ea Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 13:10:42 +0200 Subject: [PATCH 388/571] New translations app.json (Chinese Simplified) --- .../input/zh-Hans.lproj/app.json | 74 +++++++++---------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index feb294d9a..e15c44bb3 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "查找或加入你自己的服务器...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "搜索社区或输入 URL" }, "empty_state": { "finding_servers": "正在查找可用的服务器...", @@ -251,7 +251,7 @@ }, "register": { "title": "让我们在 %s 上开始", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "让我们在 %s 上开始", "input": { "avatar": { "delete": "删除" @@ -322,7 +322,7 @@ "confirm_email": { "title": "最后一件事。", "subtitle": "点击我们发送给您的链接来验证您的账户。", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "点击我们发送给您的链接来验证您的账户。", "button": { "open_email_app": "打开电子邮件应用", "resend": "重新发送" @@ -347,8 +347,8 @@ "published": "已发送", "Publishing": "正在发送...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Logo 按钮", + "logo_hint": "轻点滚到顶部,再次轻点回到原处" } } }, @@ -605,46 +605,46 @@ "text_placeholder": "输入或粘贴额外的注释", "reported": "已报告", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "第 1 步(共 4 步)", + "whats_wrong_with_this_post": "这个帖子有什么问题?", + "whats_wrong_with_this_account": "这个账户有什么问题?", + "whats_wrong_with_this_username": "%s 有什么问题?", + "select_the_best_match": "选择最佳匹配", + "i_dont_like_it": "我不喜欢它", + "it_is_not_something_you_want_to_see": "这不是你想看到的东西", + "its_spam": "它是垃圾信息", + "malicious_links_fake_engagement_or_repetetive_replies": "恶意链接、虚假参与或重复性回复", + "it_violates_server_rules": "它违反了服务器规则", + "you_are_aware_that_it_breaks_specific_rules": "你发现它违反了某个服务器规则", + "its_something_else": "其他原因", + "the_issue_does_not_fit_into_other_categories": "该问题属于其他类别" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "第 2 步(共 4 步)", + "which_rules_are_being_violated": "哪些规则被违反了?", + "select_all_that_apply": "选择适用选项", + "i_just_don’t_like_it": "我不喜欢它" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "第 3 步(共 4 步)", + "are_there_any_posts_that_back_up_this_report": "有任何帖子可以支持此报告吗?", + "select_all_that_apply": "选择适用选项" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "第 4 步(共 4 步)", + "is_there_anything_else_we_should_know": "还有什么你认为我们应该知道的吗?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "不想看到这个内容?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "当你在 Mastodon 看到不喜欢的东西时,可以尝试移除它。", + "unfollow": "取消关注", + "unfollowed": "已取消关注", + "unfollow_user": "取消关注 %s", + "mute_user": "静音 %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "你不会在主页里看到他们的帖子和转发。他们不会知道被静音了。", + "block_user": "屏蔽 %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "他们将不再能够关注或看到你的帖子,但他们可以知道他们是否被屏蔽。", + "while_we_review_this_you_can_take_action_against_user": "当我们审核这个报告时,你可以对 %s 采取行动。" } }, "preview": { From df5f25bdc81012d6b0af51c482edfa9d5d303ed5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 13:11:14 +0200 Subject: [PATCH 389/571] New translations Localizable.stringsdict (Chinese Simplified) --- .../input/zh-Hans.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict index 4040f30d0..1ec142a7f 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld media + %ld 个媒体 plural.count.post From ed34a275c9c853e2050691440fd393b98b6ec067 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 14:05:24 +0200 Subject: [PATCH 390/571] New translations app.json (Chinese Simplified) --- Localization/StringsConvertor/input/zh-Hans.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index e15c44bb3..4bc55effe 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "查找或加入你自己的服务器...", - "search_servers_or_enter_url": "搜索社区或输入 URL" + "search_servers_or_enter_url": "搜索服务器或输入 URL" }, "empty_state": { "finding_servers": "正在查找可用的服务器...", From 4054d447aac88d6c6147af1553ccbdb0350fabcb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 17:30:47 +0200 Subject: [PATCH 391/571] New translations app.json (Chinese Traditional) --- Localization/StringsConvertor/input/zh-Hant.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json index fea696cc6..19f77b297 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "讓我們一起設定 %s 吧!", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "讓我們一起設定 %s 吧!", "input": { "avatar": { "delete": "刪除" @@ -322,7 +322,7 @@ "confirm_email": { "title": "最後一步。", "subtitle": "點擊我們寄送給您的帳號驗證連結。", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "點擊我們寄送給您的帳號驗證連結", "button": { "open_email_app": "開啟電子郵件 App", "resend": "重新發送" From 751547275b574a6ccdd4901588a8bdbb00439d1b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 18:28:24 +0200 Subject: [PATCH 392/571] New translations app.json (Vietnamese) --- .../StringsConvertor/input/vi.lproj/app.json | 74 +++++++++---------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/Localization/StringsConvertor/input/vi.lproj/app.json b/Localization/StringsConvertor/input/vi.lproj/app.json index 1c4bfe074..69d521d9e 100644 --- a/Localization/StringsConvertor/input/vi.lproj/app.json +++ b/Localization/StringsConvertor/input/vi.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Tìm máy chủ", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Tìm một máy chủ hoặc nhập URL" }, "empty_state": { "finding_servers": "Đang tìm máy chủ hoạt động...", @@ -251,7 +251,7 @@ }, "register": { "title": "Hãy để tôi đăng ký trên %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Hãy để tôi đăng ký trên %s", "input": { "avatar": { "delete": "Xóa" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Còn điều này nữa.", "subtitle": "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản", "button": { "open_email_app": "Mở ứng dụng email", "resend": "Gửi lại" @@ -347,8 +347,8 @@ "published": "Đã đăng!", "Publishing": "Đang đăng tút...", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Nút biểu tượng", + "logo_hint": "Nhấn để cuộn lên trên và nhấn lại lần nữa để trở về vị trí cũ" } } }, @@ -605,46 +605,46 @@ "text_placeholder": "Nhập hoặc bổ sung chú thích", "reported": "ĐÃ BÁO CÁO", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "Bước 1 trong 4", + "whats_wrong_with_this_post": "Có vấn đề gì với tút này?", + "whats_wrong_with_this_account": "Có vấn đề gì với người này?", + "whats_wrong_with_this_username": "Có vấn đề gì với %s?", + "select_the_best_match": "Chọn lý do khớp nhất", + "i_dont_like_it": "Tôi không thích nó", + "it_is_not_something_you_want_to_see": "Đó không phải là thứ gì mà bạn muốn thấy", + "its_spam": "Đây là spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Liên kết độc hại, tạo tương tác giả hoặc trả lời lặp đi lặp lại", + "it_violates_server_rules": "Vi phạm quy tắc máy chủ", + "you_are_aware_that_it_breaks_specific_rules": "Bạn nhận thấy nó vi phạm quy tắc máy chủ", + "its_something_else": "Một lý do khác", + "the_issue_does_not_fit_into_other_categories": "Vấn đề không nằm trong những mục trên" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Bước 2 trong 4", + "which_rules_are_being_violated": "Vi phạm quy tắc nào?", + "select_all_that_apply": "Chọn tất cả những gì phù hợp", + "i_just_don’t_like_it": "Tôi không thích nó" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Bước 3 trong 4", + "are_there_any_posts_that_back_up_this_report": "Bạn muốn gửi tút nào kèm báo cáo này?", + "select_all_that_apply": "Chọn tất cả những gì phù hợp" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Bước 4 trong 4", + "is_there_anything_else_we_should_know": "Bạn nghĩ chúng tôi nên biết thêm điều gì?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "Không muốn xem thứ này?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Khi bạn thấy có gì đó mà bạn không thích trên Mastodon, bạn có thể tự loại bỏ chúng.", + "unfollow": "Ngưng theo dõi", + "unfollowed": "Ngưng theo dõi", + "unfollow_user": "Ngưng theo dõi %s", + "mute_user": "Ẩn %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Bạn sẽ không thấy tút hoặc lượt đăng lại của họ trên bảng tin. Họ không biết rằng bạn ẩn họ.", + "block_user": "Chặn %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Họ sẽ không thể theo dõi hoặc đọc tút của bạn, nhưng họ có thể hiểu bạn đã chặn họ.", + "while_we_review_this_you_can_take_action_against_user": "Trong lúc chờ chúng tôi xem xét, bạn có thể áp dụng hành động với @%s" } }, "preview": { From 6379d7df0497cff4e87317f68ad236a98e016df3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 13 May 2022 20:08:23 +0200 Subject: [PATCH 393/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json index d1f93719a..fa74ac578 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/app.json +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Li rajekaran bigere", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Li civakan bigere an jî girêdanê binivîse" }, "empty_state": { "finding_servers": "Peydakirina rajekarên berdest...", @@ -347,7 +347,7 @@ "published": "Hate weşandin!", "Publishing": "Şandî tê weşandin...", "accessibility": { - "logo_label": "Logo Button", + "logo_label": "Bişkoka Logo", "logo_hint": "Tap to scroll to top and tap again to previous location" } } From 2ae2da850c96feaa774439805f9b312c547d8152 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 14 May 2022 12:53:05 +0200 Subject: [PATCH 394/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th.lproj/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index 58c4c1a32..79e3726ba 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "ค้นหาเซิร์ฟเวอร์", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "ค้นหาชุมชนหรือป้อน URL" }, "empty_state": { "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", @@ -251,7 +251,7 @@ }, "register": { "title": "มาตั้งค่าของคุณใน %s กันเลย", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "มาตั้งค่าของคุณใน %s กันเลย", "input": { "avatar": { "delete": "ลบ" @@ -322,7 +322,7 @@ "confirm_email": { "title": "หนึ่งสิ่งสุดท้าย", "subtitle": "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ", "button": { "open_email_app": "เปิดแอปอีเมล", "resend": "ส่งใหม่" @@ -347,7 +347,7 @@ "published": "เผยแพร่แล้ว!", "Publishing": "กำลังเผยแพร่โพสต์...", "accessibility": { - "logo_label": "Logo Button", + "logo_label": "ปุ่มโลโก้", "logo_hint": "Tap to scroll to top and tap again to previous location" } } From 888321afa465a187d46b92e23460b9c6b9924245 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 14 May 2022 12:53:06 +0200 Subject: [PATCH 395/571] New translations Localizable.stringsdict (Thai) --- .../StringsConvertor/input/th.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict index 4b4d47e84..4ce28cf72 100644 --- a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld media + %ld สื่อ plural.count.post From e1cd209ad748dca20625b32aebafb8466f5fde47 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 14 May 2022 14:34:03 +0200 Subject: [PATCH 396/571] New translations app.json (Spanish, Argentina) --- .../input/es-AR.lproj/app.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index 32dd4ce3f..1f9ae02ff 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Encontrá un servidor o unite al tuyo…", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Buscar comunidades o introducir dirección web" }, "empty_state": { "finding_servers": "Buscando servidores disponibles…", @@ -347,8 +347,8 @@ "published": "¡Enviado!", "Publishing": "Enviando mensaje…", "accessibility": { - "logo_label": "Logo Button", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_label": "Botón de logo", + "logo_hint": "Tocá para desplazarte hacia arriba y tocá de nuevo para ir a la ubicación anterior" } } }, @@ -605,13 +605,13 @@ "text_placeholder": "Escribí o pegá comentarios adicionales", "reported": "DENUNCIADA", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", + "step_1_of_4": "Paso 1 de 4", + "whats_wrong_with_this_post": "¿Cuál es el problema con este mensaje?", + "whats_wrong_with_this_account": "¿Cuál es el problema con esta cuenta?", + "whats_wrong_with_this_username": "¿Cuál es el problema con %s?", + "select_the_best_match": "Seleccioná la mejor coincidencia", + "i_dont_like_it": "No te gusta", + "it_is_not_something_you_want_to_see": "Es algo que no querés ver", "its_spam": "It’s spam", "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", "it_violates_server_rules": "It violates server rules", From f81826aa9a71697ffc6ad32a07ef265b0e295060 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 14 May 2022 15:32:12 +0200 Subject: [PATCH 397/571] New translations app.json (Spanish, Argentina) --- .../input/es-AR.lproj/app.json | 74 +++++++++---------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index 1f9ae02ff..246b151c2 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -180,7 +180,7 @@ "unmute": "Dejar de silenciar", "unmute_user": "Dejar de silenciar a %s", "muted": "Silenciado", - "edit_info": "Editar información" + "edit_info": "Editar" }, "timeline": { "filtered": "Filtrado", @@ -194,11 +194,11 @@ }, "header": { "no_status_found": "Mensaje no encontrado", - "blocking_warning": "No podés ver el perfil de este usuario\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", - "user_blocking_warning": "No podés ver el perfil de %s\n hasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", - "blocked_warning": "No podés ver el perfil de este usuario\n hasta que dicho usuario te desbloquee.", - "user_blocked_warning": "No podés ver el perfil de %s\n hasta que dicho usuario te desbloquee.", - "suspended_warning": "Este usuario está suspendido.", + "blocking_warning": "No podés ver el perfil de este usuario\nhasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", + "user_blocking_warning": "No podés ver el perfil de %s\nhasta que lo desbloquees.\nTu perfil le aparece así a este usuario.", + "blocked_warning": "No podés ver el perfil de este usuario\nhasta que dicho usuario te desbloquee.", + "user_blocked_warning": "No podés ver el perfil de %s\nhasta que dicho usuario te desbloquee.", + "suspended_warning": "Esta cuenta está suspendida.", "user_suspended_warning": "La cuenta de %s está suspendida." } } @@ -211,16 +211,16 @@ "log_in": "Iniciar sesión" }, "server_picker": { - "title": "Elegí un servidor,\nel que quieras.", - "subtitle": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales.", - "subtitle_extend": "Elegí una comunidad basada en tus intereses, región o una de propósitos generales. Cada comunidad es operada por una organización o individuo totalmente independiente.", + "title": "Mastodon está compuesto de cuentas en diferentes servidores.", + "subtitle": "Elegí un servidor basado en tus intereses, región, o de propósitos generales.", + "subtitle_extend": "Elegí un servidor basado en tus intereses, región, o de propósitos generales. Cada servidor es operado por una organización o individuo totalmente independientes.", "button": { "category": { "all": "Todas", "all_accessiblity_description": "Categoría: Todas", "academia": "académico", "activism": "activismo", - "food": "comida", + "food": "alimentación", "furry": "furry", "games": "juegos", "general": "general", @@ -251,7 +251,7 @@ }, "register": { "title": "Contanos sobre vos.", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Vamos a prepararte en %s", "input": { "avatar": { "delete": "Eliminar" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Una última cosa.", "subtitle": "Acabamos de enviar un correo electrónico a %s,\npulsá en el enlace para confirmar tu cuenta.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tocá el enlace que te enviamos por correo electrónico para verificar tu cuenta", "button": { "open_email_app": "Abrir aplicación de correo electrónico", "resend": "Reenviar" @@ -612,39 +612,39 @@ "select_the_best_match": "Seleccioná la mejor coincidencia", "i_dont_like_it": "No te gusta", "it_is_not_something_you_want_to_see": "Es algo que no querés ver", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "its_spam": "Es spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Enlaces maliciosos, interacciones falsas o respuestas repetitivas", + "it_violates_server_rules": "Viola las reglas del servidor", + "you_are_aware_that_it_breaks_specific_rules": "Sos consciente de que infringe normas específicas", + "its_something_else": "Es otra cosa", + "the_issue_does_not_fit_into_other_categories": "El problema no aplica en otras categorías" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Paso 2 de 4", + "which_rules_are_being_violated": "¿Qué reglas se están violando?", + "select_all_that_apply": "Seleccioná todo lo que corresponda", + "i_just_don’t_like_it": "Simplemente no te gusta" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Paso 3 de 4", + "are_there_any_posts_that_back_up_this_report": "¿Hay algún mensaje que respalde esta denuncia?", + "select_all_that_apply": "Seleccioná todo lo que corresponda" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Paso 4 de 4", + "is_there_anything_else_we_should_know": "¿Hay algo más que deberíamos saber?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "¿No querés ver esto?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Cuando veas algo que no te gusta en Mastodon, podés quitar a esa cuenta de tu experiencia.", + "unfollow": "Dejar de seguir", + "unfollowed": "Dejaste de seguir a esta cuenta", + "unfollow_user": "Dejar de seguir a %s", + "mute_user": "Silenciar a %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "No verás sus publicaciones ni sus adhesiones en tu línea temporal. El usuario de esta cuenta no sabrá que fue silenciado.", + "block_user": "Bloquear a %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "El usuario de esta cuenta ya no podrá seguirte o leer tus mensajes, pero podrá fijarse si fue bloqueado.", + "while_we_review_this_you_can_take_action_against_user": "Mientras revisamos esto, podés tomar medidas contra %s" } }, "preview": { From 2b6844eba87f374a93457e75e9d265211992571a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 14 May 2022 15:32:13 +0200 Subject: [PATCH 398/571] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es-AR.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict index a1edd3972..4ded25821 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict @@ -77,9 +77,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 medio other - %ld media + %ld medios plural.count.post From 7956ab5259e17bb3e2e9beb020423b05d1e6e7df Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 15 May 2022 08:48:43 +0200 Subject: [PATCH 399/571] New translations app.json (Swedish) --- Localization/StringsConvertor/input/sv.lproj/app.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/sv.lproj/app.json b/Localization/StringsConvertor/input/sv.lproj/app.json index 6cba86344..19229080c 100644 --- a/Localization/StringsConvertor/input/sv.lproj/app.json +++ b/Localization/StringsConvertor/input/sv.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "Låt oss få igång dig på %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Låt oss få igång dig på %s", "input": { "avatar": { "delete": "Radera" @@ -322,7 +322,7 @@ "confirm_email": { "title": "En sista sak.", "subtitle": "Tryck på länken vi e-postade till dig för att verifiera ditt konto.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tryck på länken vi e-postade till dig för att verifiera ditt konto", "button": { "open_email_app": "Öppna e-postappen", "resend": "Skicka igen" @@ -644,7 +644,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade.", "block_user": "Blockera %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "De kommer inte längre att kunna följa eller se dina inlägg, men de kan se om de har blockerats.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "Medan vi granskar detta kan du vidta åtgärder mot %s" } }, "preview": { From 6532d0edf6232c9845cfffb18630c0c09159a024 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 15 May 2022 08:48:44 +0200 Subject: [PATCH 400/571] New translations Localizable.stringsdict (Swedish) --- .../StringsConvertor/input/sv.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict index 653a69373..f20a26254 100644 --- a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict @@ -77,7 +77,7 @@ NSStringFormatValueTypeKey ld one - 1 media + %ld media other %ld media From 7175af96e15e36b419451e785524e594a82b8ef3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 15 May 2022 11:02:52 +0200 Subject: [PATCH 401/571] New translations app.json (Thai) --- .../StringsConvertor/input/th.lproj/app.json | 64 +++++++++---------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index 79e3726ba..5b6161f85 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -605,46 +605,46 @@ "text_placeholder": "พิมพ์หรือวางความคิดเห็นเพิ่มเติม", "reported": "รายงานแล้ว", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "step_1_of_4": "ขั้นตอนที่ 1 จาก 4", + "whats_wrong_with_this_post": "โพสต์นี้มีอะไรผิดปกติ?", + "whats_wrong_with_this_account": "บัญชีนี้มีอะไรผิดปกติ?", + "whats_wrong_with_this_username": "%s มีอะไรผิดปกติ?", + "select_the_best_match": "เลือกที่ตรงกันที่สุด", + "i_dont_like_it": "ฉันไม่ชอบโพสต์", + "it_is_not_something_you_want_to_see": "โพสต์ไม่ใช่บางอย่างที่คุณต้องการเห็น", + "its_spam": "โพสต์เป็นสแปม", + "malicious_links_fake_engagement_or_repetetive_replies": "ลิงก์ที่เป็นอันตราย, การมีส่วนร่วมปลอม หรือการตอบกลับซ้ำ ๆ", + "it_violates_server_rules": "โพสต์ละเมิดกฎของเซิร์ฟเวอร์", + "you_are_aware_that_it_breaks_specific_rules": "คุณทราบว่าโพสต์แหกกฎเฉพาะ", + "its_something_else": "โพสต์เป็นอย่างอื่น", + "the_issue_does_not_fit_into_other_categories": "ปัญหาไม่เข้าหมวดหมู่อื่น ๆ" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "ขั้นตอนที่ 2 จาก 4", + "which_rules_are_being_violated": "กำลังละเมิดกฎใด?", + "select_all_that_apply": "เลือกทั้งหมดที่นำไปใช้", + "i_just_don’t_like_it": "ฉันแค่ไม่ชอบโพสต์" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "ขั้นตอนที่ 3 จาก 4", + "are_there_any_posts_that_back_up_this_report": "มีโพสต์ใด ๆ ที่สนับสนุนรายงานนี้หรือไม่?", + "select_all_that_apply": "เลือกทั้งหมดที่นำไปใช้" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "ขั้นตอนที่ 4 จาก 4", + "is_there_anything_else_we_should_know": "มีสิ่งอื่นใดที่เราควรทราบหรือไม่?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", - "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "dont_want_to_see_this": "ไม่ต้องการเห็นสิ่งนี้?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "เมื่อคุณเห็นบางอย่างที่คุณไม่ชอบใน Mastodon คุณสามารถเอาบุคคลออกจากประสบการณ์ของคุณ", + "unfollow": "เลิกติดตาม", + "unfollowed": "เลิกติดตามแล้ว", + "unfollow_user": "เลิกติดตาม %s", + "mute_user": "ซ่อน %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "คุณจะไม่เห็นโพสต์หรือการดันของเขาในฟีดหน้าแรกของคุณ เขาจะไม่ทราบว่ามีการซ่อนเขา", + "block_user": "ปิดกั้น %s", + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "เขาจะไม่สามารถติดตามหรือเห็นโพสต์ของคุณได้อีกต่อไป แต่เขาสามารถเห็นว่ามีการปิดกั้นเขาหรือไม่", + "while_we_review_this_you_can_take_action_against_user": "ขณะที่เราตรวจทานสิ่งนี้ คุณสามารถดำเนินการกับ %s" } }, "preview": { From 39ff50212b29137bc6ccaa20be76a550d24828ff Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 16 May 2022 11:34:20 +0800 Subject: [PATCH 402/571] feat: supports hashtag timeline pull-down-refresh --- Mastodon.xcodeproj/project.pbxproj | 8 +- .../xcschemes/xcschememanagement.plist | 6 +- .../HashtagTimelineViewController.swift | 21 ++- .../HashtagTimelineViewModel+Diffable.swift | 19 ++- ...t => HashtagTimelineViewModel+State.swift} | 148 +++++++++++++----- .../HashtagTimelineViewModel.swift | 17 +- 6 files changed, 161 insertions(+), 58 deletions(-) rename Mastodon/Scene/HashtagTimeline/{HashtagTimelineViewModel+LoadOldestState.swift => HashtagTimelineViewModel+State.swift} (51%) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index c2798aecf..478c4329e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -12,7 +12,7 @@ 0F202201261326E6000C64BF /* HashtagTimelineViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F202200261326E6000C64BF /* HashtagTimelineViewModel.swift */; }; 0F20220726134DA4000C64BF /* HashtagTimelineViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F20220626134DA4000C64BF /* HashtagTimelineViewModel+Diffable.swift */; }; 0F202213261351F5000C64BF /* APIService+HashtagTimeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F202212261351F5000C64BF /* APIService+HashtagTimeline.swift */; }; - 0F20222D261457EE000C64BF /* HashtagTimelineViewModel+LoadOldestState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+LoadOldestState.swift */; }; + 0F20222D261457EE000C64BF /* HashtagTimelineViewModel+State.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+State.swift */; }; 0F20223926146553000C64BF /* Array.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F20223826146553000C64BF /* Array.swift */; }; 0FAA0FDF25E0B57E0017CCDE /* WelcomeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FAA0FDE25E0B57E0017CCDE /* WelcomeViewController.swift */; }; 0FAA101225E105390017CCDE /* PrimaryActionButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FAA101125E105390017CCDE /* PrimaryActionButton.swift */; }; @@ -715,7 +715,7 @@ 0F202200261326E6000C64BF /* HashtagTimelineViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HashtagTimelineViewModel.swift; sourceTree = ""; }; 0F20220626134DA4000C64BF /* HashtagTimelineViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "HashtagTimelineViewModel+Diffable.swift"; sourceTree = ""; }; 0F202212261351F5000C64BF /* APIService+HashtagTimeline.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+HashtagTimeline.swift"; sourceTree = ""; }; - 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+LoadOldestState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "HashtagTimelineViewModel+LoadOldestState.swift"; sourceTree = ""; }; + 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+State.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "HashtagTimelineViewModel+State.swift"; sourceTree = ""; }; 0F20223826146553000C64BF /* Array.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Array.swift; sourceTree = ""; }; 0FAA0FDE25E0B57E0017CCDE /* WelcomeViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeViewController.swift; sourceTree = ""; }; 0FAA101125E105390017CCDE /* PrimaryActionButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrimaryActionButton.swift; sourceTree = ""; }; @@ -1489,7 +1489,7 @@ DB0FCB9B27980AB6006C02E2 /* HashtagTimelineViewController+DataSourceProvider.swift */, 0F202200261326E6000C64BF /* HashtagTimelineViewModel.swift */, 0F20220626134DA4000C64BF /* HashtagTimelineViewModel+Diffable.swift */, - 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+LoadOldestState.swift */, + 0F20222C261457EE000C64BF /* HashtagTimelineViewModel+State.swift */, ); path = HashtagTimeline; sourceTree = ""; @@ -4109,7 +4109,7 @@ DB6B74F4272FBAE700C70B6E /* FollowerListViewModel+Diffable.swift in Sources */, DB6B74F2272FB67600C70B6E /* FollowerListViewModel.swift in Sources */, DB44767B260B3B8C00B66B82 /* CustomEmojiPickerInputView.swift in Sources */, - 0F20222D261457EE000C64BF /* HashtagTimelineViewModel+LoadOldestState.swift in Sources */, + 0F20222D261457EE000C64BF /* HashtagTimelineViewModel+State.swift in Sources */, DB0009A626AEE5DC009B9D2D /* Intents.intentdefinition in Sources */, 5B90C462262599800002E742 /* SettingsSectionHeader.swift in Sources */, DB44768B260B3F2100B66B82 /* CustomEmojiPickerItem.swift in Sources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 4dab4933f..aa35ed3c6 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 22 + 20 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 20 + 21 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 21 + 22 SuppressBuildableAutocreation diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift index 31de401d2..02738747c 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewController.swift @@ -46,6 +46,8 @@ final class HashtagTimelineViewController: UIViewController, NeedsDependency, Me return tableView }() + let refreshControl = UIRefreshControl() + deinit { os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s:", ((#file as NSString).lastPathComponent), #line, #function) } @@ -89,13 +91,23 @@ extension HashtagTimelineViewController { statusTableViewCellDelegate: self ) + tableView.refreshControl = refreshControl + refreshControl.addTarget(self, action: #selector(HashtagTimelineViewController.refreshControlValueChanged(_:)), for: .valueChanged) + viewModel.didLoadLatest + .receive(on: DispatchQueue.main) + .sink { [weak self] _ in + guard let self = self else { return } + self.refreshControl.endRefreshing() + } + .store(in: &disposeBag) + // setup batch fetch viewModel.listBatchFetchViewModel.setup(scrollView: tableView) viewModel.listBatchFetchViewModel.shouldFetch .receive(on: DispatchQueue.main) .sink { [weak self] _ in guard let self = self else { return } - self.viewModel.loadOldestStateMachine.enter(HashtagTimelineViewModel.LoadOldestState.Loading.self) + self.viewModel.stateMachine.enter(HashtagTimelineViewModel.State.Loading.self) } .store(in: &disposeBag) @@ -144,6 +156,13 @@ extension HashtagTimelineViewController { extension HashtagTimelineViewController { + @objc private func refreshControlValueChanged(_ sender: UIRefreshControl) { + guard viewModel.stateMachine.enter(HashtagTimelineViewModel.State.Reloading.self) else { + sender.endRefreshing() + return + } + } + @objc private func composeBarButtonItemPressed(_ sender: UIBarButtonItem) { os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { return } diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+Diffable.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+Diffable.swift index c71d195c7..fc80f4846 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+Diffable.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+Diffable.swift @@ -27,6 +27,8 @@ extension HashtagTimelineViewModel { ) ) + stateMachine.enter(State.Reloading.self) + var snapshot = NSDiffableDataSourceSnapshot() snapshot.appendSections([.main]) diffableDataSource?.apply(snapshot) @@ -43,14 +45,17 @@ extension HashtagTimelineViewModel { let items = records.map { StatusItem.status(record: $0) } snapshot.appendItems(items, toSection: .main) - if let currentState = self.loadOldestStateMachine.currentState { + if let currentState = self.stateMachine.currentState { switch currentState { - case is LoadOldestState.Initial, - is LoadOldestState.Loading, - is LoadOldestState.Idle, - is LoadOldestState.Fail: - snapshot.appendItems([.bottomLoader], toSection: .main) - case is LoadOldestState.NoMore: + case is State.Initial, + is State.Reloading, + is State.Loading, + is State.Idle, + is State.Fail: + if !items.isEmpty { + snapshot.appendItems([.bottomLoader], toSection: .main) + } + case is State.NoMore: break default: assertionFailure() diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+LoadOldestState.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+State.swift similarity index 51% rename from Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+LoadOldestState.swift rename to Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+State.swift index eba85657b..6b75d3875 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+LoadOldestState.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel+State.swift @@ -1,5 +1,5 @@ // -// HashtagTimelineViewModel+LoadOldestState.swift +// HashtagTimelineViewModel+State.swift // Mastodon // // Created by BradGao on 2021/3/31. @@ -11,7 +11,7 @@ import GameplayKit import CoreDataStack extension HashtagTimelineViewModel { - class LoadOldestState: GKState, NamingState { + class State: GKState, NamingState { let logger = Logger(subsystem: "HashtagTimelineViewModel.LoadOldestState", category: "StateMachine") @@ -28,14 +28,14 @@ extension HashtagTimelineViewModel { } override func didEnter(from previousState: GKState?) { - let previousState = previousState as? HashtagTimelineViewModel.LoadOldestState + let previousState = previousState as? HashtagTimelineViewModel.State logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): [\(self.id.uuidString)] enter \(self.name), previous: \(previousState?.name ?? "")") viewModel?.loadOldestStateMachinePublisher.send(self) } @MainActor - func enter(state: LoadOldestState.Type) { + func enter(state: State.Type) { stateMachine?.enter(state) } @@ -45,24 +45,96 @@ extension HashtagTimelineViewModel { } } -extension HashtagTimelineViewModel.LoadOldestState { - class Initial: HashtagTimelineViewModel.LoadOldestState { +extension HashtagTimelineViewModel.State { + class Initial: HashtagTimelineViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { - return stateClass == Loading.self + switch stateClass { + case is Reloading.Type: + return true + default: + return false + } } } - class Loading: HashtagTimelineViewModel.LoadOldestState { - var maxID: Status.ID? - + class Reloading: HashtagTimelineViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { - return stateClass == Fail.self || stateClass == Idle.self || stateClass == NoMore.self + switch stateClass { + case is Loading.Type: + return true + default: + return false + } } override func didEnter(from previousState: GKState?) { super.didEnter(from: previousState) - guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + + stateMachine.enter(Loading.self) + } + } + + class Fail: HashtagTimelineViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Loading.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + guard let _ = viewModel, let stateMachine = stateMachine else { return } + + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s: retry loading 3s later…", ((#file as NSString).lastPathComponent), #line, #function) + DispatchQueue.main.asyncAfter(deadline: .now() + 3) { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s: retry loading", ((#file as NSString).lastPathComponent), #line, #function) + stateMachine.enter(Loading.self) + } + } + } + + class Idle: HashtagTimelineViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Reloading.Type, is Loading.Type: + return true + default: + return false + } + } + } + + class Loading: HashtagTimelineViewModel.State { + var maxID: Status.ID? + + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Fail.Type: + return true + case is Idle.Type: + return true + case is NoMore.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + + switch previousState { + case is Reloading: + maxID = nil + default: + break + } + guard let authenticationBox = viewModel.context.authenticationService.activeMastodonAuthenticationBox.value else { assertionFailure() stateMachine.enter(Fail.self) @@ -71,6 +143,8 @@ extension HashtagTimelineViewModel.LoadOldestState { // TODO: only set large count when using Wi-Fi let maxID = self.maxID + let isReloading = maxID == nil + Task { do { let response = try await viewModel.context.apiService.hashtagTimeline( @@ -79,24 +153,35 @@ extension HashtagTimelineViewModel.LoadOldestState { hashtag: viewModel.hashtag, authenticationBox: authenticationBox ) + + let newMaxID: String? = { + guard let maxID = response.link?.maxID else { return nil } + return maxID + }() - var hasMore = false + let hasMore: Bool = { + guard let newMaxID = newMaxID else { return false } + return newMaxID != maxID + }() - if let _maxID = response.link?.maxID, - _maxID != maxID - { - self.maxID = _maxID - hasMore = true + self.maxID = newMaxID + + var hasNewStatusesAppend = false + var statusIDs = isReloading ? [] : viewModel.fetchedResultsController.statusIDs.value + for status in response.value { + guard !statusIDs.contains(status.id) else { continue } + statusIDs.append(status.id) + hasNewStatusesAppend = true } - if hasMore { + + if hasNewStatusesAppend, hasMore { await enter(state: Idle.self) } else { await enter(state: NoMore.self) } - let statusIDs = response.value.map { $0.id } viewModel.fetchedResultsController.append(statusIDs: statusIDs) - + viewModel.didLoadLatest.send() } catch { logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): fetch statues failed: \(error.localizedDescription)") await enter(state: Fail.self) @@ -104,22 +189,15 @@ extension HashtagTimelineViewModel.LoadOldestState { } // end Task } } - - class Fail: HashtagTimelineViewModel.LoadOldestState { - override func isValidNextState(_ stateClass: AnyClass) -> Bool { - return stateClass == Loading.self || stateClass == Idle.self - } - } - - class Idle: HashtagTimelineViewModel.LoadOldestState { - override func isValidNextState(_ stateClass: AnyClass) -> Bool { - return stateClass == Loading.self - } - } - class NoMore: HashtagTimelineViewModel.LoadOldestState { + class NoMore: HashtagTimelineViewModel.State { override func isValidNextState(_ stateClass: AnyClass) -> Bool { - return false + switch stateClass { + case is Reloading.Type: + return true + default: + return false + } } override func didEnter(from previousState: GKState?) { diff --git a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel.swift b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel.swift index d63fad807..f22987273 100644 --- a/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel.swift +++ b/Mastodon/Scene/HashtagTimeline/HashtagTimelineViewModel.swift @@ -36,19 +36,20 @@ final class HashtagTimelineViewModel { let didLoadLatest = PassthroughSubject() // bottom loader - private(set) lazy var loadOldestStateMachine: GKStateMachine = { + private(set) lazy var stateMachine: GKStateMachine = { // exclude timeline middle fetcher state let stateMachine = GKStateMachine(states: [ - LoadOldestState.Initial(viewModel: self), - LoadOldestState.Loading(viewModel: self), - LoadOldestState.Fail(viewModel: self), - LoadOldestState.Idle(viewModel: self), - LoadOldestState.NoMore(viewModel: self), + State.Initial(viewModel: self), + State.Reloading(viewModel: self), + State.Fail(viewModel: self), + State.Idle(viewModel: self), + State.Loading(viewModel: self), + State.NoMore(viewModel: self), ]) - stateMachine.enter(LoadOldestState.Initial.self) + stateMachine.enter(State.Initial.self) return stateMachine }() - lazy var loadOldestStateMachinePublisher = CurrentValueSubject(nil) + lazy var loadOldestStateMachinePublisher = CurrentValueSubject(nil) init(context: AppContext, hashtag: String) { self.context = context From 00cc131dd2033d0042e068ed48571d40e0e0a8af Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 16 May 2022 16:14:41 +0800 Subject: [PATCH 403/571] feat: update report API endpoint --- .../Scene/Report/Report/ReportViewModel.swift | 20 ++++++++++++++++++- .../MastodonSDK/API/Mastodon+API+Report.swift | 19 +++++++++++++++++- .../Entity/Mastodon+Entity+Instance.swift | 4 +++- 3 files changed, 40 insertions(+), 3 deletions(-) diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift index f94a92d39..fdd90a774 100644 --- a/Mastodon/Scene/Report/Report/ReportViewModel.swift +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -165,7 +165,25 @@ extension ReportViewModel { accountID: user.id, statusIDs: statusIDs, comment: comment, - forward: true + forward: true, + category: { + switch self.reportReasonViewModel.selectReason { + case .dislike: return nil + case .spam: return .spam + case .violateRule: return .violation + case .other: return .other + case .none: return nil + } + }(), + ruleIDs: { + switch self.reportReasonViewModel.selectReason { + case .violateRule: + guard let rule = self.reportServerRulesViewModel.selectRule else { return nil } + return [rule.id] + default: + return nil + } + }() ) } diff --git a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Report.swift b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Report.swift index 6ba8c3cf5..08ca3e922 100644 --- a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Report.swift +++ b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Report.swift @@ -69,23 +69,40 @@ public extension Mastodon.API.Reports { public var statusIDs: [Mastodon.Entity.Status.ID]? public var comment: String? public let forward: Bool? + + public let category: Category? + public let ruleIDs: [Mastodon.Entity.Instance.Rule.ID]? enum CodingKeys: String, CodingKey { case accountID = "account_id" case statusIDs = "status_ids" case comment case forward + case category + case ruleIDs = "rule_ids" + + } + + public enum Category: String, Codable { + case spam + case violation + case other } public init( accountID: Mastodon.Entity.Account.ID, statusIDs: [Mastodon.Entity.Status.ID]?, comment: String?, - forward: Bool?) { + forward: Bool?, + category: Category?, + ruleIDs: [Mastodon.Entity.Instance.Rule.ID]? + ) { self.accountID = accountID self.statusIDs = statusIDs self.comment = comment self.forward = forward + self.category = category + self.ruleIDs = ruleIDs } } } diff --git a/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+Instance.swift b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+Instance.swift index 5d649a841..353601cd4 100644 --- a/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+Instance.swift +++ b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+Instance.swift @@ -106,7 +106,9 @@ extension Mastodon.Entity.Instance { extension Mastodon.Entity.Instance { public struct Rule: Codable, Hashable { - public let id: String + public typealias ID = String + + public let id: ID public let text: String } } From 945f05703bd2983e9605e8a57d1ae84287c1c7f3 Mon Sep 17 00:00:00 2001 From: CMK Date: Fri, 13 May 2022 18:39:18 +0800 Subject: [PATCH 404/571] feat: add familiar followers endpoint --- .../APIService/APIService+Recommend.swift | 33 +++++++++ ...stodon+API+Account+FamiliarFollowers.swift | 71 +++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift diff --git a/Mastodon/Service/APIService/APIService+Recommend.swift b/Mastodon/Service/APIService/APIService+Recommend.swift index 6e457ad07..87471250e 100644 --- a/Mastodon/Service/APIService/APIService+Recommend.swift +++ b/Mastodon/Service/APIService/APIService+Recommend.swift @@ -74,3 +74,36 @@ extension APIService { } } + +extension APIService { + + func familiarFollowers( + query: Mastodon.API.Account.FamiliarFollowersQuery, + authenticationBox: MastodonAuthenticationBox + ) async throws -> Mastodon.Response.Content<[Mastodon.Entity.Account]> { + let response = try await Mastodon.API.Account.familiarFollowers( + session: session, + domain: authenticationBox.domain, + query: query, + authorization: authenticationBox.userAuthorization + ).singleOutput() + +// let managedObjectContext = backgroundManagedObjectContext +// try await managedObjectContext.performChanges { +// for entity in response.value { +// _ = Persistence.MastodonUser.createOrMerge( +// in: managedObjectContext, +// context: Persistence.MastodonUser.PersistContext( +// domain: authenticationBox.domain, +// entity: entity.account, +// cache: nil, +// networkDate: response.networkDate +// ) +// ) +// } // end for … in +// } + + return response + } + +} diff --git a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift new file mode 100644 index 000000000..a1f0b4f66 --- /dev/null +++ b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift @@ -0,0 +1,71 @@ +// +// Mastodon+API+Account+FamiliarFollowers.swift +// +// +// Created by MainasuK on 2022-5-13. +// + +import Foundation +import Combine + +// https://github.com/mastodon/mastodon/pull/17700 +extension Mastodon.API.Account { + + private static func familiarFollowersEndpointURL(domain: String) -> URL { + return Mastodon.API.endpointURL(domain: domain) + .appendingPathComponent("accounts") + .appendingPathComponent("familiar_followers") + } + + /// Fetch familiar followers + /// + /// - Since: 3.5.? + /// - Version: 3.5.2 + /// # Last Update + /// 2022/5/13 + /// # Reference + /// [Document](none) + /// - Parameters: + /// - session: `URLSession` + /// - domain: Mastodon instance domain. e.g. "example.com" + /// - query: `FamiliarFollowersQuery` + /// - authorization: User token + /// - Returns: `AnyPublisher` contains `[Mastodon.Entity.Account]` nested in the response + public static func familiarFollowers( + session: URLSession, + domain: String, + query: FamiliarFollowersQuery, + authorization: Mastodon.API.OAuth.Authorization + ) -> AnyPublisher, Error> { + let request = Mastodon.API.get( + url: familiarFollowersEndpointURL(domain: domain), + query: query, + authorization: authorization + ) + return session.dataTaskPublisher(for: request) + .tryMap { data, response in + let value = try Mastodon.API.decode(type: [Mastodon.Entity.Account].self, from: data, response: response) + return Mastodon.Response.Content(value: value, response: response) + } + .eraseToAnyPublisher() + } + + public struct FamiliarFollowersQuery: GetQuery { + public let accounts: [Mastodon.Entity.Account.ID] + + public init(accounts: [Mastodon.Entity.Account.ID]) { + self.accounts = accounts + } + + var queryItems: [URLQueryItem]? { + var items: [URLQueryItem] = [] + let accountsValue = accounts.joined(separator: ",") + if !accountsValue.isEmpty { + items.append(URLQueryItem(name: "accounts", value: accountsValue)) + } + guard !items.isEmpty else { return nil } + return items + } + } + +} From 531f71b77d226bcac2abab7a726e1dbf7b793f14 Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 16 May 2022 19:42:03 +0800 Subject: [PATCH 405/571] feat: add familiar followers UI component for ProfileCard --- .../Discovery/DiscoverySection.swift | 17 +++- .../DiscoveryForYouViewModel+Diffable.swift | 3 +- .../ForYou/DiscoveryForYouViewModel.swift | 38 +++++++-- .../APIService/APIService+Recommend.swift | 33 +++---- ...stodon+API+Account+FamiliarFollowers.swift | 15 ++-- .../Mastodon+Entity+FamiliarFollowers.swift | 24 ++++++ .../MastodonSDK/Mastodon+Entity+Account.swift | 30 +++++++ ...FollowersDashboardView+Configuration.swift | 20 +++++ ...liarFollowersDashboardView+ViewModel.swift | 63 ++++++++++++++ .../FamiliarFollowersDashboardView.swift | 85 +++++++++++++++++++ .../Content/NotificationView+ViewModel.swift | 2 +- .../ProfileCardView+Configuration.swift | 1 + .../Content/ProfileCardView+ViewModel.swift | 16 ++++ .../View/Content/ProfileCardView.swift | 11 ++- .../View/ImageView/AvatarImageView.swift | 18 +++- ...ofileCardTableViewCell+Configuration.swift | 1 + 16 files changed, 342 insertions(+), 35 deletions(-) create mode 100644 MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+FamiliarFollowers.swift create mode 100644 MastodonSDK/Sources/MastodonUI/Extension/MastodonSDK/Mastodon+Entity+Account.swift create mode 100644 MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift create mode 100644 MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift create mode 100644 MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift diff --git a/Mastodon/Diffiable/Discovery/DiscoverySection.swift b/Mastodon/Diffiable/Discovery/DiscoverySection.swift index cab2eb82b..94e07c71b 100644 --- a/Mastodon/Diffiable/Discovery/DiscoverySection.swift +++ b/Mastodon/Diffiable/Discovery/DiscoverySection.swift @@ -8,6 +8,7 @@ import os.log import UIKit import MastodonUI +import MastodonSDK enum DiscoverySection: CaseIterable { // case posts @@ -22,9 +23,14 @@ extension DiscoverySection { class Configuration { weak var profileCardTableViewCellDelegate: ProfileCardTableViewCellDelegate? + let familiarFollowers: Published<[Mastodon.Entity.FamiliarFollowers]>.Publisher? - public init(profileCardTableViewCellDelegate: ProfileCardTableViewCellDelegate? = nil) { + public init( + profileCardTableViewCellDelegate: ProfileCardTableViewCellDelegate? = nil, + familiarFollowers: Published<[Mastodon.Entity.FamiliarFollowers]>.Publisher? = nil + ) { self.profileCardTableViewCellDelegate = profileCardTableViewCellDelegate + self.familiarFollowers = familiarFollowers } } @@ -57,6 +63,15 @@ extension DiscoverySection { user: user, profileCardTableViewCellDelegate: configuration.profileCardTableViewCellDelegate ) + // bind familiarFollowers + if let familiarFollowers = configuration.familiarFollowers { + familiarFollowers + .map { array in array.first(where: { $0.id == user.id }) } + .assign(to: \.familiarFollowers, on: cell.profileCardView.viewModel) + .store(in: &cell.disposeBag) + } else { + cell.profileCardView.viewModel.familiarFollowers = nil + } } context.authenticationService.activeMastodonAuthentication .map { $0?.user } diff --git a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel+Diffable.swift b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel+Diffable.swift index fe53cf221..f93b4c0bd 100644 --- a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel+Diffable.swift +++ b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel+Diffable.swift @@ -19,7 +19,8 @@ extension DiscoveryForYouViewModel { tableView: tableView, context: context, configuration: DiscoverySection.Configuration( - profileCardTableViewCellDelegate: profileCardTableViewCellDelegate + profileCardTableViewCellDelegate: profileCardTableViewCellDelegate, + familiarFollowers: $familiarFollowers ) ) diff --git a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel.swift b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel.swift index 7be4aebaf..a31022a7c 100644 --- a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel.swift +++ b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewModel.swift @@ -20,6 +20,9 @@ final class DiscoveryForYouViewModel { // input let context: AppContext let userFetchedResultsController: UserFetchedResultsController + + @MainActor + @Published var familiarFollowers: [Mastodon.Entity.FamiliarFollowers] = [] @Published var isFetching = false // output @@ -48,12 +51,35 @@ final class DiscoveryForYouViewModel { } extension DiscoveryForYouViewModel { + + @MainActor func fetch() async throws { guard !isFetching else { return } isFetching = true defer { isFetching = false } - - guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { return } + + guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { + throw APIService.APIError.implicit(.badRequest) + } + + do { + let userIDs = try await fetchSuggestionAccounts() + + let _familiarFollowersResponse = try? await context.apiService.familiarFollowers( + query: .init(ids: userIDs), + authenticationBox: authenticationBox + ) + familiarFollowers = _familiarFollowersResponse?.value ?? [] + userFetchedResultsController.userIDs = userIDs + } catch { + // do nothing + } + } + + private func fetchSuggestionAccounts() async throws -> [Mastodon.Entity.Account.ID] { + guard let authenticationBox = context.authenticationService.activeMastodonAuthenticationBox.value else { + throw APIService.APIError.implicit(.badRequest) + } do { let response = try await context.apiService.suggestionAccountV2( @@ -61,15 +87,15 @@ extension DiscoveryForYouViewModel { authenticationBox: authenticationBox ) let userIDs = response.value.map { $0.account.id } - userFetchedResultsController.userIDs = userIDs + return userIDs } catch { // fallback V1 - let response2 = try await context.apiService.suggestionAccount( + let response = try await context.apiService.suggestionAccount( query: nil, authenticationBox: authenticationBox ) - let userIDs = response2.value.map { $0.id } - userFetchedResultsController.userIDs = userIDs + let userIDs = response.value.map { $0.id } + return userIDs } } } diff --git a/Mastodon/Service/APIService/APIService+Recommend.swift b/Mastodon/Service/APIService/APIService+Recommend.swift index 87471250e..f88d82305 100644 --- a/Mastodon/Service/APIService/APIService+Recommend.swift +++ b/Mastodon/Service/APIService/APIService+Recommend.swift @@ -80,7 +80,7 @@ extension APIService { func familiarFollowers( query: Mastodon.API.Account.FamiliarFollowersQuery, authenticationBox: MastodonAuthenticationBox - ) async throws -> Mastodon.Response.Content<[Mastodon.Entity.Account]> { + ) async throws -> Mastodon.Response.Content<[Mastodon.Entity.FamiliarFollowers]> { let response = try await Mastodon.API.Account.familiarFollowers( session: session, domain: authenticationBox.domain, @@ -88,20 +88,23 @@ extension APIService { authorization: authenticationBox.userAuthorization ).singleOutput() -// let managedObjectContext = backgroundManagedObjectContext -// try await managedObjectContext.performChanges { -// for entity in response.value { -// _ = Persistence.MastodonUser.createOrMerge( -// in: managedObjectContext, -// context: Persistence.MastodonUser.PersistContext( -// domain: authenticationBox.domain, -// entity: entity.account, -// cache: nil, -// networkDate: response.networkDate -// ) -// ) -// } // end for … in -// } + let managedObjectContext = backgroundManagedObjectContext + try await managedObjectContext.performChanges { + for entity in response.value { + for account in entity.accounts { + _ = Persistence.MastodonUser.createOrMerge( + in: managedObjectContext, + context: Persistence.MastodonUser.PersistContext( + domain: authenticationBox.domain, + entity: account, + cache: nil, + networkDate: response.networkDate + ) + ) + + } // end for account in + } // end for entity in + } return response } diff --git a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift index a1f0b4f66..97d7b4618 100644 --- a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift +++ b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Account+FamiliarFollowers.swift @@ -36,7 +36,7 @@ extension Mastodon.API.Account { domain: String, query: FamiliarFollowersQuery, authorization: Mastodon.API.OAuth.Authorization - ) -> AnyPublisher, Error> { + ) -> AnyPublisher, Error> { let request = Mastodon.API.get( url: familiarFollowersEndpointURL(domain: domain), query: query, @@ -44,24 +44,23 @@ extension Mastodon.API.Account { ) return session.dataTaskPublisher(for: request) .tryMap { data, response in - let value = try Mastodon.API.decode(type: [Mastodon.Entity.Account].self, from: data, response: response) + let value = try Mastodon.API.decode(type: [Mastodon.Entity.FamiliarFollowers].self, from: data, response: response) return Mastodon.Response.Content(value: value, response: response) } .eraseToAnyPublisher() } public struct FamiliarFollowersQuery: GetQuery { - public let accounts: [Mastodon.Entity.Account.ID] + public let ids: [Mastodon.Entity.Account.ID] - public init(accounts: [Mastodon.Entity.Account.ID]) { - self.accounts = accounts + public init(ids: [Mastodon.Entity.Account.ID]) { + self.ids = ids } var queryItems: [URLQueryItem]? { var items: [URLQueryItem] = [] - let accountsValue = accounts.joined(separator: ",") - if !accountsValue.isEmpty { - items.append(URLQueryItem(name: "accounts", value: accountsValue)) + for id in ids { + items.append(URLQueryItem(name: "id[]", value: id)) } guard !items.isEmpty else { return nil } return items diff --git a/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+FamiliarFollowers.swift b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+FamiliarFollowers.swift new file mode 100644 index 000000000..ce411619b --- /dev/null +++ b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+FamiliarFollowers.swift @@ -0,0 +1,24 @@ +// +// Mastodon+Entity+FamiliarFollowers.swift +// +// +// Created by MainasuK on 2022-5-16. +// + +import Foundation + +extension Mastodon.Entity { + + /// FamiliarFollowers + /// + /// - Since: 3.5.2 + /// - Version: 3.5.2 + /// # Last Update + /// 2022/5/16 + /// # Reference + /// [Document](TBD) + public class FamiliarFollowers: Codable { + public let id: Mastodon.Entity.Account.ID + public let accounts: [Mastodon.Entity.Account] + } +} diff --git a/MastodonSDK/Sources/MastodonUI/Extension/MastodonSDK/Mastodon+Entity+Account.swift b/MastodonSDK/Sources/MastodonUI/Extension/MastodonSDK/Mastodon+Entity+Account.swift new file mode 100644 index 000000000..2441ebfd0 --- /dev/null +++ b/MastodonSDK/Sources/MastodonUI/Extension/MastodonSDK/Mastodon+Entity+Account.swift @@ -0,0 +1,30 @@ +// +// Mastodon+Entity+Account.swift +// +// +// Created by MainasuK on 2022-5-16. +// + +import Foundation +import MastodonSDK + +extension Mastodon.Entity.Account { + public var displayNameWithFallback: String { + if displayName.isEmpty { + return username + } else { + return displayName + } + } +} + +extension Mastodon.Entity.Account { + public func avatarImageURL() -> URL? { + let string = UserDefaults.shared.preferredStaticAvatar ? avatarStatic ?? avatar : avatar + return URL(string: string) + } + + public func avatarImageURLWithFallback(domain: String) -> URL { + return avatarImageURL() ?? URL(string: "https://\(domain)/avatars/original/missing.png")! + } +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift new file mode 100644 index 000000000..63c962b77 --- /dev/null +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift @@ -0,0 +1,20 @@ +// +// FamiliarFollowersDashboardView+Configuration.swift +// +// +// Created by MainasuK on 2022-5-16. +// + +import UIKit +import MastodonSDK + +extension FamiliarFollowersDashboardView { + public func configure(familiarFollowers: Mastodon.Entity.FamiliarFollowers?) { + assert(Thread.isMainThread) + + let accounts = familiarFollowers?.accounts.prefix(4) ?? [] + + viewModel.avatarURLs = accounts.map { $0.avatarImageURL() } + viewModel.names = accounts.map { $0.displayNameWithFallback } + } +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift new file mode 100644 index 000000000..4ab9200c3 --- /dev/null +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift @@ -0,0 +1,63 @@ +// +// FamiliarFollowersDashboardView+ViewModel.swift +// +// +// Created by MainasuK on 2022-5-16. +// + +import os.log +import UIKit +import Combine + +extension FamiliarFollowersDashboardView { + public final class ViewModel: ObservableObject { + public var disposeBag = Set() + + let logger = Logger(subsystem: "FamiliarFollowersDashboardView", category: "ViewModel") + + @Published var avatarURLs: [URL?] = [] + @Published var names: [String] = [] + @Published var backgroundColor: UIColor? + } +} + +extension FamiliarFollowersDashboardView.ViewModel { + func bind(view: FamiliarFollowersDashboardView) { + Publishers.CombineLatest( + $avatarURLs, + $backgroundColor + ) + .sink { avatarURLs, backgroundColor in + view.avatarContainerView.subviews.forEach { $0.removeFromSuperview() } + for (i, avatarURL) in avatarURLs.enumerated() { + let avatarButton = AvatarButton() + let origin = CGPoint(x: 20 * i, y: 0) + let size = CGSize(width: 32, height: 32) + avatarButton.size = size + avatarButton.frame = CGRect(origin: origin, size: size) + view.avatarContainerView.addSubview(avatarButton) + avatarButton.avatarImageView.configure(configuration: .init(url: avatarURL)) + avatarButton.avatarImageView.configure( + cornerConfiguration: .init( + corner: .fixed(radius: 7), + border: .init( + color: backgroundColor ?? .clear, + width: 1 + ) + ) + ) + } + + view.avatarContainerViewWidthLayoutConstraint.constant = CGFloat(12 + 20 * avatarURLs.count) + } + .store(in: &disposeBag) + + $names + .sink { names in + // TODO: i18n + let description = "Followed by" + names.joined(separator: ", ") + view.descriptionLabel.text = description + } + .store(in: &disposeBag) + } +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift new file mode 100644 index 000000000..8bd14220c --- /dev/null +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift @@ -0,0 +1,85 @@ +// +// FamiliarFollowersDashboardView.swift +// +// +// Created by MainasuK on 2022-5-16. +// + +import UIKit +import MastodonAsset + +public final class FamiliarFollowersDashboardView: UIView { + + let avatarContainerView = UIView() + var avatarContainerViewWidthLayoutConstraint: NSLayoutConstraint! + + let descriptionLabel: UILabel = { + let label = UILabel() + label.font = UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) + label.text = "Followed by Pixelflowers, Lee’s Food, and 4 other mutuals" + label.textColor = Asset.Colors.Label.secondary.color + label.numberOfLines = 0 + return label + }() + + public private(set) lazy var viewModel: ViewModel = { + let viewModel = ViewModel() + viewModel.bind(view: self) + return viewModel + }() + + public func prepareForReuse() { + + } + + override init(frame: CGRect) { + super.init(frame: frame) + _init() + } + + required init?(coder: NSCoder) { + super.init(coder: coder) + _init() + } + +} + +extension FamiliarFollowersDashboardView { + + private func _init() { + let stackView = UIStackView() + stackView.axis = .horizontal + stackView.spacing = 8 + + stackView.translatesAutoresizingMaskIntoConstraints = false + addSubview(stackView) + NSLayoutConstraint.activate([ + stackView.topAnchor.constraint(equalTo: topAnchor), + stackView.leadingAnchor.constraint(equalTo: leadingAnchor), + stackView.trailingAnchor.constraint(equalTo: trailingAnchor), + stackView.bottomAnchor.constraint(equalTo: bottomAnchor), + ]) + + avatarContainerView.translatesAutoresizingMaskIntoConstraints = false + stackView.addArrangedSubview(avatarContainerView) + avatarContainerViewWidthLayoutConstraint = avatarContainerView.widthAnchor.constraint(equalToConstant: 32).priority(.required - 1) + NSLayoutConstraint.activate([ + avatarContainerViewWidthLayoutConstraint, + avatarContainerView.heightAnchor.constraint(equalToConstant: 32).priority(.required - 1) + ]) + stackView.addArrangedSubview(descriptionLabel) + } + +} + + +#if DEBUG +import SwiftUI +struct FamiliarFollowersDashboardView_Preview: PreviewProvider { + static var previews: some View { + UIViewPreview { + FamiliarFollowersDashboardView() + } + } +} +#endif diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView+ViewModel.swift index 2151b55b0..eec57cb5a 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView+ViewModel.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView+ViewModel.swift @@ -18,7 +18,7 @@ extension NotificationView { public final class ViewModel: ObservableObject { public var disposeBag = Set() - let logger = Logger(subsystem: "StatusView", category: "ViewModel") + let logger = Logger(subsystem: "NotificationView", category: "ViewModel") @Published public var userIdentifier: UserIdentifier? // me diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+Configuration.swift index 3964099d8..350c43736 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+Configuration.swift @@ -10,6 +10,7 @@ import Combine import CoreDataStack import Meta import MastodonMeta +import MastodonSDK extension ProfileCardView { diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+ViewModel.swift index 5b6c4c59c..0003e82b6 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+ViewModel.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView+ViewModel.swift @@ -13,6 +13,7 @@ import AlamofireImage import CoreDataStack import MastodonLocalization import MastodonAsset +import MastodonSDK extension ProfileCardView { public class ViewModel: ObservableObject { @@ -44,6 +45,8 @@ extension ProfileCardView { @Published public var groupedAccessibilityLabel = "" + @Published public var familiarFollowers: Mastodon.Entity.FamiliarFollowers? + init() { backgroundColor = ThemeService.shared.currentTheme.value.systemBackgroundColor Publishers.CombineLatest( @@ -77,6 +80,7 @@ extension ProfileCardView.ViewModel { bindBio(view: view) bindRelationship(view: view) bindDashboard(view: view) + bindFamiliarFollowers(view: view) bindAccessibility(view: view) } @@ -189,6 +193,18 @@ extension ProfileCardView.ViewModel { .store(in: &disposeBag) } + private func bindFamiliarFollowers(view: ProfileCardView) { + $familiarFollowers + .sink { familiarFollowers in + view.familiarFollowersDashboardViewAdaptiveMarginContainerView.isHidden = familiarFollowers.flatMap { $0.accounts.isEmpty } ?? true + view.familiarFollowersDashboardView.configure(familiarFollowers: familiarFollowers) + } + .store(in: &disposeBag) + $backgroundColor + .assign(to: \.backgroundColor, on: view.familiarFollowersDashboardView.viewModel) + .store(in: &disposeBag) + } + private func bindAccessibility(view: ProfileCardView) { let authorAccessibilityLabel = Publishers.CombineLatest( $authorName, diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift index 07f441500..c0d74320d 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift @@ -94,6 +94,9 @@ public final class ProfileCardView: UIView { return button }() + let familiarFollowersDashboardViewAdaptiveMarginContainerView = AdaptiveMarginContainerView() + let familiarFollowersDashboardView = FamiliarFollowersDashboardView() + public private(set) lazy var viewModel: ViewModel = { let viewModel = ViewModel() viewModel.bind(view: self) @@ -126,7 +129,7 @@ extension ProfileCardView { bioMetaText.textView.isUserInteractionEnabled = false statusDashboardView.isUserInteractionEnabled = false - // container: V - [ bannerContainer | authorContainer | bioMetaText | infoContainer ] + // container: V - [ bannerContainer | authorContainer | bioMetaText | infoContainer | familiarFollowersDashboardView ] container.axis = .vertical container.spacing = 8 container.translatesAutoresizingMaskIntoConstraints = false @@ -211,7 +214,7 @@ extension ProfileCardView { container.addArrangedSubview(bioMetaTextAdaptiveMarginContainerView) container.setCustomSpacing(16, after: bioMetaTextAdaptiveMarginContainerView) - // infoContainer: H - [ statusDashboardView | (spacer) | relationshipActionButton ] + // infoContainer: H - [ statusDashboardView | (spacer) | relationshipActionButton] infoContainer.axis = .horizontal infoContainer.spacing = 8 infoContainerAdaptiveMarginContainerView.contentView = infoContainer @@ -237,6 +240,10 @@ extension ProfileCardView { relationshipActionButtonShadowContainer.widthAnchor.constraint(greaterThanOrEqualToConstant: ProfileCardView.friendshipActionButtonSize.width).priority(.required - 1), relationshipActionButtonShadowContainer.heightAnchor.constraint(equalToConstant: ProfileCardView.friendshipActionButtonSize.height).priority(.required - 1), ]) + + familiarFollowersDashboardViewAdaptiveMarginContainerView.contentView = familiarFollowersDashboardView + familiarFollowersDashboardViewAdaptiveMarginContainerView.margin = ProfileCardView.contentMargin + container.addArrangedSubview(familiarFollowersDashboardViewAdaptiveMarginContainerView) let bottomPadding = UIView() bottomPadding.translatesAutoresizingMaskIntoConstraints = false diff --git a/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift b/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift index c0204bc65..c2fdbc92b 100644 --- a/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift @@ -44,6 +44,11 @@ extension AvatarImageView { } } + private func setup(border: CornerConfiguration.Border?) { + layer.borderColor = border?.color.cgColor + layer.borderWidth = border?.width ?? .zero + } + } extension AvatarImageView { @@ -107,9 +112,14 @@ extension AvatarImageView { extension AvatarImageView { public struct CornerConfiguration { public let corner: Corner + public let border: Border? - public init(corner: Corner = .circle) { + public init( + corner: Corner = .circle, + border: Border? = nil + ) { self.corner = corner + self.border = border } public enum Corner { @@ -117,10 +127,16 @@ extension AvatarImageView { case fixed(radius: CGFloat) case scale(ratio: Int = 4) // width / ratio } + + public struct Border { + public let color: UIColor + public let width: CGFloat + } } public func configure(cornerConfiguration: CornerConfiguration) { self.cornerConfiguration = cornerConfiguration setup(corner: cornerConfiguration.corner) + setup(border: cornerConfiguration.border) } } diff --git a/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell+Configuration.swift index 061af0f48..1274b7960 100644 --- a/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell+Configuration.swift @@ -7,6 +7,7 @@ import UIKit import CoreDataStack +import MastodonSDK extension ProfileCardTableViewCell { From b0edbb9db0da3272759cd81ed949f754faf8b1e8 Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 16 May 2022 19:43:20 +0800 Subject: [PATCH 406/571] chore: update version to 1.4.2 (128) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 +-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 34 insertions(+), 34 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index a187ca268..bbb286601 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 478c4329e..5d58c114f 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4756,7 +4756,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4786,7 +4786,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4894,11 +4894,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 127; + DYLIB_CURRENT_VERSION = 128; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -4925,11 +4925,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 127; + DYLIB_CURRENT_VERSION = 128; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5020,7 +5020,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5088,11 +5088,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 127; + DYLIB_CURRENT_VERSION = 128; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5117,7 +5117,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5140,7 +5140,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5164,7 +5164,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5188,7 +5188,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5212,7 +5212,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5236,7 +5236,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5260,7 +5260,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5347,7 +5347,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5414,11 +5414,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 127; + DYLIB_CURRENT_VERSION = 128; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5442,7 +5442,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5465,7 +5465,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5489,7 +5489,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5513,7 +5513,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5536,7 +5536,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 127; + CURRENT_PROJECT_VERSION = 128; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index aa35ed3c6..63b70f714 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 20 + 29 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 21 + 27 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 22 + 28 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 0c3dea8f5..57022b347 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 127 + 128 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index f1f54a5e0..abe1e118c 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index a187ca268..bbb286601 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index a187ca268..bbb286601 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index fa2356db2..3ecf003ac 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 95cd141f7..706d194a1 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 127 + 128 NSExtension NSExtensionAttributes From 01dbbace321946151b9f7640f885f52c7efa7e87 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 16 May 2022 18:43:24 +0200 Subject: [PATCH 407/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index 5b6161f85..c973e5b2f 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -348,7 +348,7 @@ "Publishing": "กำลังเผยแพร่โพสต์...", "accessibility": { "logo_label": "ปุ่มโลโก้", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_hint": "แตะเพื่อเลื่อนไปยังด้านบนสุดและแตะอีกครั้งไปยังตำแหน่งที่ตั้งก่อนหน้า" } } }, From bfd892e84ea128dc1014b513d676cfd57cb81c75 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 17:03:19 +0800 Subject: [PATCH 408/571] fix: status view header icon layout trimmed under "Accessibility XXXL" size issue --- .../MastodonUI/View/Content/StatusView.swift | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift index 7b96fe0b5..6d105a760 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift @@ -405,18 +405,19 @@ extension StatusView.Style { NSLayoutConstraint.activate([ statusView.headerIconImageView.leadingAnchor.constraint(equalTo: statusView.headerContainerView.leadingAnchor), statusView.headerIconImageView.heightAnchor.constraint(equalTo: statusView.headerInfoLabel.heightAnchor, multiplier: 1.0).priority(.required - 1), - statusView.headerIconImageView.widthAnchor.constraint(equalTo: statusView.headerIconImageView.heightAnchor, multiplier: 1.0).priority(.required - 1), + statusView.headerIconImageView.widthAnchor.constraint(equalTo: statusView.headerInfoLabel.heightAnchor, multiplier: 1.0).priority(.required - 1), statusView.headerInfoLabel.topAnchor.constraint(equalTo: statusView.headerContainerView.topAnchor), statusView.headerInfoLabel.leadingAnchor.constraint(equalTo: statusView.headerIconImageView.trailingAnchor, constant: 6), statusView.headerInfoLabel.trailingAnchor.constraint(equalTo: statusView.headerContainerView.trailingAnchor), statusView.headerInfoLabel.bottomAnchor.constraint(equalTo: statusView.headerContainerView.bottomAnchor), statusView.headerInfoLabel.centerYAnchor.constraint(equalTo: statusView.headerIconImageView.centerYAnchor), ]) - statusView.headerInfoLabel.setContentHuggingPriority(.required, for: .vertical) - statusView.headerIconImageView.setContentHuggingPriority(.defaultLow, for: .vertical) - statusView.headerIconImageView.setContentHuggingPriority(.defaultLow, for: .horizontal) - statusView.headerIconImageView.setContentCompressionResistancePriority(.defaultLow, for: .vertical) - statusView.headerIconImageView.setContentCompressionResistancePriority(.defaultLow, for: .horizontal) + statusView.headerInfoLabel.setContentHuggingPriority(.required - 1, for: .vertical) + statusView.headerInfoLabel.setContentCompressionResistancePriority(.required - 1, for: .vertical) + statusView.headerIconImageView.setContentHuggingPriority(.defaultLow - 100, for: .vertical) + statusView.headerIconImageView.setContentHuggingPriority(.defaultLow - 100, for: .horizontal) + statusView.headerIconImageView.setContentCompressionResistancePriority(.defaultLow - 100, for: .vertical) + statusView.headerIconImageView.setContentCompressionResistancePriority(.defaultLow - 100, for: .horizontal) // author container: H - [ avatarButton | author meta container | contentWarningToggleButton ] statusView.authorAdaptiveMarginContainerView.contentView = statusView.authorContainerView From ce59a18d3e5c62c345bdbad4d57e90c081910c2d Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 17:40:19 +0800 Subject: [PATCH 409/571] feat: add custom emoji and Dynamic Type supports for familiar followers component --- .../CoreDataStack/MastodonEmoji.swift | 11 +++ .../MastodonUI/Extension/MetaLabel.swift | 14 ++++ ...FollowersDashboardView+Configuration.swift | 7 ++ ...liarFollowersDashboardView+ViewModel.swift | 71 +++++++++++++++---- .../FamiliarFollowersDashboardView.swift | 23 +++--- .../View/Content/ProfileCardView.swift | 6 +- .../View/ImageView/AvatarImageView.swift | 6 +- 7 files changed, 106 insertions(+), 32 deletions(-) diff --git a/MastodonSDK/Sources/MastodonUI/Extension/CoreDataStack/MastodonEmoji.swift b/MastodonSDK/Sources/MastodonUI/Extension/CoreDataStack/MastodonEmoji.swift index 4f097759f..8e2558bb7 100644 --- a/MastodonSDK/Sources/MastodonUI/Extension/CoreDataStack/MastodonEmoji.swift +++ b/MastodonSDK/Sources/MastodonUI/Extension/CoreDataStack/MastodonEmoji.swift @@ -8,6 +8,7 @@ import Foundation import CoreDataStack import MastodonMeta +import MastodonSDK extension Collection where Element == MastodonEmoji { public var asDictionary: MastodonContent.Emojis { @@ -18,3 +19,13 @@ extension Collection where Element == MastodonEmoji { return dictionary } } + +extension Collection where Element == Mastodon.Entity.Emoji { + public var asDictionary: MastodonContent.Emojis { + var dictionary: MastodonContent.Emojis = [:] + for emoji in self { + dictionary[emoji.shortcode] = emoji.url + } + return dictionary + } +} diff --git a/MastodonSDK/Sources/MastodonUI/Extension/MetaLabel.swift b/MastodonSDK/Sources/MastodonUI/Extension/MetaLabel.swift index 24a4027f5..41fbfe40c 100644 --- a/MastodonSDK/Sources/MastodonUI/Extension/MetaLabel.swift +++ b/MastodonSDK/Sources/MastodonUI/Extension/MetaLabel.swift @@ -22,6 +22,7 @@ extension MetaLabel { case profileFieldValue case profileCardName case profileCardUsername + case profileCardFamiliarFollowerFooter case recommendAccountName case titleView case settingTableFooter @@ -90,6 +91,14 @@ extension MetaLabel { font = .systemFont(ofSize: 15, weight: .regular) textColor = Asset.Colors.Label.secondary.color + case .profileCardFamiliarFollowerFooter: + font = UIFontMetrics(forTextStyle: .footnote).scaledFont(for: .systemFont(ofSize: 13, weight: .regular), maximumPointSize: 26) + textColor = Asset.Colors.Label.secondary.color + numberOfLines = 2 + textContainer.maximumNumberOfLines = 2 + paragraphStyle.lineSpacing = 0 + paragraphStyle.paragraphSpacing = 0 + case .titleView: font = .systemFont(ofSize: 17, weight: .semibold) textColor = Asset.Colors.Label.primary.color @@ -106,18 +115,23 @@ extension MetaLabel { numberOfLines = 0 textContainer.maximumNumberOfLines = 0 paragraphStyle.alignment = .center + case .autoCompletion: font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 17, weight: .semibold), maximumPointSize: 22) textColor = Asset.Colors.brandBlue.color + case .accountListName: font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 17, weight: .regular), maximumPointSize: 22) textColor = Asset.Colors.Label.primary.color + case .accountListUsername: font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 15, weight: .regular), maximumPointSize: 20) textColor = Asset.Colors.Label.secondary.color + case .sidebarHeadline(let isSelected): font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 22, weight: .regular), maximumPointSize: 20) textColor = isSelected ? .white : Asset.Colors.Label.primary.color + case .sidebarSubheadline(let isSelected): font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular), maximumPointSize: 18) textColor = isSelected ? .white : Asset.Colors.Label.secondary.color diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift index 63c962b77..782070232 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift @@ -16,5 +16,12 @@ extension FamiliarFollowersDashboardView { viewModel.avatarURLs = accounts.map { $0.avatarImageURL() } viewModel.names = accounts.map { $0.displayNameWithFallback } + viewModel.emojis = { + var array: [Mastodon.Entity.Emoji] = [] + for account in accounts { + array.append(contentsOf: account.emojis ?? []) + } + return array.asDictionary + }() } } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift index 4ab9200c3..cee71a45f 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift @@ -8,6 +8,8 @@ import os.log import UIKit import Combine +import CoreDataStack +import MastodonMeta extension FamiliarFollowersDashboardView { public final class ViewModel: ObservableObject { @@ -17,47 +19,86 @@ extension FamiliarFollowersDashboardView { @Published var avatarURLs: [URL?] = [] @Published var names: [String] = [] + @Published var emojis: MastodonContent.Emojis = [:] @Published var backgroundColor: UIColor? } } extension FamiliarFollowersDashboardView.ViewModel { func bind(view: FamiliarFollowersDashboardView) { - Publishers.CombineLatest( + Publishers.CombineLatest3( $avatarURLs, - $backgroundColor + $backgroundColor, + UIContentSizeCategory.publisher ) - .sink { avatarURLs, backgroundColor in + .sink { avatarURLs, backgroundColor, contentSizeCategory in view.avatarContainerView.subviews.forEach { $0.removeFromSuperview() } + + let initialOffset = min(12 * 1.5, UIFontMetrics(forTextStyle: .headline).scaledValue(for: 12)) // max 1.5x + let offset = min(20 * 1.5, UIFontMetrics(forTextStyle: .headline).scaledValue(for: 20)) + let dimension = min(32 * 1.5, UIFontMetrics(forTextStyle: .headline).scaledValue(for: 32)) + let borderWidth = min(1.5, UIFontMetrics.default.scaledValue(for: 1)) + for (i, avatarURL) in avatarURLs.enumerated() { let avatarButton = AvatarButton() - let origin = CGPoint(x: 20 * i, y: 0) - let size = CGSize(width: 32, height: 32) + let origin = CGPoint(x: offset * CGFloat(i), y: 0) + let size = CGSize(width: dimension, height: dimension) avatarButton.size = size avatarButton.frame = CGRect(origin: origin, size: size) view.avatarContainerView.addSubview(avatarButton) - avatarButton.avatarImageView.configure(configuration: .init(url: avatarURL)) + avatarButton.avatarImageView.configure( + configuration: .init( + url: avatarURL, + placeholder: .placeholder(color: .systemGray3) + ) + ) avatarButton.avatarImageView.configure( cornerConfiguration: .init( corner: .fixed(radius: 7), border: .init( color: backgroundColor ?? .clear, - width: 1 + width: borderWidth ) ) ) } - view.avatarContainerViewWidthLayoutConstraint.constant = CGFloat(12 + 20 * avatarURLs.count) + let avatarContainerViewWidth = initialOffset + offset * CGFloat(avatarURLs.count) + view.avatarContainerViewWidthLayoutConstraint.constant = avatarContainerViewWidth + view.avatarContainerViewHeightLayoutConstraint.constant = dimension } .store(in: &disposeBag) - $names - .sink { names in - // TODO: i18n - let description = "Followed by" + names.joined(separator: ", ") - view.descriptionLabel.text = description - } - .store(in: &disposeBag) + Publishers.CombineLatest( + $names, + $emojis + ) + .sink { names, emojis in + let content: String = { + guard names.count > 0 else { return " " } + + let count = names.count + let firstTwoNames = names.prefix(2).joined(separator: ", ") + + switch names.count { + case 1..<3: + return "Followed by \(firstTwoNames)" + case 3: + return "Followed by \(firstTwoNames), and another mutual" + default: + let remains = count - 2 + return "Followed by \(firstTwoNames), and \(remains) mutuals" + } + }() + let document = MastodonContent(content: content, emojis: emojis) + do { + let metaContent = try MastodonMetaContent.convert(document: document) + view.descriptionMetaLabel.configure(content: metaContent) + } catch { + assertionFailure() + view.descriptionMetaLabel.configure(content: PlaintextMetaContent(string: content)) + } + } + .store(in: &disposeBag) } } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift index 8bd14220c..50bde02ba 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift @@ -7,20 +7,15 @@ import UIKit import MastodonAsset +import MetaTextKit public final class FamiliarFollowersDashboardView: UIView { let avatarContainerView = UIView() var avatarContainerViewWidthLayoutConstraint: NSLayoutConstraint! + var avatarContainerViewHeightLayoutConstraint: NSLayoutConstraint! - let descriptionLabel: UILabel = { - let label = UILabel() - label.font = UIFontMetrics(forTextStyle: .subheadline).scaledFont(for: .systemFont(ofSize: 13, weight: .regular)) - label.text = "Followed by Pixelflowers, Lee’s Food, and 4 other mutuals" - label.textColor = Asset.Colors.Label.secondary.color - label.numberOfLines = 0 - return label - }() + let descriptionMetaLabel = MetaLabel(style: .profileCardFamiliarFollowerFooter) public private(set) lazy var viewModel: ViewModel = { let viewModel = ViewModel() @@ -28,10 +23,6 @@ public final class FamiliarFollowersDashboardView: UIView { return viewModel }() - public func prepareForReuse() { - - } - override init(frame: CGRect) { super.init(frame: frame) _init() @@ -49,6 +40,7 @@ extension FamiliarFollowersDashboardView { private func _init() { let stackView = UIStackView() stackView.axis = .horizontal + stackView.alignment = .center stackView.spacing = 8 stackView.translatesAutoresizingMaskIntoConstraints = false @@ -63,11 +55,14 @@ extension FamiliarFollowersDashboardView { avatarContainerView.translatesAutoresizingMaskIntoConstraints = false stackView.addArrangedSubview(avatarContainerView) avatarContainerViewWidthLayoutConstraint = avatarContainerView.widthAnchor.constraint(equalToConstant: 32).priority(.required - 1) + avatarContainerViewHeightLayoutConstraint = avatarContainerView.heightAnchor.constraint(equalToConstant: 32).priority(.required - 1) NSLayoutConstraint.activate([ avatarContainerViewWidthLayoutConstraint, - avatarContainerView.heightAnchor.constraint(equalToConstant: 32).priority(.required - 1) + avatarContainerViewHeightLayoutConstraint ]) - stackView.addArrangedSubview(descriptionLabel) + stackView.addArrangedSubview(descriptionMetaLabel) + descriptionMetaLabel.setContentHuggingPriority(.required - 1, for: .vertical) + descriptionMetaLabel.setContentCompressionResistancePriority(.required - 1, for: .vertical) } } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift index c0d74320d..9b5b06fe7 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift @@ -166,7 +166,8 @@ extension ProfileCardView { authorContainerAdaptiveMarginContainerView.contentView = authorContainer authorContainerAdaptiveMarginContainerView.margin = ProfileCardView.contentMargin container.addArrangedSubview(authorContainerAdaptiveMarginContainerView) - + container.setCustomSpacing(6, after: bannerContainer) + // avatarPlaceholder let avatarPlaceholder = UIView() avatarPlaceholder.translatesAutoresizingMaskIntoConstraints = false @@ -220,6 +221,7 @@ extension ProfileCardView { infoContainerAdaptiveMarginContainerView.contentView = infoContainer infoContainerAdaptiveMarginContainerView.margin = ProfileCardView.contentMargin container.addArrangedSubview(infoContainerAdaptiveMarginContainerView) + container.setCustomSpacing(16, after: infoContainerAdaptiveMarginContainerView) infoContainer.addArrangedSubview(statusDashboardView) let infoContainerSpacer = UIView() @@ -249,7 +251,7 @@ extension ProfileCardView { bottomPadding.translatesAutoresizingMaskIntoConstraints = false container.addArrangedSubview(bottomPadding) NSLayoutConstraint.activate([ - bottomPadding.heightAnchor.constraint(equalToConstant: 16).priority(.required - 10), + bottomPadding.heightAnchor.constraint(equalToConstant: 8).priority(.required - 10), ]) relationshipActionButton.addTarget(self, action: #selector(ProfileCardView.relationshipActionButtonDidPressed(_:)), for: .touchUpInside) diff --git a/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift b/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift index c2fdbc92b..0406b17f6 100644 --- a/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/ImageView/AvatarImageView.swift @@ -103,7 +103,11 @@ extension AvatarImageView { return ScaledToSizeFilter(size: self.frame.size) }() - af.setImage(withURL: url, filter: filter) + af.setImage( + withURL: url, + placeholderImage: configuration.placeholder, + filter: filter + ) } } From c603406d5403bf6597e5dd5f76d650b78c083edd Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 17:41:17 +0800 Subject: [PATCH 410/571] chore: add familiar followers i18n words --- Localization/Localizable.stringsdict | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/Localization/Localizable.stringsdict b/Localization/Localizable.stringsdict index 0b9a6ff60..051bb50ef 100644 --- a/Localization/Localizable.stringsdict +++ b/Localization/Localizable.stringsdict @@ -68,6 +68,37 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + Followed by %1$@ + one + Followed by %1$@, and another mutual + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From f723653c5ddf0e770c758a4e64b421137b2a5683 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 17:41:17 +0800 Subject: [PATCH 411/571] chore: add familiar followers i18n words (cherry picked from commit c603406d5403bf6597e5dd5f76d650b78c083edd) --- Localization/Localizable.stringsdict | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/Localization/Localizable.stringsdict b/Localization/Localizable.stringsdict index 0b9a6ff60..051bb50ef 100644 --- a/Localization/Localizable.stringsdict +++ b/Localization/Localizable.stringsdict @@ -68,6 +68,37 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + Followed by %1$@ + one + Followed by %1$@, and another mutual + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From ae88f1484150b11813baca160b2e05f5e4e69ee1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:42 +0200 Subject: [PATCH 412/571] New translations Localizable.stringsdict (Basque) --- .../input/eu.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict index 5de100844..0159a7da9 100644 --- a/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/eu.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld karaktere + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 7cde72f912db12672cb9c73c375ee6a5bfe36465 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:44 +0200 Subject: [PATCH 413/571] New translations Localizable.stringsdict (Korean) --- .../input/ko.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict index c5ecb53b3..d03431fa0 100644 --- a/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ko.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From f6eb061cf11af3a92be44967efae1389c6ceec97 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:45 +0200 Subject: [PATCH 414/571] New translations Localizable.stringsdict (Kurmanji (Kurdish)) --- .../input/kmr.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict index 7b2e40773..966a6141a 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tîp + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From f8136fefe6ef16b5885d1fe7b1f0e66d991fe524 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:46 +0200 Subject: [PATCH 415/571] New translations Localizable.stringsdict (Welsh) --- .../input/cy.lproj/Localizable.stringsdict | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict index 54805560b..038eaffda 100644 --- a/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/cy.lproj/Localizable.stringsdict @@ -74,6 +74,49 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + zero + + one + + two + + few + + many + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + Followed by %1$@, and %ld mutuals + one + Followed by %1$@, and another mutual + two + Followed by %1$@, and %ld mutuals + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From ad2b54f78517019eb89f1c0506ee9df228cd28c7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:47 +0200 Subject: [PATCH 416/571] New translations Localizable.stringsdict (English, United States) --- .../input/en-US.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/en-US.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 9c286161c84db40583d5677d0ca9c6d648ea45bd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:48 +0200 Subject: [PATCH 417/571] New translations Localizable.stringsdict (Hindi) --- .../input/hi.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/hi.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 8ded4fb0cdd6e98228906f4f1b55a2c1a119e4ca Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:49 +0200 Subject: [PATCH 418/571] New translations Localizable.stringsdict (Thai) --- .../input/th.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict index 4ce28cf72..edd0e18f9 100644 --- a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld ตัวอักษร + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From a40570ed2f8fe82773b490d1807a216f73a65f53 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:50 +0200 Subject: [PATCH 419/571] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es-AR.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict index 4ded25821..f853165bb 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 67b84ecd914307a9487fe4e18a17f93e3242e801 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:51 +0200 Subject: [PATCH 420/571] New translations Localizable.stringsdict (Indonesian) --- .../input/id.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict index 43d192464..2635defb8 100644 --- a/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/id.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld karakter + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 93e7c42d4064cac96b2315ec2286dafdec0d4889 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:52 +0200 Subject: [PATCH 421/571] New translations Localizable.stringsdict (Vietnamese) --- .../input/vi.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict index 886021c08..760e7363e 100644 --- a/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld ký tự + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 3746fbf92a3597643686aa9f1ed39eb5b182c523 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:53 +0200 Subject: [PATCH 422/571] New translations Localizable.stringsdict (English) --- .../input/en.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/en.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 3d068f7b0273a80698c18b9106141cf028690ae7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:54 +0200 Subject: [PATCH 423/571] New translations Localizable.stringsdict (Chinese Traditional) --- .../zh-Hant.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict index fe44cdfd0..7fa90b502 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 個字 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From b478d3df7993175c98cb4245a42e34e7a9a82131 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:55 +0200 Subject: [PATCH 424/571] New translations Localizable.stringsdict (Chinese Simplified) --- .../zh-Hans.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict index 1ec142a7f..f747bfd8a 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 个字符 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 6e8a9888e83e6ec70cfb03d08b1b9421f07e2b7b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:56 +0200 Subject: [PATCH 425/571] New translations Localizable.stringsdict (Russian) --- .../input/ru.lproj/Localizable.stringsdict | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict index 026815a8e..65939399d 100644 --- a/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict @@ -62,6 +62,41 @@ %ld символа осталось + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + few + + many + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 574d19cdb31266a1bbb49e29cb8aba9b1ab9c6ba Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:57 +0200 Subject: [PATCH 426/571] New translations Localizable.stringsdict (Portuguese) --- .../input/pt.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 11600a035ed4b5450a8d823f81c6fdedd94a9fd6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:50:59 +0200 Subject: [PATCH 427/571] New translations Localizable.stringsdict (Dutch) --- .../input/nl.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict index e6f9353de..314600ff7 100644 --- a/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/nl.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tekens + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 3cfd5f7ba620ad0286a69e6d57c96999b021a717 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:01 +0200 Subject: [PATCH 428/571] New translations Localizable.stringsdict (Japanese) --- .../input/ja.lproj/Localizable.stringsdict | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict index 87e4f8a5e..054b8cded 100644 --- a/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ja.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 文字 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From df771359956225c152d1634690b93ed49aac6b95 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:02 +0200 Subject: [PATCH 429/571] New translations Localizable.stringsdict (German) --- .../input/de.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict index 36fb9f19e..3ea0fd0e3 100644 --- a/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/de.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld Zeichen + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 4c86017c19cb6b8cbe1ea8475c58b1c07c928f1d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:03 +0200 Subject: [PATCH 430/571] New translations Localizable.stringsdict (Italian) --- .../input/it.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict index 423ca4104..148a2181f 100644 --- a/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caratteri + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From e558a76f6e789bbdaf83ea5d0565e2a970aff4b4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:04 +0200 Subject: [PATCH 431/571] New translations Localizable.stringsdict (Danish) --- .../input/da.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/da.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From a0ba677fc62f5bd470fb8cad6a662ae6d8f716ea Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:05 +0200 Subject: [PATCH 432/571] New translations Localizable.stringsdict (Catalan) --- .../input/ca.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict index c83c65883..5ade72aa4 100644 --- a/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caràcters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 3fcf542654d3bc34c657a998995f9fa23f3681cc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:06 +0200 Subject: [PATCH 433/571] New translations Localizable.stringsdict (Arabic) --- .../input/ar.lproj/Localizable.stringsdict | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict index 61ba17c28..12990353a 100644 --- a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict @@ -74,6 +74,49 @@ %ld حَرف + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + zero + + one + + two + + few + + many + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + Followed by %1$@, and %ld mutuals + one + Followed by %1$@, and another mutual + two + Followed by %1$@, and %ld mutuals + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 400a9580d56cc863a670dd2c0cb54f862cde9957 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:07 +0200 Subject: [PATCH 434/571] New translations Localizable.stringsdict (Romanian) --- .../input/ro.lproj/Localizable.stringsdict | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict index 457dcd5e1..7ae5a1c79 100644 --- a/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ro.lproj/Localizable.stringsdict @@ -56,6 +56,37 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + few + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + few + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 4d838324dda9459eef1cf0a84e9143695d788667 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:09 +0200 Subject: [PATCH 435/571] New translations Localizable.stringsdict (Sorani (Kurdish)) --- .../input/ckb.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict index 9d9adb118..001a8a608 100644 --- a/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ckb.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld نووسە + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 12c851b3a49ed36ac7f13f47f38eafd7938b95ee Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:10 +0200 Subject: [PATCH 436/571] New translations Localizable.stringsdict (Scottish Gaelic) --- .../input/gd.lproj/Localizable.stringsdict | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict index c7bc77310..f041677fa 100644 --- a/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gd.lproj/Localizable.stringsdict @@ -62,6 +62,41 @@ %ld caractar + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + two + + few + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + two + Followed by %1$@, and %ld mutuals + few + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 6b6393a4ad8ed14cab37801d1ad21e04ec1f5257 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:11 +0200 Subject: [PATCH 437/571] New translations Localizable.stringsdict (Swedish) --- .../input/sv.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict index f20a26254..0d6ddd579 100644 --- a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tecken + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From bef3930be1bb8fcc13b16ed5a4b96246ac7a1f21 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:12 +0200 Subject: [PATCH 438/571] New translations Localizable.stringsdict (Portuguese, Brazilian) --- .../input/pt-BR.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict index 688ee2b14..ba1532740 100644 --- a/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt-BR.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 3cc911eeb3610490b59c20bbe485555a46f9871d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:13 +0200 Subject: [PATCH 439/571] New translations Localizable.stringsdict (Turkish) --- .../input/tr.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict index a512c4a7f..3da12ee4e 100644 --- a/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/tr.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld karakter + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 7e325d0986ba2fcbb8a94bce5db919d1ccd446c1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:15 +0200 Subject: [PATCH 440/571] New translations Localizable.stringsdict (Kabyle) --- .../input/kab.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict index 0fde8d68f..09e3645f3 100644 --- a/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kab.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld yisekkilen + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From ae498cb24d370f1e7434a8835a35c39cf42f706d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:16 +0200 Subject: [PATCH 441/571] New translations Localizable.stringsdict (Galician) --- .../input/gl.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict index abd72c1b9..e36af3443 100644 --- a/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 1ae21c9a1855b6a1d81f48806791fbf84a50212c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:17 +0200 Subject: [PATCH 442/571] New translations Localizable.stringsdict (Spanish) --- .../input/es.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict index 31cd9d237..05bcff142 100644 --- a/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 49f842e9428cbb76b446767280751b0414ac89b8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:18 +0200 Subject: [PATCH 443/571] New translations Localizable.stringsdict (French) --- .../input/fr.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict index d251c82f3..50e1b8326 100644 --- a/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caractères + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 502ca63cae3bbd4c3b3ce0ff62f5d81f5745eca1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 11:51:19 +0200 Subject: [PATCH 444/571] New translations Localizable.stringsdict (Finnish) --- .../input/fi.lproj/Localizable.stringsdict | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict index 7fa6b5a64..8048edf2d 100644 --- a/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fi.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld merkkiä + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From 793859d677b451c0c833505914ad7ee26d4a8caa Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 12:49:17 +0200 Subject: [PATCH 445/571] New translations app.json (Galician) --- Localization/StringsConvertor/input/gl.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/gl.lproj/app.json b/Localization/StringsConvertor/input/gl.lproj/app.json index 5eaf5b06d..b80715ea7 100644 --- a/Localization/StringsConvertor/input/gl.lproj/app.json +++ b/Localization/StringsConvertor/input/gl.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "Imos crear a túa conta en %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Imos crear a túa conta en %s", "input": { "avatar": { "delete": "Eliminar" @@ -322,7 +322,7 @@ "confirm_email": { "title": "O último detalle.", "subtitle": "Preme na ligazón que che enviamos ao email para verificar a conta.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Preme na ligazón que che enviamos ao email para verificar a conta", "button": { "open_email_app": "Abrir app de email", "resend": "Reenviar" From edb25b0c361870bfd396f688f3633fdda332c3e3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 12:49:19 +0200 Subject: [PATCH 446/571] New translations Localizable.stringsdict (Galician) --- .../StringsConvertor/input/gl.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict index e36af3443..ff9d87c18 100644 --- a/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gl.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Seguida por %1$@, e outro común other - Followed by %1$@, and %ld mutuals + Seguida por %1$@, e %ld comúns plural.count.metric_formatted.post From 57c40b90506adde5c36f41321de72125de5d51d6 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 18:49:29 +0800 Subject: [PATCH 447/571] feat: add familiar followers list --- Mastodon.xcodeproj/project.pbxproj | 24 +++++ .../xcschemes/xcschememanagement.plist | 6 +- Mastodon/Coordinator/SceneCoordinator.swift | 5 ++ ...oGenerateTableViewDelegate.generated.swift | 1 + .../DiscoveryForYouViewController.swift | 31 ++++++- ...ersViewController+DataSourceProvider.swift | 34 +++++++ .../FamiliarFollowersViewController.swift | 89 +++++++++++++++++++ .../FamiliarFollowersViewModel+Diffable.swift | 39 ++++++++ .../FamiliarFollowersViewModel.swift | 49 ++++++++++ .../Follower/FollowerListViewController.swift | 3 + .../FollowingListViewController.swift | 9 ++ .../FamiliarFollowersDashboardView.swift | 2 + .../View/Content/ProfileCardView.swift | 15 +++- .../ProfileCardTableViewCell.swift | 7 ++ 14 files changed, 309 insertions(+), 5 deletions(-) create mode 100644 Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController+DataSourceProvider.swift create mode 100644 Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift create mode 100644 Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel+Diffable.swift create mode 100644 Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel.swift diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 5d58c114f..69fb67731 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -289,6 +289,10 @@ DB552D4F26BBD10C00E481F6 /* OrderedCollections in Frameworks */ = {isa = PBXBuildFile; productRef = DB552D4E26BBD10C00E481F6 /* OrderedCollections */; }; DB564BD3269F3B35001E39A7 /* StatusFilterService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB564BD2269F3B35001E39A7 /* StatusFilterService.swift */; }; DB59F10E25EF724F001F1DAB /* APIService+Poll.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB59F10D25EF724F001F1DAB /* APIService+Poll.swift */; }; + DB5B549A2833A60400DEF8B2 /* FamiliarFollowersViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54992833A60400DEF8B2 /* FamiliarFollowersViewController.swift */; }; + DB5B549D2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B549C2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift */; }; + DB5B549F2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B549E2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift */; }; + DB5B54A12833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54A02833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift */; }; DB5B7295273112B100081888 /* FollowingListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B7294273112B100081888 /* FollowingListViewController.swift */; }; DB5B7298273112C800081888 /* FollowingListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B7297273112C800081888 /* FollowingListViewModel.swift */; }; DB5B729C273113C200081888 /* FollowingListViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B729B273113C200081888 /* FollowingListViewModel+Diffable.swift */; }; @@ -1042,6 +1046,10 @@ DB519B17281BCC2F00F0C99D /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = tr; path = tr.lproj/Intents.stringsdict; sourceTree = ""; }; DB564BD2269F3B35001E39A7 /* StatusFilterService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusFilterService.swift; sourceTree = ""; }; DB59F10D25EF724F001F1DAB /* APIService+Poll.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "APIService+Poll.swift"; sourceTree = ""; }; + DB5B54992833A60400DEF8B2 /* FamiliarFollowersViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FamiliarFollowersViewController.swift; sourceTree = ""; }; + DB5B549C2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FamiliarFollowersViewModel.swift; sourceTree = ""; }; + DB5B549E2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FamiliarFollowersViewModel+Diffable.swift"; sourceTree = ""; }; + DB5B54A02833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FamiliarFollowersViewController+DataSourceProvider.swift"; sourceTree = ""; }; DB5B7294273112B100081888 /* FollowingListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowingListViewController.swift; sourceTree = ""; }; DB5B7297273112C800081888 /* FollowingListViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowingListViewModel.swift; sourceTree = ""; }; DB5B729B273113C200081888 /* FollowingListViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FollowingListViewModel+Diffable.swift"; sourceTree = ""; }; @@ -2443,6 +2451,17 @@ path = View; sourceTree = ""; }; + DB5B549B2833A60600DEF8B2 /* FamiliarFollowers */ = { + isa = PBXGroup; + children = ( + DB5B54992833A60400DEF8B2 /* FamiliarFollowersViewController.swift */, + DB5B54A02833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift */, + DB5B549C2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift */, + DB5B549E2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift */, + ); + path = FamiliarFollowers; + sourceTree = ""; + }; DB5B7296273112B400081888 /* Following */ = { isa = PBXGroup; children = ( @@ -2944,6 +2963,7 @@ DBE3CDF1261C6B3100430CC6 /* Favorite */, DB6B74F0272FB55400C70B6E /* Follower */, DB5B7296273112B400081888 /* Following */, + DB5B549B2833A60600DEF8B2 /* FamiliarFollowers */, DBFEEC97279BDC6A004F81DD /* About */, DB9D6BFE25E4F5940051B173 /* ProfileViewController.swift */, DBB5255D2611F07A002F1F29 /* ProfileViewModel.swift */, @@ -4015,6 +4035,7 @@ 0FAA101C25E10E760017CCDE /* UIFont.swift in Sources */, 2D38F1D525CD465300561493 /* HomeTimelineViewController.swift in Sources */, DB6180E926391BDF0018D199 /* MediaHostToMediaPreviewViewControllerAnimatedTransitioning.swift in Sources */, + DB5B549F2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift in Sources */, DB6B351E2601FAEE00DC1E11 /* ComposeStatusAttachmentCollectionViewCell.swift in Sources */, DB8F7076279E954700E1225B /* DataSourceFacade+Follow.swift in Sources */, DB36679F268ABAF20027D07F /* ComposeStatusAttachmentSection.swift in Sources */, @@ -4045,6 +4066,7 @@ DB98EB5327B0F9890082E365 /* ReportHeadlineTableViewCell.swift in Sources */, DB5B729C273113C200081888 /* FollowingListViewModel+Diffable.swift in Sources */, DB9E0D6F25EE008500CFDD76 /* UIInterpolatingMotionEffect.swift in Sources */, + DB5B549D2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift in Sources */, DBB9759C262462E1004620BD /* ThreadMetaView.swift in Sources */, DB5B729E273113F300081888 /* FollowingListViewModel+State.swift in Sources */, 2DF123A725C3B0210020F248 /* ActiveLabel.swift in Sources */, @@ -4064,6 +4086,7 @@ DB6180E02639194B0018D199 /* MediaPreviewPagingViewController.swift in Sources */, DBE0822425CD3F1E00FD6BBD /* MastodonRegisterViewModel.swift in Sources */, 5B90C45E262599800002E742 /* SettingsViewModel.swift in Sources */, + DB5B54A12833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift in Sources */, 2D82B9FF25E7863200E36F0F /* OnboardingViewControllerAppearance.swift in Sources */, DB73BF43271192BB00781945 /* InstanceService.swift in Sources */, DB67D08427312970006A36CF /* APIService+Following.swift in Sources */, @@ -4239,6 +4262,7 @@ DBD376AC2692ECDB007FEC24 /* ThemePreference.swift in Sources */, DB4F097D26A03A5B00D62E92 /* SearchHistoryItem.swift in Sources */, DBD5B1FA27BD013700BD6B38 /* DataSourceProvider+StatusTableViewControllerNavigateable.swift in Sources */, + DB5B549A2833A60400DEF8B2 /* FamiliarFollowersViewController.swift in Sources */, DB3E6FE22806A50100B035AE /* DiscoveryHashtagsViewModel+Diffable.swift in Sources */, DB68046C2636DC9E00430867 /* MastodonNotification.swift in Sources */, DBAE3F9E2616E308004B8251 /* APIService+Mute.swift in Sources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 63b70f714..05d7ad139 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 29 + 34 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 27 + 33 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 28 + 35 SuppressBuildableAutocreation diff --git a/Mastodon/Coordinator/SceneCoordinator.swift b/Mastodon/Coordinator/SceneCoordinator.swift index d149e63a2..1039ff524 100644 --- a/Mastodon/Coordinator/SceneCoordinator.swift +++ b/Mastodon/Coordinator/SceneCoordinator.swift @@ -178,6 +178,7 @@ extension SceneCoordinator { case favorite(viewModel: FavoriteViewModel) case follower(viewModel: FollowerListViewModel) case following(viewModel: FollowingListViewModel) + case familiarFollowers(viewModel: FamiliarFollowersViewModel) // setting case settings(viewModel: SettingsViewModel) @@ -445,6 +446,10 @@ private extension SceneCoordinator { let _viewController = FollowingListViewController() _viewController.viewModel = viewModel viewController = _viewController + case .familiarFollowers(let viewModel): + let _viewController = FamiliarFollowersViewController() + _viewController.viewModel = viewModel + viewController = _viewController case .report(let viewModel): let _viewController = ReportViewController() _viewController.viewModel = viewModel diff --git a/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift b/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift index 7d6e01cf7..c0e489866 100644 --- a/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift +++ b/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift @@ -36,3 +36,4 @@ func tableView(_ tableView: UITableView, willPerformPreviewActionForMenuWith con + diff --git a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewController.swift b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewController.swift index b8b8f25a7..c7b8fb7f5 100644 --- a/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewController.swift +++ b/Mastodon/Scene/Discovery/ForYou/DiscoveryForYouViewController.swift @@ -122,7 +122,11 @@ extension DiscoveryForYouViewController: UITableViewDelegate { // MARK: - ProfileCardTableViewCellDelegate extension DiscoveryForYouViewController: ProfileCardTableViewCellDelegate { - func profileCardTableViewCell(_ cell: ProfileCardTableViewCell, profileCardView: ProfileCardView, relationshipButtonDidPressed button: ProfileRelationshipActionButton) { + func profileCardTableViewCell( + _ cell: ProfileCardTableViewCell, + profileCardView: ProfileCardView, + relationshipButtonDidPressed button: ProfileRelationshipActionButton + ) { guard let authenticationBox = viewModel.context.authenticationService.activeMastodonAuthenticationBox.value else { return } guard let indexPath = tableView.indexPath(for: cell) else { return } guard case let .user(record) = viewModel.diffableDataSource?.itemIdentifier(for: indexPath) else { return } @@ -135,6 +139,31 @@ extension DiscoveryForYouViewController: ProfileCardTableViewCellDelegate { ) } // end Task } + + func profileCardTableViewCell( + _ cell: ProfileCardTableViewCell, + profileCardView: ProfileCardView, + familiarFollowersDashboardViewDidPressed view: FamiliarFollowersDashboardView + ) { + guard let indexPath = tableView.indexPath(for: cell) else { return } + guard case let .user(record) = viewModel.diffableDataSource?.itemIdentifier(for: indexPath) else { return } + guard let user = record.object(in: context.managedObjectContext) else { return } + + let userID = user.id + let _familiarFollowers = viewModel.familiarFollowers.first(where: { $0.id == userID }) + guard let familiarFollowers = _familiarFollowers else { + assertionFailure() + return + } + + let familiarFollowersViewModel = FamiliarFollowersViewModel(context: context) + familiarFollowersViewModel.familiarFollowers = familiarFollowers + coordinator.present( + scene: .familiarFollowers(viewModel: familiarFollowersViewModel), + from: self, + transition: .show + ) + } } // MARK: ScrollViewContainer diff --git a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController+DataSourceProvider.swift b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController+DataSourceProvider.swift new file mode 100644 index 000000000..c014a7900 --- /dev/null +++ b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController+DataSourceProvider.swift @@ -0,0 +1,34 @@ +// +// FamiliarFollowersViewController+DataSourceProvider.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit + +extension FamiliarFollowersViewController: DataSourceProvider { + func item(from source: DataSourceItem.Source) async -> DataSourceItem? { + var _indexPath = source.indexPath + if _indexPath == nil, let cell = source.tableViewCell { + _indexPath = await self.indexPath(for: cell) + } + guard let indexPath = _indexPath else { return nil } + + guard let item = viewModel.diffableDataSource?.itemIdentifier(for: indexPath) else { + return nil + } + + switch item { + case .user(let record): + return .user(record: record) + default: + return nil + } + } + + @MainActor + private func indexPath(for cell: UITableViewCell) async -> IndexPath? { + return tableView.indexPath(for: cell) + } +} diff --git a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift new file mode 100644 index 000000000..bb1f46c20 --- /dev/null +++ b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift @@ -0,0 +1,89 @@ +// +// FamiliarFollowersViewController.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import os.log +import UIKit +import Combine + +final class FamiliarFollowersViewController: UIViewController, NeedsDependency { + + let logger = Logger(subsystem: "FamiliarFollowersViewController", category: "ViewController") + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var disposeBag = Set() + var viewModel: FamiliarFollowersViewModel! + + lazy var tableView: UITableView = { + let tableView = UITableView() + tableView.rowHeight = UITableView.automaticDimension + tableView.separatorStyle = .none + tableView.backgroundColor = .clear + return tableView + }() + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension FamiliarFollowersViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + title = "Followers you familiar" + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor + ThemeService.shared.currentTheme + .receive(on: DispatchQueue.main) + .sink { [weak self] theme in + guard let self = self else { return } + self.view.backgroundColor = theme.secondarySystemBackgroundColor + } + .store(in: &disposeBag) + + tableView.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(tableView) + NSLayoutConstraint.activate([ + tableView.topAnchor.constraint(equalTo: view.topAnchor), + tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor), + tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor), + tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + + tableView.delegate = self + viewModel.setupDiffableDataSource( + tableView: tableView, + userTableViewCellDelegate: self + ) + } + + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + + tableView.deselectRow(with: transitionCoordinator, animated: animated) + } + +} + +// MARK: - UITableViewDelegate +extension FamiliarFollowersViewController: UITableViewDelegate, AutoGenerateTableViewDelegate { + // sourcery:inline:FamiliarFollowersViewController.AutoGenerateTableViewDelegate + + // Generated using Sourcery + // DO NOT EDIT + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + aspectTableView(tableView, didSelectRowAt: indexPath) + } + + // sourcery:end +} + +// MARK: - UserTableViewCellDelegate +extension FamiliarFollowersViewController: UserTableViewCellDelegate { } diff --git a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel+Diffable.swift b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel+Diffable.swift new file mode 100644 index 000000000..5e995bf21 --- /dev/null +++ b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel+Diffable.swift @@ -0,0 +1,39 @@ +// +// FamiliarFollowersViewModel+Diffable.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit + +extension FamiliarFollowersViewModel { + func setupDiffableDataSource( + tableView: UITableView, + userTableViewCellDelegate: UserTableViewCellDelegate? + ) { + diffableDataSource = UserSection.diffableDataSource( + tableView: tableView, + context: context, + configuration: UserSection.Configuration( + userTableViewCellDelegate: userTableViewCellDelegate + ) + ) + + userFetchedResultsController.$records + .receive(on: DispatchQueue.main) + .sink { [weak self] records in + guard let self = self else { return } + guard let diffableDataSource = self.diffableDataSource else { return } + + var snapshot = NSDiffableDataSourceSnapshot() + snapshot.appendSections([.main]) + let items = records.map { UserItem.user(record: $0) } + snapshot.appendItems(items, toSection: .main) + + diffableDataSource.apply(snapshot, animatingDifferences: false) + } + .store(in: &disposeBag) + } + +} diff --git a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel.swift b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel.swift new file mode 100644 index 000000000..544f8a062 --- /dev/null +++ b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewModel.swift @@ -0,0 +1,49 @@ +// +// FamiliarFollowersViewModel.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit +import Combine +import MastodonSDK +import CoreDataStack + +final class FamiliarFollowersViewModel { + + var disposeBag = Set() + + // input + let context: AppContext + let userFetchedResultsController: UserFetchedResultsController + + @Published var familiarFollowers: Mastodon.Entity.FamiliarFollowers? + + // output + var diffableDataSource: UITableViewDiffableDataSource? + + init(context: AppContext) { + self.context = context + self.userFetchedResultsController = UserFetchedResultsController( + managedObjectContext: context.managedObjectContext, + domain: nil, + additionalPredicate: nil + ) + // end init + + context.authenticationService.activeMastodonAuthenticationBox + .map { $0?.domain } + .assign(to: \.domain, on: userFetchedResultsController) + .store(in: &disposeBag) + + $familiarFollowers + .map { familiarFollowers -> [MastodonUser.ID] in + guard let familiarFollowers = familiarFollowers else { return [] } + return familiarFollowers.accounts.map { $0.id } + } + .assign(to: \.userIDs, on: userFetchedResultsController) + .store(in: &disposeBag) + } + +} diff --git a/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift b/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift index 68f1d0de1..1b9efa1fb 100644 --- a/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift +++ b/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift @@ -9,6 +9,7 @@ import os.log import UIKit import GameplayKit import Combine +import MastodonLocalization final class FollowerListViewController: UIViewController, NeedsDependency { @@ -42,6 +43,8 @@ extension FollowerListViewController { override func viewDidLoad() { super.viewDidLoad() + title = L10n.Scene.Profile.Dashboard.followers + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme .receive(on: DispatchQueue.main) diff --git a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift index 7272a2db4..6ca86bd72 100644 --- a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift +++ b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift @@ -9,6 +9,7 @@ import os.log import UIKit import GameplayKit import Combine +import MastodonLocalization final class FollowingListViewController: UIViewController, NeedsDependency { @@ -42,6 +43,8 @@ extension FollowingListViewController { override func viewDidLoad() { super.viewDidLoad() + title = L10n.Scene.Profile.Dashboard.following + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme .receive(on: DispatchQueue.main) @@ -89,6 +92,12 @@ extension FollowingListViewController { .store(in: &disposeBag) } + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + + tableView.deselectRow(with: transitionCoordinator, animated: animated) + } + } // MARK: - UITableViewDelegate diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift index 50bde02ba..c15f8878a 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView.swift @@ -63,6 +63,8 @@ extension FamiliarFollowersDashboardView { stackView.addArrangedSubview(descriptionMetaLabel) descriptionMetaLabel.setContentHuggingPriority(.required - 1, for: .vertical) descriptionMetaLabel.setContentCompressionResistancePriority(.required - 1, for: .vertical) + + descriptionMetaLabel.isUserInteractionEnabled = false } } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift index 9b5b06fe7..0572cc0f6 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/ProfileCardView.swift @@ -13,10 +13,13 @@ import MastodonAsset public protocol ProfileCardViewDelegate: AnyObject { func profileCardView(_ profileCardView: ProfileCardView, relationshipButtonDidPressed button: ProfileRelationshipActionButton) + func profileCardView(_ profileCardView: ProfileCardView, familiarFollowersDashboardViewDidPressed view: FamiliarFollowersDashboardView) } public final class ProfileCardView: UIView { + let logger = Logger(subsystem: "ProfileCardView", category: "View") + static let avatarSize = CGSize(width: 56, height: 56) static let friendshipActionButtonSize = CGSize(width: 108, height: 34) static let contentMargin: CGFloat = 16 @@ -255,6 +258,10 @@ extension ProfileCardView { ]) relationshipActionButton.addTarget(self, action: #selector(ProfileCardView.relationshipActionButtonDidPressed(_:)), for: .touchUpInside) + + let familiarFollowersDashboardViewTapGestureRecognizer = UITapGestureRecognizer.singleTapGestureRecognizer + familiarFollowersDashboardViewTapGestureRecognizer.addTarget(self, action: #selector(ProfileCardView.familiarFollowersDashboardViewDidPressed(_:))) + familiarFollowersDashboardView.addGestureRecognizer(familiarFollowersDashboardViewTapGestureRecognizer) } public override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) { @@ -287,8 +294,14 @@ extension ProfileCardView { extension ProfileCardView { @objc private func relationshipActionButtonDidPressed(_ sender: UIButton) { - os_log(.debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") assert(sender === relationshipActionButton) delegate?.profileCardView(self, relationshipButtonDidPressed: relationshipActionButton) } + + @objc private func familiarFollowersDashboardViewDidPressed(_ sender: UITapGestureRecognizer) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + assert(sender.view === familiarFollowersDashboardView) + delegate?.profileCardView(self, familiarFollowersDashboardViewDidPressed: familiarFollowersDashboardView) + } } diff --git a/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell.swift b/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell.swift index aff7b6feb..2d210f20c 100644 --- a/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell.swift +++ b/MastodonSDK/Sources/MastodonUI/View/TableViewCell/ProfileCardTableViewCell.swift @@ -11,6 +11,7 @@ import Combine public protocol ProfileCardTableViewCellDelegate: AnyObject { func profileCardTableViewCell(_ cell: ProfileCardTableViewCell, profileCardView: ProfileCardView, relationshipButtonDidPressed button: ProfileRelationshipActionButton) + func profileCardTableViewCell(_ cell: ProfileCardTableViewCell, profileCardView: ProfileCardView, familiarFollowersDashboardViewDidPressed view: FamiliarFollowersDashboardView) } public final class ProfileCardTableViewCell: UITableViewCell { @@ -86,7 +87,13 @@ extension ProfileCardTableViewCell { // MARK: - ProfileCardViewDelegate extension ProfileCardTableViewCell: ProfileCardViewDelegate { + public func profileCardView(_ profileCardView: ProfileCardView, relationshipButtonDidPressed button: ProfileRelationshipActionButton) { delegate?.profileCardTableViewCell(self, profileCardView: profileCardView, relationshipButtonDidPressed: button) } + + public func profileCardView(_ profileCardView: ProfileCardView, familiarFollowersDashboardViewDidPressed view: FamiliarFollowersDashboardView) { + delegate?.profileCardTableViewCell(self, profileCardView: profileCardView, familiarFollowersDashboardViewDidPressed: view) + } + } From 247b51f216f43402b5972ec27035c39e018b5165 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 12:50:04 +0200 Subject: [PATCH 448/571] New translations Localizable.stringsdict (Catalan) --- .../StringsConvertor/input/ca.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict index 5ade72aa4..cc28edbc6 100644 --- a/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Seguit per %1$@, i un altre mutu other - Followed by %1$@, and %ld mutuals + Seguit per %1$@, i %ld mutus plural.count.metric_formatted.post From 57ac970d297d0f64e1264cb85ec16e079b7e260f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 12:50:11 +0200 Subject: [PATCH 449/571] New translations Localizable.stringsdict (Russian) --- .../input/ru.lproj/Localizable.stringsdict | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict index 65939399d..afb29a6aa 100644 --- a/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ru.lproj/Localizable.stringsdict @@ -88,13 +88,13 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + %1$@ и ещё %ld человек подписаны few - Followed by %1$@, and %ld mutuals + %1$@ и ещё %ld человека подписаны many - Followed by %1$@, and %ld mutuals + %1$@ и ещё %ld человек подписаны other - Followed by %1$@, and %ld mutuals + %1$@ и ещё %ld человека подписаны plural.count.metric_formatted.post From 6263039b534a23e05187ee159abc8c40fc49c82e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 12:50:12 +0200 Subject: [PATCH 450/571] New translations Localizable.stringsdict (Chinese Simplified) --- .../input/zh-Hans.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict index f747bfd8a..5a7af3752 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + %1$@ 和你关注的另外 %ld 人也关注了这个账号 plural.count.metric_formatted.post From 2028bd82a3d523b377d379c832d7bdb5d63d67c0 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 18:58:24 +0800 Subject: [PATCH 451/571] chore: update i18n words --- Localization/app.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Localization/app.json b/Localization/app.json index 32eaea9d2..c621bcb26 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -462,11 +462,17 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, "search": { "title": "Search", "search_bar": { From b1c4d8117331a079e3e0d9d44393d7fa0806d9e4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 13:50:42 +0200 Subject: [PATCH 452/571] New translations app.json (Korean) --- Localization/StringsConvertor/input/ko.lproj/app.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Localization/StringsConvertor/input/ko.lproj/app.json b/Localization/StringsConvertor/input/ko.lproj/app.json index ad93f3d65..c55533fed 100644 --- a/Localization/StringsConvertor/input/ko.lproj/app.json +++ b/Localization/StringsConvertor/input/ko.lproj/app.json @@ -67,7 +67,7 @@ "done": "완료", "confirm": "확인", "continue": "계속", - "compose": "Compose", + "compose": "작성", "cancel": "취소", "discard": "버리기", "try_again": "다시 시도", @@ -82,7 +82,7 @@ "share_user": "%s를 공유", "share_post": "게시물 공유", "open_in_safari": "사파리에서 열기", - "open_in_browser": "Open in Browser", + "open_in_browser": "브라우저에서 열기", "find_people": "팔로우 할 사람들 찾기", "manually_search": "대신 수동으로 검색하기", "skip": "건너뛰기", @@ -131,7 +131,7 @@ "content_warning": "열람 주의", "sensitive_content": "Sensitive Content", "media_content_warning": "Tap anywhere to reveal", - "tap_to_reveal": "Tap to reveal", + "tap_to_reveal": "눌러서 확인", "poll": { "vote": "투표", "closed": "마감" @@ -143,8 +143,8 @@ "favorite": "즐겨찾기", "unfavorite": "즐겨찾기 해제", "menu": "메뉴", - "hide": "Hide", - "show_image": "Show image", + "hide": "숨기기", + "show_image": "이미지 표시", "show_gif": "Show GIF", "show_video_player": "Show video player", "tap_then_hold_to_show_menu": "Tap then hold to show menu" From 8c2b669bf30c2ae9a082b6ce1c287f69899d041d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 13:50:43 +0200 Subject: [PATCH 453/571] New translations app.json (Galician) --- Localization/StringsConvertor/input/gl.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gl.lproj/app.json b/Localization/StringsConvertor/input/gl.lproj/app.json index b80715ea7..61006f241 100644 --- a/Localization/StringsConvertor/input/gl.lproj/app.json +++ b/Localization/StringsConvertor/input/gl.lproj/app.json @@ -207,7 +207,7 @@ "scene": { "welcome": { "slogan": "Comunicación social\nde volta ás túas mans.", - "get_started": "Comezar", + "get_started": "Crear conta", "log_in": "Acceder" }, "server_picker": { From 3d1eface156ad27060df76e6b1bf3be6dd0f04b1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 13:50:44 +0200 Subject: [PATCH 454/571] New translations Localizable.stringsdict (Italian) --- .../StringsConvertor/input/it.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict index 148a2181f..38f986521 100644 --- a/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/it.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Seguito da %1$@ e un altro amico in comune other - Followed by %1$@, and %ld mutuals + Seguito da %1$@ e %ld amici in comune plural.count.metric_formatted.post From ab4becc0ad167b4ad284cadd27642578739e6573 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 14:57:26 +0200 Subject: [PATCH 455/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/app.json | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json index fa74ac578..15a7f2271 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/app.json +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "Ji me re hinekî qala xwe bike %s", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Ka em te bi rê bixin li ser %s", "input": { "avatar": { "delete": "Jê bibe" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Tiştekî dawî.", "subtitle": "Me tenê e-nameyek ji %s re şand,\ngirêdanê bitikne da ku ajimêra xwe bidî piştrastkirin.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Girêdana e-nameyê ku me ji te re şand bitikîne da ku ajimêra xwe bidî piştrastkirin", "button": { "open_email_app": "Sepana e-nameyê veke", "resend": "Ji nû ve bişîne" @@ -348,7 +348,7 @@ "Publishing": "Şandî tê weşandin...", "accessibility": { "logo_label": "Bişkoka Logo", - "logo_hint": "Tap to scroll to top and tap again to previous location" + "logo_hint": "Ji bo şemitandina jor û dîsa li cihê berê vegerî bitikîne" } } }, @@ -606,45 +606,45 @@ "reported": "HATE RAGIHANDIN", "step_one": { "step_1_of_4": "Gav 1 ji 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", - "select_the_best_match": "Select the best match", + "whats_wrong_with_this_post": "Çi çewt e di vê şandiyê de?", + "whats_wrong_with_this_account": "Çi çewt e di vê ajimêrê de?", + "whats_wrong_with_this_username": "Çi çewt e bi %s re?", + "select_the_best_match": "Baştirîn lihevhatina hilbijêre", "i_dont_like_it": "Ez jê hez nakim", - "it_is_not_something_you_want_to_see": "It is not something you want to see", + "it_is_not_something_you_want_to_see": "Ew ne tiştek e ku tu dixwazî bibînî", "its_spam": "Ew spam e", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "malicious_links_fake_engagement_or_repetetive_replies": "Girêdanên xerab, tevlêbûna sexte, an jî bersivên dubarekirî", + "it_violates_server_rules": "Ew rêzikên rajekar binpê dike", + "you_are_aware_that_it_breaks_specific_rules": "Tu dizanî ku ew rêzikên taybetiyê binpê dike", + "its_something_else": "Tiştekî din e", + "the_issue_does_not_fit_into_other_categories": "Pirsgirêk di kategoriyên din de cih nagire" }, "step_two": { "step_2_of_4": "Gav 2 ji 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", + "which_rules_are_being_violated": "Kîjan rêzik têne binpêkirin?", + "select_all_that_apply": "Hemûyên ku têne sepandin hilbijêre", "i_just_don’t_like_it": "Tenê ez jê hez nakim" }, "step_three": { "step_3_of_4": "Gav 3 ji 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "are_there_any_posts_that_back_up_this_report": "Tu şandiyên ku vê ragihandinê piştgirî dikin hene?", + "select_all_that_apply": "Hemûyên ku têne sepandin hilbijêre" }, "step_four": { "step_4_of_4": "Gav 4 ji 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "is_there_anything_else_we_should_know": "Tiştek din heye ku tu difikirî ku divê em zanibin?" }, "step_final": { "dont_want_to_see_this": "Tu naxwazî vê bibînî?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Dema li ser Mastodonê tiştekî ku tu jê hez nakî bibînî, tu dikarî ew kes ji navrûya xwe derxî.", "unfollow": "Neşopîne", "unfollowed": "Ji şopê hate derketin", "unfollow_user": "%s neşopîne", "mute_user": "%s bêdeng bike", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Tu yê şandî an jî bilindkirinên wan di rojeva xwe de nebînî. Ew ê nizanibin ku hatine bêdengkirin.", "block_user": "%s asteng bike", - "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "Êdî nikarin şandiyên te bişopînin an jî bibînin, lê ew dikarin bibînin ka hatine astengkirin an na.", + "while_we_review_this_you_can_take_action_against_user": "Dema ku em vê yekê dinirxînin, tu dikarî li dijî %s tedbîran bigirî" } }, "preview": { From d4ef8850d76a0127176ffa67a269f421eabdb20b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 14:57:27 +0200 Subject: [PATCH 456/571] New translations Localizable.stringsdict (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict index 966a6141a..77571439f 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/kmr.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Ji aliyê %1$@, û hevaleke hevpar tê şopandin other - Followed by %1$@, and %ld mutuals + Ji aliyê %1$@, û %ld hevalên hevpar tê şopandin plural.count.metric_formatted.post From e1710299d51b1c7395bc96d55ffe34432864be1f Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 22:09:43 +0800 Subject: [PATCH 457/571] feat: add reblogged by and favorited by user list entry for status --- Mastodon.xcodeproj/project.pbxproj | 52 +++++ Mastodon/Coordinator/SceneCoordinator.swift | 10 + Mastodon/Diffiable/User/UserSection.swift | 4 +- ...oGenerateTableViewDelegate.generated.swift | 2 + ...Provider+StatusTableViewCellDelegate.swift | 49 ++++ .../FollowingListViewController.swift | 12 +- ...dByViewController+DataSourceProvider.swift | 34 +++ .../FavoritedByViewController.swift | 109 +++++++++ ...dByViewController+DataSourceProvider.swift | 34 +++ .../RebloggedByViewController.swift | 109 +++++++++ .../UserLIst/UserListViewModel+Diffable.swift | 71 ++++++ .../UserLIst/UserListViewModel+State.swift | 211 ++++++++++++++++++ .../Profile/UserLIst/UserListViewModel.swift | 66 ++++++ .../StatusTableViewCellDelegate.swift | 10 + .../APIService/APIService+Favorite.swift | 42 ++++ .../APIService/APIService+Reblog.swift | 42 ++++ .../APIService/APIService+Status.swift | 2 +- Mastodon/Service/APIService/APIService.swift | 4 +- .../Mastodon+API+Statuses+FavoriteBy.swift | 84 +++++++ .../Mastodon+API+Statuses+RebloggedBy.swift | 84 +++++++ .../View/Content/NotificationView.swift | 8 + .../View/Content/StatusMetricView.swift | 28 ++- .../MastodonUI/View/Content/StatusView.swift | 17 ++ 23 files changed, 1072 insertions(+), 12 deletions(-) create mode 100644 Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController+DataSourceProvider.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController+DataSourceProvider.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/UserListViewModel+Diffable.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/UserListViewModel+State.swift create mode 100644 Mastodon/Scene/Profile/UserLIst/UserListViewModel.swift create mode 100644 MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+FavoriteBy.swift create mode 100644 MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+RebloggedBy.swift diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 69fb67731..173de3507 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -293,6 +293,13 @@ DB5B549D2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B549C2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift */; }; DB5B549F2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B549E2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift */; }; DB5B54A12833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54A02833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift */; }; + DB5B54A32833BD1A00DEF8B2 /* UserListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54A22833BD1A00DEF8B2 /* UserListViewModel.swift */; }; + DB5B54A62833BE0000DEF8B2 /* UserListViewModel+State.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54A52833BE0000DEF8B2 /* UserListViewModel+State.swift */; }; + DB5B54A82833BFA500DEF8B2 /* FavoritedByViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54A72833BFA500DEF8B2 /* FavoritedByViewController.swift */; }; + DB5B54AB2833C12A00DEF8B2 /* RebloggedByViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54AA2833C12A00DEF8B2 /* RebloggedByViewController.swift */; }; + DB5B54AE2833C15F00DEF8B2 /* UserListViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54AD2833C15F00DEF8B2 /* UserListViewModel+Diffable.swift */; }; + DB5B54B02833C24200DEF8B2 /* FavoritedByViewController+DataSourceProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54AF2833C24200DEF8B2 /* FavoritedByViewController+DataSourceProvider.swift */; }; + DB5B54B22833C24B00DEF8B2 /* RebloggedByViewController+DataSourceProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B54B12833C24B00DEF8B2 /* RebloggedByViewController+DataSourceProvider.swift */; }; DB5B7295273112B100081888 /* FollowingListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B7294273112B100081888 /* FollowingListViewController.swift */; }; DB5B7298273112C800081888 /* FollowingListViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B7297273112C800081888 /* FollowingListViewModel.swift */; }; DB5B729C273113C200081888 /* FollowingListViewModel+Diffable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB5B729B273113C200081888 /* FollowingListViewModel+Diffable.swift */; }; @@ -1050,6 +1057,13 @@ DB5B549C2833A67400DEF8B2 /* FamiliarFollowersViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FamiliarFollowersViewModel.swift; sourceTree = ""; }; DB5B549E2833A72500DEF8B2 /* FamiliarFollowersViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FamiliarFollowersViewModel+Diffable.swift"; sourceTree = ""; }; DB5B54A02833A89600DEF8B2 /* FamiliarFollowersViewController+DataSourceProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FamiliarFollowersViewController+DataSourceProvider.swift"; sourceTree = ""; }; + DB5B54A22833BD1A00DEF8B2 /* UserListViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserListViewModel.swift; sourceTree = ""; }; + DB5B54A52833BE0000DEF8B2 /* UserListViewModel+State.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserListViewModel+State.swift"; sourceTree = ""; }; + DB5B54A72833BFA500DEF8B2 /* FavoritedByViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FavoritedByViewController.swift; sourceTree = ""; }; + DB5B54AA2833C12A00DEF8B2 /* RebloggedByViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RebloggedByViewController.swift; sourceTree = ""; }; + DB5B54AD2833C15F00DEF8B2 /* UserListViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UserListViewModel+Diffable.swift"; sourceTree = ""; }; + DB5B54AF2833C24200DEF8B2 /* FavoritedByViewController+DataSourceProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FavoritedByViewController+DataSourceProvider.swift"; sourceTree = ""; }; + DB5B54B12833C24B00DEF8B2 /* RebloggedByViewController+DataSourceProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "RebloggedByViewController+DataSourceProvider.swift"; sourceTree = ""; }; DB5B7294273112B100081888 /* FollowingListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowingListViewController.swift; sourceTree = ""; }; DB5B7297273112C800081888 /* FollowingListViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FollowingListViewModel.swift; sourceTree = ""; }; DB5B729B273113C200081888 /* FollowingListViewModel+Diffable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FollowingListViewModel+Diffable.swift"; sourceTree = ""; }; @@ -2462,6 +2476,36 @@ path = FamiliarFollowers; sourceTree = ""; }; + DB5B54A42833BD1D00DEF8B2 /* UserLIst */ = { + isa = PBXGroup; + children = ( + DB5B54A22833BD1A00DEF8B2 /* UserListViewModel.swift */, + DB5B54AD2833C15F00DEF8B2 /* UserListViewModel+Diffable.swift */, + DB5B54A52833BE0000DEF8B2 /* UserListViewModel+State.swift */, + DB5B54A92833BFAC00DEF8B2 /* FavoritedBy */, + DB5B54AC2833C12D00DEF8B2 /* RebloggedBy */, + ); + path = UserLIst; + sourceTree = ""; + }; + DB5B54A92833BFAC00DEF8B2 /* FavoritedBy */ = { + isa = PBXGroup; + children = ( + DB5B54A72833BFA500DEF8B2 /* FavoritedByViewController.swift */, + DB5B54AF2833C24200DEF8B2 /* FavoritedByViewController+DataSourceProvider.swift */, + ); + path = FavoritedBy; + sourceTree = ""; + }; + DB5B54AC2833C12D00DEF8B2 /* RebloggedBy */ = { + isa = PBXGroup; + children = ( + DB5B54AA2833C12A00DEF8B2 /* RebloggedByViewController.swift */, + DB5B54B12833C24B00DEF8B2 /* RebloggedByViewController+DataSourceProvider.swift */, + ); + path = RebloggedBy; + sourceTree = ""; + }; DB5B7296273112B400081888 /* Following */ = { isa = PBXGroup; children = ( @@ -2964,6 +3008,7 @@ DB6B74F0272FB55400C70B6E /* Follower */, DB5B7296273112B400081888 /* Following */, DB5B549B2833A60600DEF8B2 /* FamiliarFollowers */, + DB5B54A42833BD1D00DEF8B2 /* UserLIst */, DBFEEC97279BDC6A004F81DD /* About */, DB9D6BFE25E4F5940051B173 /* ProfileViewController.swift */, DBB5255D2611F07A002F1F29 /* ProfileViewModel.swift */, @@ -3884,6 +3929,7 @@ buildActionMask = 2147483647; files = ( DBB525212611EBD6002F1F29 /* ProfilePagingViewController.swift in Sources */, + DB5B54A82833BFA500DEF8B2 /* FavoritedByViewController.swift in Sources */, DBDFF19E2805703700557A48 /* DiscoveryPostsViewController+DataSourceProvider.swift in Sources */, DB6180EB26391C140018D199 /* MediaPreviewTransitionItem.swift in Sources */, DB63F74727990B0600455B82 /* DataSourceFacade+Hashtag.swift in Sources */, @@ -3894,6 +3940,7 @@ DB1D843426579931000346B3 /* TableViewControllerNavigateable.swift in Sources */, 0FAA0FDF25E0B57E0017CCDE /* WelcomeViewController.swift in Sources */, DB65C63727A2AF6C008BAC2E /* ReportItem.swift in Sources */, + DB5B54B22833C24B00DEF8B2 /* RebloggedByViewController+DataSourceProvider.swift in Sources */, 2D59819B25E4A581000FB903 /* MastodonConfirmEmailViewController.swift in Sources */, DB45FB1D25CA9D23005A8AC7 /* APIService+HomeTimeline.swift in Sources */, DBA94440265D137600C537E1 /* Mastodon+Entity+Field.swift in Sources */, @@ -3908,6 +3955,7 @@ 0FB3D2F725E4C24D00AAD544 /* MastodonPickServerViewModel.swift in Sources */, 2D61335E25C1894B00CAE157 /* APIService.swift in Sources */, 2D9DB967263A76FB007C1D71 /* BlockDomainService.swift in Sources */, + DB5B54AE2833C15F00DEF8B2 /* UserListViewModel+Diffable.swift in Sources */, DB336F43278EB1690031E64B /* MediaView+Configuration.swift in Sources */, DB66729625F9F91600D60309 /* ComposeStatusSection.swift in Sources */, DB482A3F261331E8008AE74C /* UserTimelineViewModel+State.swift in Sources */, @@ -3961,6 +4009,7 @@ 5DDDF1932617442700311060 /* Mastodon+Entity+Account.swift in Sources */, DB63F767279A5EB300455B82 /* NotificationTimelineViewModel.swift in Sources */, 2D607AD826242FC500B70763 /* NotificationViewModel.swift in Sources */, + DB5B54AB2833C12A00DEF8B2 /* RebloggedByViewController.swift in Sources */, DB848E33282B62A800A302CC /* ReportResultView.swift in Sources */, DBABE3EC25ECAC4B00879EE5 /* WelcomeIllustrationView.swift in Sources */, DB564BD3269F3B35001E39A7 /* StatusFilterService.swift in Sources */, @@ -3983,12 +4032,14 @@ DB98EB5E27B10A7A0082E365 /* ReportSupplementaryViewModel+Diffable.swift in Sources */, DB0FCB7C2795821F006C02E2 /* StatusThreadRootTableViewCell.swift in Sources */, DB72601C25E36A2100235243 /* MastodonServerRulesViewController.swift in Sources */, + DB5B54A32833BD1A00DEF8B2 /* UserListViewModel.swift in Sources */, DBB5250E2611EBAF002F1F29 /* ProfileSegmentedViewController.swift in Sources */, DBF156DF2701B17600EC00B7 /* SidebarAddAccountCollectionViewCell.swift in Sources */, DB0617F1278413D00030EE79 /* PickServerServerSectionTableHeaderView.swift in Sources */, DB0FCB7E27958957006C02E2 /* StatusThreadRootTableViewCell+ViewModel.swift in Sources */, DB789A0B25F9F2950071ACA0 /* ComposeViewController.swift in Sources */, DB938F0926240F3C00E5B6C1 /* RemoteThreadViewModel.swift in Sources */, + DB5B54A62833BE0000DEF8B2 /* UserListViewModel+State.swift in Sources */, DB0617ED277F02C50030EE79 /* OnboardingNavigationController.swift in Sources */, DB0617F527855AB90030EE79 /* ServerRuleSection.swift in Sources */, DB75BF1E263C1C1B00EDBF1F /* CustomScheduler.swift in Sources */, @@ -4030,6 +4081,7 @@ DBF9814A265E24F500E4BA07 /* ProfileFieldCollectionViewHeaderFooterView.swift in Sources */, 2D939AB525EDD8A90076FA61 /* String.swift in Sources */, DB4481B925EE289600BEFB67 /* UITableView.swift in Sources */, + DB5B54B02833C24200DEF8B2 /* FavoritedByViewController+DataSourceProvider.swift in Sources */, DBE3CDBB261C427900430CC6 /* TimelineHeaderTableViewCell.swift in Sources */, DB159C2B27A17BAC0068DC77 /* DataSourceFacade+Media.swift in Sources */, 0FAA101C25E10E760017CCDE /* UIFont.swift in Sources */, diff --git a/Mastodon/Coordinator/SceneCoordinator.swift b/Mastodon/Coordinator/SceneCoordinator.swift index 1039ff524..9df3040c7 100644 --- a/Mastodon/Coordinator/SceneCoordinator.swift +++ b/Mastodon/Coordinator/SceneCoordinator.swift @@ -179,6 +179,8 @@ extension SceneCoordinator { case follower(viewModel: FollowerListViewModel) case following(viewModel: FollowingListViewModel) case familiarFollowers(viewModel: FamiliarFollowersViewModel) + case rebloggedBy(viewModel: UserListViewModel) + case favoritedBy(viewModel: UserListViewModel) // setting case settings(viewModel: SettingsViewModel) @@ -450,6 +452,14 @@ private extension SceneCoordinator { let _viewController = FamiliarFollowersViewController() _viewController.viewModel = viewModel viewController = _viewController + case .rebloggedBy(let viewModel): + let _viewController = RebloggedByViewController() + _viewController.viewModel = viewModel + viewController = _viewController + case .favoritedBy(let viewModel): + let _viewController = FavoritedByViewController() + _viewController.viewModel = viewModel + viewController = _viewController case .report(let viewModel): let _viewController = ReportViewController() _viewController.viewModel = viewModel diff --git a/Mastodon/Diffiable/User/UserSection.swift b/Mastodon/Diffiable/User/UserSection.swift index a42110d7a..cb806c4e9 100644 --- a/Mastodon/Diffiable/User/UserSection.swift +++ b/Mastodon/Diffiable/User/UserSection.swift @@ -30,7 +30,9 @@ extension UserSection { configuration: Configuration ) -> UITableViewDiffableDataSource { tableView.register(UserTableViewCell.self, forCellReuseIdentifier: String(describing: UserTableViewCell.self)) - + tableView.register(TimelineBottomLoaderTableViewCell.self, forCellReuseIdentifier: String(describing: TimelineBottomLoaderTableViewCell.self)) + tableView.register(TimelineFooterTableViewCell.self, forCellReuseIdentifier: String(describing: TimelineFooterTableViewCell.self)) + return UITableViewDiffableDataSource(tableView: tableView) { tableView, indexPath, item -> UITableViewCell? in switch item { case .user(let record): diff --git a/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift b/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift index c0e489866..4c65e1a3e 100644 --- a/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift +++ b/Mastodon/Generated/AutoGenerateTableViewDelegate.generated.swift @@ -37,3 +37,5 @@ func tableView(_ tableView: UITableView, willPerformPreviewActionForMenuWith con + + diff --git a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift index f00e14840..d02edcc42 100644 --- a/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift +++ b/Mastodon/Protocol/Provider/DataSourceProvider+StatusTableViewCellDelegate.swift @@ -474,6 +474,55 @@ extension StatusTableViewCellDelegate where Self: DataSourceProvider { } +// MARK: - StatusMetricView +extension StatusTableViewCellDelegate where Self: DataSourceProvider { + func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) { + Task { + let source = DataSourceItem.Source(tableViewCell: cell, indexPath: nil) + guard let item = await item(from: source) else { + assertionFailure() + return + } + guard case let .status(status) = item else { + assertionFailure("only works for status data provider") + return + } + let userListViewModel = UserListViewModel( + context: context, + kind: .rebloggedBy(status: status) + ) + await coordinator.present( + scene: .rebloggedBy(viewModel: userListViewModel), + from: self, + transition: .show + ) + } // end Task + } + + func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) { + Task { + let source = DataSourceItem.Source(tableViewCell: cell, indexPath: nil) + guard let item = await item(from: source) else { + assertionFailure() + return + } + guard case let .status(status) = item else { + assertionFailure("only works for status data provider") + return + } + let userListViewModel = UserListViewModel( + context: context, + kind: .favoritedBy(status: status) + ) + await coordinator.present( + scene: .favoritedBy(viewModel: userListViewModel), + from: self, + transition: .show + ) + } // end Task + } +} + // MARK: a11y extension StatusTableViewCellDelegate where Self: DataSourceProvider { func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, accessibilityActivate: Void) { diff --git a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift index 6ca86bd72..eb0872227 100644 --- a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift +++ b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift @@ -84,12 +84,12 @@ extension FollowingListViewController { viewModel.domain.removeDuplicates().eraseToAnyPublisher(), viewModel.userID.removeDuplicates().eraseToAnyPublisher() ) - .receive(on: DispatchQueue.main) - .sink { [weak self] _ in - guard let self = self else { return } - self.viewModel.stateMachine.enter(FollowingListViewModel.State.Reloading.self) - } - .store(in: &disposeBag) + .receive(on: DispatchQueue.main) + .sink { [weak self] _ in + guard let self = self else { return } + self.viewModel.stateMachine.enter(FollowingListViewModel.State.Reloading.self) + } + .store(in: &disposeBag) } override func viewWillAppear(_ animated: Bool) { diff --git a/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController+DataSourceProvider.swift b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController+DataSourceProvider.swift new file mode 100644 index 000000000..437873d36 --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController+DataSourceProvider.swift @@ -0,0 +1,34 @@ +// +// FavoritedByViewController+DataSourceProvider.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit + +extension FavoritedByViewController: DataSourceProvider { + func item(from source: DataSourceItem.Source) async -> DataSourceItem? { + var _indexPath = source.indexPath + if _indexPath == nil, let cell = source.tableViewCell { + _indexPath = await self.indexPath(for: cell) + } + guard let indexPath = _indexPath else { return nil } + + guard let item = viewModel.diffableDataSource?.itemIdentifier(for: indexPath) else { + return nil + } + + switch item { + case .user(let record): + return .user(record: record) + default: + return nil + } + } + + @MainActor + private func indexPath(for cell: UITableViewCell) async -> IndexPath? { + return tableView.indexPath(for: cell) + } +} diff --git a/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift new file mode 100644 index 000000000..7316be5aa --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift @@ -0,0 +1,109 @@ +// +// FavoritedByViewController.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import os.log +import UIKit +import GameplayKit +import Combine +import MastodonLocalization + +final class FavoritedByViewController: UIViewController, NeedsDependency { + + let logger = Logger(subsystem: "FavoritedByViewController", category: "ViewController") + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var disposeBag = Set() + var viewModel: UserListViewModel! + + lazy var tableView: UITableView = { + let tableView = UITableView() + tableView.rowHeight = UITableView.automaticDimension + tableView.separatorStyle = .none + tableView.backgroundColor = .clear + return tableView + }() + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension FavoritedByViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + #if DEBUG + switch viewModel.kind { + case .favoritedBy: break + default: assertionFailure() + } + #endif + + title = "Favorited By" + + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor + ThemeService.shared.currentTheme + .receive(on: DispatchQueue.main) + .sink { [weak self] theme in + guard let self = self else { return } + self.view.backgroundColor = theme.secondarySystemBackgroundColor + } + .store(in: &disposeBag) + + tableView.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(tableView) + NSLayoutConstraint.activate([ + tableView.topAnchor.constraint(equalTo: view.topAnchor), + tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor), + tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor), + tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + + tableView.delegate = self + viewModel.setupDiffableDataSource( + tableView: tableView, + userTableViewCellDelegate: self + ) + + // setup batch fetch + viewModel.listBatchFetchViewModel.setup(scrollView: tableView) + viewModel.listBatchFetchViewModel.shouldFetch + .receive(on: DispatchQueue.main) + .sink { [weak self] _ in + guard let self = self else { return } + self.viewModel.stateMachine.enter(UserListViewModel.State.Loading.self) + } + .store(in: &disposeBag) + } + + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + + tableView.deselectRow(with: transitionCoordinator, animated: animated) + } + +} + +// MARK: - UITableViewDelegate +extension FavoritedByViewController: UITableViewDelegate, AutoGenerateTableViewDelegate { + // sourcery:inline:FavoritedByViewController.AutoGenerateTableViewDelegate + + // Generated using Sourcery + // DO NOT EDIT + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + aspectTableView(tableView, didSelectRowAt: indexPath) + } + + // sourcery:end +} + +// MARK: - UserTableViewCellDelegate +extension FavoritedByViewController: UserTableViewCellDelegate { } diff --git a/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController+DataSourceProvider.swift b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController+DataSourceProvider.swift new file mode 100644 index 000000000..04d5d2596 --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController+DataSourceProvider.swift @@ -0,0 +1,34 @@ +// +// RebloggedByViewController+DataSourceProvider.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit + +extension RebloggedByViewController: DataSourceProvider { + func item(from source: DataSourceItem.Source) async -> DataSourceItem? { + var _indexPath = source.indexPath + if _indexPath == nil, let cell = source.tableViewCell { + _indexPath = await self.indexPath(for: cell) + } + guard let indexPath = _indexPath else { return nil } + + guard let item = viewModel.diffableDataSource?.itemIdentifier(for: indexPath) else { + return nil + } + + switch item { + case .user(let record): + return .user(record: record) + default: + return nil + } + } + + @MainActor + private func indexPath(for cell: UITableViewCell) async -> IndexPath? { + return tableView.indexPath(for: cell) + } +} diff --git a/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift new file mode 100644 index 000000000..ab2087954 --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift @@ -0,0 +1,109 @@ +// +// RebloggedByViewController.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import os.log +import UIKit +import GameplayKit +import Combine +import MastodonLocalization + +final class RebloggedByViewController: UIViewController, NeedsDependency { + + let logger = Logger(subsystem: "RebloggedByViewController", category: "ViewController") + + weak var context: AppContext! { willSet { precondition(!isViewLoaded) } } + weak var coordinator: SceneCoordinator! { willSet { precondition(!isViewLoaded) } } + + var disposeBag = Set() + var viewModel: UserListViewModel! + + lazy var tableView: UITableView = { + let tableView = UITableView() + tableView.rowHeight = UITableView.automaticDimension + tableView.separatorStyle = .none + tableView.backgroundColor = .clear + return tableView + }() + + deinit { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) + } + +} + +extension RebloggedByViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + #if DEBUG + switch viewModel.kind { + case .rebloggedBy: break + default: assertionFailure() + } + #endif + + title = "Favorited By" + + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor + ThemeService.shared.currentTheme + .receive(on: DispatchQueue.main) + .sink { [weak self] theme in + guard let self = self else { return } + self.view.backgroundColor = theme.secondarySystemBackgroundColor + } + .store(in: &disposeBag) + + tableView.translatesAutoresizingMaskIntoConstraints = false + view.addSubview(tableView) + NSLayoutConstraint.activate([ + tableView.topAnchor.constraint(equalTo: view.topAnchor), + tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor), + tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor), + tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor), + ]) + + tableView.delegate = self + viewModel.setupDiffableDataSource( + tableView: tableView, + userTableViewCellDelegate: self + ) + + // setup batch fetch + viewModel.listBatchFetchViewModel.setup(scrollView: tableView) + viewModel.listBatchFetchViewModel.shouldFetch + .receive(on: DispatchQueue.main) + .sink { [weak self] _ in + guard let self = self else { return } + self.viewModel.stateMachine.enter(UserListViewModel.State.Loading.self) + } + .store(in: &disposeBag) + } + + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + + tableView.deselectRow(with: transitionCoordinator, animated: animated) + } + +} + +// MARK: - UITableViewDelegate +extension RebloggedByViewController: UITableViewDelegate, AutoGenerateTableViewDelegate { + // sourcery:inline:RebloggedByViewController.AutoGenerateTableViewDelegate + + // Generated using Sourcery + // DO NOT EDIT + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { + aspectTableView(tableView, didSelectRowAt: indexPath) + } + + // sourcery:end +} + +// MARK: - UserTableViewCellDelegate +extension RebloggedByViewController: UserTableViewCellDelegate { } diff --git a/Mastodon/Scene/Profile/UserLIst/UserListViewModel+Diffable.swift b/Mastodon/Scene/Profile/UserLIst/UserListViewModel+Diffable.swift new file mode 100644 index 000000000..acd225f0c --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/UserListViewModel+Diffable.swift @@ -0,0 +1,71 @@ +// +// UserListViewModel+Diffable.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import UIKit +import MastodonAsset +import MastodonLocalization + +extension UserListViewModel { + @MainActor + func setupDiffableDataSource( + tableView: UITableView, + userTableViewCellDelegate: UserTableViewCellDelegate? + ) { + diffableDataSource = UserSection.diffableDataSource( + tableView: tableView, + context: context, + configuration: UserSection.Configuration( + userTableViewCellDelegate: userTableViewCellDelegate + ) + ) + + // workaround to append loader wrong animation issue + // set empty section to make update animation top-to-bottom style + var snapshot = NSDiffableDataSourceSnapshot() + snapshot.appendSections([.main]) + snapshot.appendItems([.bottomLoader], toSection: .main) + if #available(iOS 15.0, *) { + diffableDataSource?.applySnapshotUsingReloadData(snapshot, completion: nil) + } else { + // Fallback on earlier versions + diffableDataSource?.apply(snapshot, animatingDifferences: false) + } + + // trigger initial loading + stateMachine.enter(UserListViewModel.State.Reloading.self) + + userFetchedResultsController.$records + .receive(on: DispatchQueue.main) + .sink { [weak self] records in + guard let self = self else { return } + guard let diffableDataSource = self.diffableDataSource else { return } + + var snapshot = NSDiffableDataSourceSnapshot() + snapshot.appendSections([.main]) + let items = records.map { UserItem.user(record: $0) } + snapshot.appendItems(items, toSection: .main) + + if let currentState = self.stateMachine.currentState { + switch currentState { + case is State.Initial, is State.Idle, is State.Reloading, is State.Loading, is State.Fail: + snapshot.appendItems([.bottomLoader], toSection: .main) + case is State.NoMore: + if items.isEmpty { + snapshot.appendItems([.bottomHeader(text: L10n.Scene.Search.Searching.EmptyState.noResults)], toSection: .main) + } + default: + assertionFailure() + } + } else { + snapshot.appendItems([.bottomLoader], toSection: .main) + } + + diffableDataSource.apply(snapshot, animatingDifferences: false) + } + .store(in: &disposeBag) + } +} diff --git a/Mastodon/Scene/Profile/UserLIst/UserListViewModel+State.swift b/Mastodon/Scene/Profile/UserLIst/UserListViewModel+State.swift new file mode 100644 index 000000000..90b928235 --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/UserListViewModel+State.swift @@ -0,0 +1,211 @@ +// +// UserListViewModel+State.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import os.log +import Foundation +import GameplayKit +import MastodonSDK + +extension UserListViewModel { + class State: GKState, NamingState { + + let logger = Logger(subsystem: "UserListViewModel.State", category: "StateMachine") + + let id = UUID() + + var name: String { + String(describing: Self.self) + } + + weak var viewModel: UserListViewModel? + + init(viewModel: UserListViewModel) { + self.viewModel = viewModel + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + let previousState = previousState as? UserListViewModel.State + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): [\(self.id.uuidString)] enter \(self.name), previous: \(previousState?.name ?? "")") + } + + @MainActor + func enter(state: State.Type) { + stateMachine?.enter(state) + } + + deinit { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): [\(self.id.uuidString)] \(self.name)") + } + } +} + +extension UserListViewModel.State { + class Initial: UserListViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + guard let _ = viewModel else { return false } + switch stateClass { + case is Reloading.Type: + return true + default: + return false + } + } + } + + class Reloading: UserListViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Loading.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + + // reset + viewModel.userFetchedResultsController.userIDs = [] + + stateMachine.enter(Loading.self) + } + } + + class Fail: UserListViewModel.State { + + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Loading.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + guard let _ = viewModel, let stateMachine = stateMachine else { return } + + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s: retry loading 3s later…", ((#file as NSString).lastPathComponent), #line, #function) + DispatchQueue.main.asyncAfter(deadline: .now() + 3) { + os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s: retry loading", ((#file as NSString).lastPathComponent), #line, #function) + stateMachine.enter(Loading.self) + } + } + } + + class Idle: UserListViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Reloading.Type, is Loading.Type: + return true + default: + return false + } + } + } + + class Loading: UserListViewModel.State { + + var maxID: String? + + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Fail.Type: + return true + case is Idle.Type: + return true + case is NoMore.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + + if previousState is Reloading { + maxID = nil + } + + guard let viewModel = viewModel, let stateMachine = stateMachine else { return } + guard let authenticationBox = viewModel.context.authenticationService.activeMastodonAuthenticationBox.value else { + stateMachine.enter(Fail.self) + return + } + + let maxID = self.maxID + + Task { + do { + let response: Mastodon.Response.Content<[Mastodon.Entity.Account]> + switch viewModel.kind { + case .favoritedBy(let status): + response = try await viewModel.context.apiService.favoritedBy( + status: status, + query: .init(maxID: maxID, limit: nil), + authenticationBox: authenticationBox + ) + case .rebloggedBy(let status): + response = try await viewModel.context.apiService.rebloggedBy( + status: status, + query: .init(maxID: maxID, limit: nil), + authenticationBox: authenticationBox + ) + } + + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): fetch \(response.value.count) accounts") + + var hasNewAppend = false + var userIDs = viewModel.userFetchedResultsController.userIDs + for user in response.value { + guard !userIDs.contains(user.id) else { continue } + userIDs.append(user.id) + hasNewAppend = true + } + + let maxID = response.link?.maxID + + if hasNewAppend, maxID != nil { + await enter(state: Idle.self) + } else { + await enter(state: NoMore.self) + } + self.maxID = maxID + viewModel.userFetchedResultsController.userIDs = userIDs + + } catch { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public): fetch following fail: \(error.localizedDescription)") + await enter(state: Fail.self) + } + } // end Task + } // end func didEnter + } + + class NoMore: UserListViewModel.State { + override func isValidNextState(_ stateClass: AnyClass) -> Bool { + switch stateClass { + case is Reloading.Type: + return true + default: + return false + } + } + + override func didEnter(from previousState: GKState?) { + super.didEnter(from: previousState) + + guard let viewModel = viewModel else { return } + // trigger reload + viewModel.userFetchedResultsController.records = viewModel.userFetchedResultsController.records + } + } +} diff --git a/Mastodon/Scene/Profile/UserLIst/UserListViewModel.swift b/Mastodon/Scene/Profile/UserLIst/UserListViewModel.swift new file mode 100644 index 000000000..472c497f6 --- /dev/null +++ b/Mastodon/Scene/Profile/UserLIst/UserListViewModel.swift @@ -0,0 +1,66 @@ +// +// UserListViewModel.swift +// Mastodon +// +// Created by MainasuK on 2022-5-17. +// + +import os.log +import UIKit +import Combine +import CoreDataStack +import GameplayKit + +final class UserListViewModel { + + let logger = Logger(subsystem: "UserListViewModel", category: "ViewModel") + var disposeBag = Set() + + // input + let context: AppContext + let kind: Kind + let userFetchedResultsController: UserFetchedResultsController + let listBatchFetchViewModel = ListBatchFetchViewModel() + + // output + var diffableDataSource: UITableViewDiffableDataSource! + @MainActor private(set) lazy var stateMachine: GKStateMachine = { + let stateMachine = GKStateMachine(states: [ + State.Initial(viewModel: self), + State.Fail(viewModel: self), + State.Idle(viewModel: self), + State.Loading(viewModel: self), + State.NoMore(viewModel: self), + ]) + stateMachine.enter(State.Initial.self) + return stateMachine + }() + + init( + context: AppContext, + kind: Kind + ) { + self.context = context + self.kind = kind + self.userFetchedResultsController = UserFetchedResultsController( + managedObjectContext: context.managedObjectContext, + domain: nil, + additionalPredicate: nil + ) + // end init + + context.authenticationService.activeMastodonAuthenticationBox + .map { $0?.domain } + .assign(to: \.domain, on: userFetchedResultsController) + .store(in: &disposeBag) + } + +} + +extension UserListViewModel { + // TODO: refactor follower and following into user list + enum Kind { + case rebloggedBy(status: ManagedObjectRecord) + case favoritedBy(status: ManagedObjectRecord) + } +} diff --git a/Mastodon/Scene/Share/View/TableviewCell/StatusTableViewCellDelegate.swift b/Mastodon/Scene/Share/View/TableviewCell/StatusTableViewCellDelegate.swift index b4dbef431..034985c03 100644 --- a/Mastodon/Scene/Share/View/TableviewCell/StatusTableViewCellDelegate.swift +++ b/Mastodon/Scene/Share/View/TableviewCell/StatusTableViewCellDelegate.swift @@ -34,6 +34,8 @@ protocol StatusTableViewCellDelegate: AnyObject, AutoGenerateProtocolDelegate { func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, menuButton button: UIButton, didSelectAction action: MastodonMenu.Action) func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, spoilerOverlayViewDidPressed overlayView: SpoilerOverlayView) func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, mediaGridContainerView: MediaGridContainerView, mediaSensitiveButtonDidPressed button: UIButton) + func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) + func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) func tableViewCell(_ cell: UITableViewCell, statusView: StatusView, accessibilityActivate: Void) // sourcery:end } @@ -87,6 +89,14 @@ extension StatusViewDelegate where Self: StatusViewContainerTableViewCell { delegate?.tableViewCell(self, statusView: statusView, mediaGridContainerView: mediaGridContainerView, mediaSensitiveButtonDidPressed: button) } + func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) { + delegate?.tableViewCell(self, statusView: statusView, statusMetricView: statusMetricView, reblogButtonDidPressed: button) + } + + func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) { + delegate?.tableViewCell(self, statusView: statusView, statusMetricView: statusMetricView, favoriteButtonDidPressed: button) + } + func statusView(_ statusView: StatusView, accessibilityActivate: Void) { delegate?.tableViewCell(self, statusView: statusView, accessibilityActivate: accessibilityActivate) } diff --git a/Mastodon/Service/APIService/APIService+Favorite.swift b/Mastodon/Service/APIService/APIService+Favorite.swift index 20c2fe729..6ae2254e3 100644 --- a/Mastodon/Service/APIService/APIService+Favorite.swift +++ b/Mastodon/Service/APIService/APIService+Favorite.swift @@ -150,3 +150,45 @@ extension APIService { return response } // end func } + +extension APIService { + func favoritedBy( + status: ManagedObjectRecord, + query: Mastodon.API.Statuses.FavoriteByQuery, + authenticationBox: MastodonAuthenticationBox + ) async throws -> Mastodon.Response.Content<[Mastodon.Entity.Account]> { + let managedObjectContext = backgroundManagedObjectContext + let _statusID: Status.ID? = try? await managedObjectContext.perform { + guard let _status = status.object(in: managedObjectContext) else { return nil } + let status = _status.reblog ?? _status + return status.id + } + guard let statusID = _statusID else { + throw APIError.implicit(.badRequest) + } + + let response = try await Mastodon.API.Statuses.favoriteBy( + session: session, + domain: authenticationBox.domain, + statusID: statusID, + query: query, + authorization: authenticationBox.userAuthorization + ).singleOutput() + + try await managedObjectContext.performChanges { + for entity in response.value { + _ = Persistence.MastodonUser.createOrMerge( + in: managedObjectContext, + context: .init( + domain: authenticationBox.domain, + entity: entity, + cache: nil, + networkDate: response.networkDate + ) + ) + } // end for … in + } + + return response + } // end func +} diff --git a/Mastodon/Service/APIService/APIService+Reblog.swift b/Mastodon/Service/APIService/APIService+Reblog.swift index c8dde08bb..2542636c4 100644 --- a/Mastodon/Service/APIService/APIService+Reblog.swift +++ b/Mastodon/Service/APIService/APIService+Reblog.swift @@ -106,3 +106,45 @@ extension APIService { } } + +extension APIService { + func rebloggedBy( + status: ManagedObjectRecord, + query: Mastodon.API.Statuses.RebloggedByQuery, + authenticationBox: MastodonAuthenticationBox + ) async throws -> Mastodon.Response.Content<[Mastodon.Entity.Account]> { + let managedObjectContext = backgroundManagedObjectContext + let _statusID: Status.ID? = try? await managedObjectContext.perform { + guard let _status = status.object(in: managedObjectContext) else { return nil } + let status = _status.reblog ?? _status + return status.id + } + guard let statusID = _statusID else { + throw APIError.implicit(.badRequest) + } + + let response = try await Mastodon.API.Statuses.rebloggedBy( + session: session, + domain: authenticationBox.domain, + statusID: statusID, + query: query, + authorization: authenticationBox.userAuthorization + ).singleOutput() + + try await managedObjectContext.performChanges { + for entity in response.value { + _ = Persistence.MastodonUser.createOrMerge( + in: managedObjectContext, + context: .init( + domain: authenticationBox.domain, + entity: entity, + cache: nil, + networkDate: response.networkDate + ) + ) + } // end for … in + } + + return response + } // end func +} diff --git a/Mastodon/Service/APIService/APIService+Status.swift b/Mastodon/Service/APIService/APIService+Status.swift index 3d764663c..cf6974fbd 100644 --- a/Mastodon/Service/APIService/APIService+Status.swift +++ b/Mastodon/Service/APIService/APIService+Status.swift @@ -22,7 +22,7 @@ extension APIService { let domain = authenticationBox.domain let authorization = authenticationBox.userAuthorization - let response = try await Mastodon.API.Statuses.status( + let response = try await Mastodon.API.Statuses.status( session: session, domain: domain, statusID: statusID, diff --git a/Mastodon/Service/APIService/APIService.swift b/Mastodon/Service/APIService/APIService.swift index d9ae017d9..dabdadfea 100644 --- a/Mastodon/Service/APIService/APIService.swift +++ b/Mastodon/Service/APIService/APIService.swift @@ -6,7 +6,7 @@ // import os.log -import Foundation +import UIKit import Combine import CoreData import CoreDataStack @@ -38,6 +38,8 @@ final class APIService { NetworkActivityIndicatorManager.shared.isEnabled = true NetworkActivityIndicatorManager.shared.startDelay = 0.2 NetworkActivityIndicatorManager.shared.completionDelay = 0.5 + + UIImageView.af.sharedImageDownloader = ImageDownloader(downloadPrioritization: .lifo) } } diff --git a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+FavoriteBy.swift b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+FavoriteBy.swift new file mode 100644 index 000000000..5d5747d13 --- /dev/null +++ b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+FavoriteBy.swift @@ -0,0 +1,84 @@ +// +// Mastodon+API+Statuses+FavoriteBy.swift +// +// +// Created by MainasuK on 2022-5-17. +// + +import Foundation +import Combine + +extension Mastodon.API.Statuses { + + private static func favoriteByEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL { + return Mastodon.API.endpointURL(domain: domain) + .appendingPathComponent("statuses") + .appendingPathComponent(statusID) + .appendingPathComponent("favourited_by") // use same word from api + } + + /// Favourited by + /// + /// View who favourited a given status. + /// + /// - Since: 0.0.0 + /// - Version: 3.5.2 + /// # Last Update + /// 2022/5/17 + /// # Reference + /// [Document](https://docs.joinmastodon.org/methods/statuses/) + /// - Parameters: + /// - session: `URLSession` + /// - domain: Mastodon instance domain. e.g. "example.com" + /// - statusID: id for status + /// - authorization: User token. Could be nil if status is public + /// - Returns: `AnyPublisher` contains `Status` nested in the response + public static func favoriteBy( + session: URLSession, + domain: String, + statusID: Mastodon.Entity.Poll.ID, + query: FavoriteByQuery, + authorization: Mastodon.API.OAuth.Authorization? + ) -> AnyPublisher, Error> { + let request = Mastodon.API.get( + url: favoriteByEndpointURL(domain: domain, statusID: statusID), + query: query, + authorization: authorization + ) + return session.dataTaskPublisher(for: request) + .tryMap { data, response in + let value = try Mastodon.API.decode(type: [Mastodon.Entity.Account].self, from: data, response: response) + return Mastodon.Response.Content(value: value, response: response) + } + .eraseToAnyPublisher() + } + + public struct FavoriteByQuery: Codable, GetQuery { + + public let maxID: String? + public let limit: Int? // default 40 + + enum CodingKeys: String, CodingKey { + case maxID = "max_id" + case limit + } + + public init( + maxID: String?, + limit: Int? + ) { + self.maxID = maxID + self.limit = limit + } + + var queryItems: [URLQueryItem]? { + var items: [URLQueryItem] = [] + maxID.flatMap { items.append(URLQueryItem(name: "max_id", value: $0)) } + limit.flatMap { items.append(URLQueryItem(name: "limit", value: String($0))) } + guard !items.isEmpty else { return nil } + return items + } + + } + +} diff --git a/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+RebloggedBy.swift b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+RebloggedBy.swift new file mode 100644 index 000000000..db917a72b --- /dev/null +++ b/MastodonSDK/Sources/MastodonSDK/API/Mastodon+API+Statuses+RebloggedBy.swift @@ -0,0 +1,84 @@ +// +// Mastodon+API+Statuses+RebloggedBy.swift +// +// +// Created by MainasuK on 2022-5-17. +// + +import Foundation +import Combine + +extension Mastodon.API.Statuses { + + private static func rebloggedByEndpointURL(domain: String, statusID: Mastodon.Entity.Status.ID) -> URL { + return Mastodon.API.endpointURL(domain: domain) + .appendingPathComponent("statuses") + .appendingPathComponent(statusID) + .appendingPathComponent("reblogged_by") + } + + /// Boosted by + /// + /// View who boosted a given status. + /// + /// - Since: 0.0.0 + /// - Version: 3.5.2 + /// # Last Update + /// 2022/5/17 + /// # Reference + /// [Document](https://docs.joinmastodon.org/methods/statuses/) + /// - Parameters: + /// - session: `URLSession` + /// - domain: Mastodon instance domain. e.g. "example.com" + /// - statusID: id for status + /// - authorization: User token. Could be nil if status is public + /// - Returns: `AnyPublisher` contains `Status` nested in the response + public static func rebloggedBy( + session: URLSession, + domain: String, + statusID: Mastodon.Entity.Poll.ID, + query: RebloggedByQuery, + authorization: Mastodon.API.OAuth.Authorization? + ) -> AnyPublisher, Error> { + let request = Mastodon.API.get( + url: rebloggedByEndpointURL(domain: domain, statusID: statusID), + query: query, + authorization: authorization + ) + return session.dataTaskPublisher(for: request) + .tryMap { data, response in + let value = try Mastodon.API.decode(type: [Mastodon.Entity.Account].self, from: data, response: response) + return Mastodon.Response.Content(value: value, response: response) + } + .eraseToAnyPublisher() + } + + public struct RebloggedByQuery: Codable, GetQuery { + + public let maxID: String? + public let limit: Int? // default 40 + + enum CodingKeys: String, CodingKey { + case maxID = "max_id" + case limit + } + + public init( + maxID: String?, + limit: Int? + ) { + self.maxID = maxID + self.limit = limit + } + + var queryItems: [URLQueryItem]? { + var items: [URLQueryItem] = [] + maxID.flatMap { items.append(URLQueryItem(name: "max_id", value: $0)) } + limit.flatMap { items.append(URLQueryItem(name: "limit", value: String($0))) } + guard !items.isEmpty else { return nil } + return items + } + + } + +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView.swift index 8827eadae..8714c7cd0 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/NotificationView.swift @@ -434,6 +434,14 @@ extension NotificationView: StatusViewDelegate { assertionFailure() } + public func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) { + assertionFailure() + } + + public func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) { + assertionFailure() + } + public func statusView(_ statusView: StatusView, accessibilityActivate: Void) { assertionFailure() } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/StatusMetricView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/StatusMetricView.swift index 2a770f302..d5f6a0709 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/StatusMetricView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/StatusMetricView.swift @@ -5,10 +5,20 @@ // Created by MainasuK on 2022-1-17. // +import os.log import UIKit +protocol StatusMetricViewDelegate: AnyObject { + func statusMetricView(_ statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) + func statusMetricView(_ statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) +} + public final class StatusMetricView: UIView { + let logger = Logger(subsystem: "StatusMetricView", category: "View") + + weak var delegate: StatusMetricViewDelegate? + // container public let containerStackView: UIStackView = { let stackView = UIStackView() @@ -88,9 +98,21 @@ extension StatusMetricView { favoriteButton.setContentHuggingPriority(.required - 1, for: .horizontal) favoriteButton.setContentCompressionResistancePriority(.required - 1, for: .horizontal) - // TODO: - reblogButton.isAccessibilityElement = false - favoriteButton.isAccessibilityElement = false + reblogButton.addTarget(self, action: #selector(StatusMetricView.reblogButtonDidPressed(_:)), for: .touchUpInside) + favoriteButton.addTarget(self, action: #selector(StatusMetricView.favoriteButtonDidPressed(_:)), for: .touchUpInside) + } +} + +extension StatusMetricView { + + @objc private func reblogButtonDidPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + delegate?.statusMetricView(self, reblogButtonDidPressed: sender) + } + + @objc private func favoriteButtonDidPressed(_ sender: UIButton) { + logger.log(level: .debug, "\((#file as NSString).lastPathComponent, privacy: .public)[\(#line, privacy: .public)], \(#function, privacy: .public)") + delegate?.statusMetricView(self, favoriteButtonDidPressed: sender) } } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift index 6d105a760..bdcbd473e 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView.swift @@ -25,6 +25,8 @@ public protocol StatusViewDelegate: AnyObject { func statusView(_ statusView: StatusView, menuButton button: UIButton, didSelectAction action: MastodonMenu.Action) func statusView(_ statusView: StatusView, spoilerOverlayViewDidPressed overlayView: SpoilerOverlayView) func statusView(_ statusView: StatusView, mediaGridContainerView: MediaGridContainerView, mediaSensitiveButtonDidPressed button: UIButton) + func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) + func statusView(_ statusView: StatusView, statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) // a11y func statusView(_ statusView: StatusView, accessibilityActivate: Void) @@ -318,8 +320,12 @@ extension StatusView { ]) pollTableView.delegate = self pollVoteButton.addTarget(self, action: #selector(StatusView.pollVoteButtonDidPressed(_:)), for: .touchUpInside) + // toolbar actionToolbarContainer.delegate = self + + // statusMetricView + statusMetricView.delegate = self } } @@ -802,6 +808,17 @@ extension StatusView: ActionToolbarContainerDelegate { } } +// MARK: - StatusMetricViewDelegate +extension StatusView: StatusMetricViewDelegate { + func statusMetricView(_ statusMetricView: StatusMetricView, reblogButtonDidPressed button: UIButton) { + delegate?.statusView(self, statusMetricView: statusMetricView, reblogButtonDidPressed: button) + } + + func statusMetricView(_ statusMetricView: StatusMetricView, favoriteButtonDidPressed button: UIButton) { + delegate?.statusView(self, statusMetricView: statusMetricView, favoriteButtonDidPressed: button) + } +} + // MARK: - MastodonMenuDelegate extension StatusView: MastodonMenuDelegate { public func menuAction(_ action: MastodonMenu.Action) { From 15ca010f6ea365b1518448945855c65d989b2949 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 22:10:06 +0800 Subject: [PATCH 458/571] chore: update i18n strings --- Localization/app.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Localization/app.json b/Localization/app.json index c621bcb26..7c50eba7f 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -473,6 +473,12 @@ "title": "Followers you familiar", "followed_by_names": "Followed by %s" }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From 418778ebf781bd72220b0e49fd8f696ad9d48854 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 18:58:24 +0800 Subject: [PATCH 459/571] chore: update i18n words (cherry picked from commit 2028bd82a3d523b377d379c832d7bdb5d63d67c0) --- Localization/app.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Localization/app.json b/Localization/app.json index 32eaea9d2..c621bcb26 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -462,11 +462,17 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, "search": { "title": "Search", "search_bar": { From 829656c814452abceb99f21e89653100802cf7f2 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 22:10:06 +0800 Subject: [PATCH 460/571] chore: update i18n strings (cherry picked from commit 15ca010f6ea365b1518448945855c65d989b2949) --- Localization/app.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Localization/app.json b/Localization/app.json index c621bcb26..7c50eba7f 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -473,6 +473,12 @@ "title": "Followers you familiar", "followed_by_names": "Followed by %s" }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From 65424d5aa4aa707d4109a9273b8a40c71462f806 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:10 +0200 Subject: [PATCH 461/571] New translations app.json (Catalan) --- .../StringsConvertor/input/ca.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json index f7b597f1f..dae3ff6a9 100644 --- a/Localization/StringsConvertor/input/ca.lproj/app.json +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Els seguidors d'altres servidors no son mostrats." }, "following": { + "title": "following", "footer": "Els seguits d'altres servidors no son mostrats." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Cerca", "search_bar": { From cfe6f6bc499c00aeaa0006ee9b39f0eadd4b9556 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:11 +0200 Subject: [PATCH 462/571] New translations app.json (Kabyle) --- .../StringsConvertor/input/kab.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/kab.lproj/app.json b/Localization/StringsConvertor/input/kab.lproj/app.json index f93146903..758dabe06 100644 --- a/Localization/StringsConvertor/input/kab.lproj/app.json +++ b/Localization/StringsConvertor/input/kab.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." }, "following": { + "title": "following", "footer": "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Nadi", "search_bar": { From dd30774b3445512affabcefe68cc872775e1ecc9 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:12 +0200 Subject: [PATCH 463/571] New translations app.json (Indonesian) --- .../StringsConvertor/input/id.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/id.lproj/app.json b/Localization/StringsConvertor/input/id.lproj/app.json index 9768f7efe..9240dcad4 100644 --- a/Localization/StringsConvertor/input/id.lproj/app.json +++ b/Localization/StringsConvertor/input/id.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Cari", "search_bar": { From 62e18afcb435152b3a8abad97359dfd36713108b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:13 +0200 Subject: [PATCH 464/571] New translations app.json (Spanish, Argentina) --- .../StringsConvertor/input/es-AR.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index 246b151c2..a6f8f2013 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "No se muestran los seguidores de otros servidores." }, "following": { + "title": "following", "footer": "No se muestran las cuentas de otros servidores que seguís." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Buscar", "search_bar": { From 8d3d2dc3b94996517693b3ee1003b2a1b2a9fb61 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:14 +0200 Subject: [PATCH 465/571] New translations app.json (Italian) --- .../StringsConvertor/input/it.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json index 4a83e3a0a..759c742c4 100644 --- a/Localization/StringsConvertor/input/it.lproj/app.json +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "I seguaci da altri server non vengono visualizzati." }, "following": { + "title": "following", "footer": "I follow da altri server non vengono visualizzati." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Cerca", "search_bar": { From 118885ca3e534024cc0677df54cf8c2dc1ee2297 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:15 +0200 Subject: [PATCH 466/571] New translations app.json (English, United States) --- .../StringsConvertor/input/en-US.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/en-US.lproj/app.json b/Localization/StringsConvertor/input/en-US.lproj/app.json index 32eaea9d2..7c50eba7f 100644 --- a/Localization/StringsConvertor/input/en-US.lproj/app.json +++ b/Localization/StringsConvertor/input/en-US.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From de31e4a58464dcd423340e5b1de857c575d90978 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:16 +0200 Subject: [PATCH 467/571] New translations app.json (Welsh) --- .../StringsConvertor/input/cy.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/cy.lproj/app.json b/Localization/StringsConvertor/input/cy.lproj/app.json index 59ab278a7..860871ed7 100644 --- a/Localization/StringsConvertor/input/cy.lproj/app.json +++ b/Localization/StringsConvertor/input/cy.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From c54b231470dd7fd427c8f7be60d504c103e01c81 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:17 +0200 Subject: [PATCH 468/571] New translations app.json (Scottish Gaelic) --- .../StringsConvertor/input/gd.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/gd.lproj/app.json b/Localization/StringsConvertor/input/gd.lproj/app.json index d5555b8f9..7a9b90655 100644 --- a/Localization/StringsConvertor/input/gd.lproj/app.json +++ b/Localization/StringsConvertor/input/gd.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Cha dèid luchd-leantainn o fhrithealaichean eile a shealltainn." }, "following": { + "title": "following", "footer": "Cha dèid cò air a leanas tu air frithealaichean eile a shealltainn." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Lorg", "search_bar": { From bd87b910b3e8122eb9d182474faceae230f33ab4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:20 +0200 Subject: [PATCH 469/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json index 15a7f2271..5e9c7e9c5 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/app.json +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Şopîner ji rajekerên din nayê dîtin." }, "following": { + "title": "following", "footer": "Şopandin ji rajekerên din nayê dîtin." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Bigere", "search_bar": { From 0af80be1f02a1c0127eed1fbad8789fb71916f72 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:21 +0200 Subject: [PATCH 470/571] New translations app.json (English) --- .../StringsConvertor/input/en.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/en.lproj/app.json b/Localization/StringsConvertor/input/en.lproj/app.json index 32eaea9d2..7c50eba7f 100644 --- a/Localization/StringsConvertor/input/en.lproj/app.json +++ b/Localization/StringsConvertor/input/en.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From fc66b21ef7148deb92afbb5e32f03b314c68315e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:23 +0200 Subject: [PATCH 471/571] New translations app.json (Galician) --- .../StringsConvertor/input/gl.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/gl.lproj/app.json b/Localization/StringsConvertor/input/gl.lproj/app.json index 61006f241..f02a1d8e6 100644 --- a/Localization/StringsConvertor/input/gl.lproj/app.json +++ b/Localization/StringsConvertor/input/gl.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Non se mostran seguidoras desde outros servidores." }, "following": { + "title": "following", "footer": "Non se mostran os seguimentos desde outros servidores." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Procurar", "search_bar": { From 3c8897c4a6965c67caa608b7e35261ac3d6094cb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:26 +0200 Subject: [PATCH 472/571] New translations app.json (Turkish) --- .../StringsConvertor/input/tr.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/tr.lproj/app.json b/Localization/StringsConvertor/input/tr.lproj/app.json index e0609e2c7..cd770f0fb 100644 --- a/Localization/StringsConvertor/input/tr.lproj/app.json +++ b/Localization/StringsConvertor/input/tr.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Diğer sunucudaki takipçiler gösterilemiyor." }, "following": { + "title": "following", "footer": "Diğer sunucudaki takip edilenler gösterilemiyor." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Arama", "search_bar": { From 40117e4e9fc46d65943aa2bd3d7a1503cae78984 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:31 +0200 Subject: [PATCH 473/571] New translations app.json (Portuguese, Brazilian) --- .../StringsConvertor/input/pt-BR.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/app.json b/Localization/StringsConvertor/input/pt-BR.lproj/app.json index d5c6b5c8e..942c6a2a6 100644 --- a/Localization/StringsConvertor/input/pt-BR.lproj/app.json +++ b/Localization/StringsConvertor/input/pt-BR.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From 646476b95da2f0b8882a5121c0f775eebcb7e4e8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:32 +0200 Subject: [PATCH 474/571] New translations app.json (Hindi) --- .../StringsConvertor/input/hi.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/hi.lproj/app.json b/Localization/StringsConvertor/input/hi.lproj/app.json index bcb89170a..0f90d6f70 100644 --- a/Localization/StringsConvertor/input/hi.lproj/app.json +++ b/Localization/StringsConvertor/input/hi.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From a2219e0dea14982d5c57d0b6deb14e77ceb53eae Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:33 +0200 Subject: [PATCH 475/571] New translations app.json (Chinese Traditional) --- .../StringsConvertor/input/zh-Hant.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json index 19f77b297..fa6538bbc 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "來自其他伺服器的跟隨者不會被顯示。" }, "following": { + "title": "following", "footer": "來自其他伺服器的跟隨中不會被顯示。" }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "搜尋", "search_bar": { From 7f0d2b61be49f4247e9ae485072cba40f279181c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:34 +0200 Subject: [PATCH 476/571] New translations app.json (French) --- .../StringsConvertor/input/fr.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/fr.lproj/app.json b/Localization/StringsConvertor/input/fr.lproj/app.json index 7e393a68d..d37c34632 100644 --- a/Localization/StringsConvertor/input/fr.lproj/app.json +++ b/Localization/StringsConvertor/input/fr.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s." }, "following": { + "title": "following", "footer": "Les abonnés issus des autres serveurs ne sont pas affichés." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Rechercher", "search_bar": { From 73fc8cdaaa8fba3584acd3a2034c46d3820c1985 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:35 +0200 Subject: [PATCH 477/571] New translations app.json (Vietnamese) --- .../StringsConvertor/input/vi.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/vi.lproj/app.json b/Localization/StringsConvertor/input/vi.lproj/app.json index 69d521d9e..348a64c10 100644 --- a/Localization/StringsConvertor/input/vi.lproj/app.json +++ b/Localization/StringsConvertor/input/vi.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Không hiển thị người theo dõi từ máy chủ khác." }, "following": { + "title": "following", "footer": "Không hiển thị người bạn theo dõi từ máy chủ khác." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Tìm kiếm", "search_bar": { From cc2acca19d2a300cedcb9a422cb012198109b694 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:37 +0200 Subject: [PATCH 478/571] New translations app.json (Chinese Simplified) --- .../StringsConvertor/input/zh-Hans.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index 4bc55effe..a9b8f13ab 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "不会显示来自其它服务器的关注者" }, "following": { + "title": "following", "footer": "不会显示来自其它服务器的关注" }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "搜索", "search_bar": { From 7d2d1c8520c39a0437082f8bc1b79dd51173cca2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:38 +0200 Subject: [PATCH 479/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/sv.lproj/app.json b/Localization/StringsConvertor/input/sv.lproj/app.json index 19229080c..4153222db 100644 --- a/Localization/StringsConvertor/input/sv.lproj/app.json +++ b/Localization/StringsConvertor/input/sv.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Följare från andra servrar visas inte." }, "following": { + "title": "following", "footer": "Följda på andra servrar visas inte." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Sök", "search_bar": { From c6c4c7f93f0cbc734ae143604f8030a39b4b75a8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:40 +0200 Subject: [PATCH 480/571] New translations app.json (Basque) --- .../StringsConvertor/input/eu.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/eu.lproj/app.json b/Localization/StringsConvertor/input/eu.lproj/app.json index 608a07d98..3d8f354ca 100644 --- a/Localization/StringsConvertor/input/eu.lproj/app.json +++ b/Localization/StringsConvertor/input/eu.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Beste zerbitzarietako jarraitzaileak ez dira bistaratzen." }, "following": { + "title": "following", "footer": "Beste zerbitzarietan jarraitutakoak ez dira bistaratzen." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Bilatu", "search_bar": { From e6f1316d356c3811852b142310bf6c8c83794776 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:41 +0200 Subject: [PATCH 481/571] New translations app.json (Russian) --- .../StringsConvertor/input/ru.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ru.lproj/app.json b/Localization/StringsConvertor/input/ru.lproj/app.json index 7ef4c705a..4a14a5425 100644 --- a/Localization/StringsConvertor/input/ru.lproj/app.json +++ b/Localization/StringsConvertor/input/ru.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Поиск", "search_bar": { From d58f17a74eda2144145e2caa26ea23f780fa1996 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:43 +0200 Subject: [PATCH 482/571] New translations app.json (Romanian) --- .../StringsConvertor/input/ro.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ro.lproj/app.json b/Localization/StringsConvertor/input/ro.lproj/app.json index a8ee8fe61..7120467d6 100644 --- a/Localization/StringsConvertor/input/ro.lproj/app.json +++ b/Localization/StringsConvertor/input/ro.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From 08a285d8d3edb8ed3933ec20e63920a6c20d0beb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:45 +0200 Subject: [PATCH 483/571] New translations app.json (Spanish) --- .../StringsConvertor/input/es.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/es.lproj/app.json b/Localization/StringsConvertor/input/es.lproj/app.json index 6c3bd091e..42153de81 100644 --- a/Localization/StringsConvertor/input/es.lproj/app.json +++ b/Localization/StringsConvertor/input/es.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "No se muestran los seguidores de otros servidores." }, "following": { + "title": "following", "footer": "No se muestran los seguidos de otros servidores." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Buscar", "search_bar": { From 11141b8fe5d06d59c6d860bfb5272d1c2a13a636 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:47 +0200 Subject: [PATCH 484/571] New translations app.json (Arabic) --- .../StringsConvertor/input/ar.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json index 6b41bdf88..505fa89bf 100644 --- a/Localization/StringsConvertor/input/ar.lproj/app.json +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى." }, "following": { + "title": "following", "footer": "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "البَحث", "search_bar": { From 7727812d2f3ede9e64928dd9cce257a899ab7083 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:52 +0200 Subject: [PATCH 485/571] New translations app.json (Danish) --- .../StringsConvertor/input/da.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/da.lproj/app.json b/Localization/StringsConvertor/input/da.lproj/app.json index 32eaea9d2..7c50eba7f 100644 --- a/Localization/StringsConvertor/input/da.lproj/app.json +++ b/Localization/StringsConvertor/input/da.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From afd29ed706c014661510a2a69e70684e92458134 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:55 +0200 Subject: [PATCH 486/571] New translations app.json (German) --- .../StringsConvertor/input/de.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/de.lproj/app.json b/Localization/StringsConvertor/input/de.lproj/app.json index 8215d0864..0c8fd3b28 100644 --- a/Localization/StringsConvertor/input/de.lproj/app.json +++ b/Localization/StringsConvertor/input/de.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Follower von anderen Servern werden nicht angezeigt." }, "following": { + "title": "following", "footer": "Wem das Konto folgt wird von anderen Servern werden nicht angezeigt." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Suche", "search_bar": { From 439626b297cebce50a1baebee139e8a38950c9f8 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:58 +0200 Subject: [PATCH 487/571] New translations app.json (Japanese) --- .../StringsConvertor/input/ja.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ja.lproj/app.json b/Localization/StringsConvertor/input/ja.lproj/app.json index ccbae6490..7d07d72e2 100644 --- a/Localization/StringsConvertor/input/ja.lproj/app.json +++ b/Localization/StringsConvertor/input/ja.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "他のサーバーからのフォロワーは表示されません。" }, "following": { + "title": "following", "footer": "他のサーバーにいるフォローは表示されません。" }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "検索", "search_bar": { From d0644d748a2932a5e42c6f69b832dc3eb5877349 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:18:59 +0200 Subject: [PATCH 488/571] New translations app.json (Korean) --- .../StringsConvertor/input/ko.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ko.lproj/app.json b/Localization/StringsConvertor/input/ko.lproj/app.json index c55533fed..ef1a05d5e 100644 --- a/Localization/StringsConvertor/input/ko.lproj/app.json +++ b/Localization/StringsConvertor/input/ko.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "검색", "search_bar": { From 177f277f0e595dbe569364c4339e3148f787ef75 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:19:00 +0200 Subject: [PATCH 489/571] New translations app.json (Dutch) --- .../StringsConvertor/input/nl.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/nl.lproj/app.json b/Localization/StringsConvertor/input/nl.lproj/app.json index 499214f7b..982cfb877 100644 --- a/Localization/StringsConvertor/input/nl.lproj/app.json +++ b/Localization/StringsConvertor/input/nl.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Volgers van andere servers worden niet weergegeven." }, "following": { + "title": "following", "footer": "Volgers van andere servers worden niet weergegeven." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Zoeken", "search_bar": { From ec9a4e917896da58732e05fdceb171ef5e06e4f9 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:19:03 +0200 Subject: [PATCH 490/571] New translations app.json (Portuguese) --- .../StringsConvertor/input/pt.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/pt.lproj/app.json b/Localization/StringsConvertor/input/pt.lproj/app.json index 32eaea9d2..7c50eba7f 100644 --- a/Localization/StringsConvertor/input/pt.lproj/app.json +++ b/Localization/StringsConvertor/input/pt.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Followers from other servers are not displayed." }, "following": { + "title": "following", "footer": "Follows from other servers are not displayed." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Search", "search_bar": { From 9bff7abc52443e7dbdc0abe0eca8050c0a8f00db Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:19:04 +0200 Subject: [PATCH 491/571] New translations app.json (Thai) --- .../StringsConvertor/input/th.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index c973e5b2f..cbe072eff 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ" }, "following": { + "title": "following", "footer": "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ" }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "ค้นหา", "search_bar": { From 00d06ce909087611c3b30c73226f6cf3bce17c72 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:19:34 +0200 Subject: [PATCH 492/571] New translations app.json (Sorani (Kurdish)) --- .../StringsConvertor/input/ckb.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/ckb.lproj/app.json b/Localization/StringsConvertor/input/ckb.lproj/app.json index bd5d3048b..798768ed5 100644 --- a/Localization/StringsConvertor/input/ckb.lproj/app.json +++ b/Localization/StringsConvertor/input/ckb.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "شوێنکەوتووەکانی لە ڕاژەکارەکانی ترەوە نیشان نادرێت." }, "following": { + "title": "following", "footer": "شوێنکەوتنەکانی بۆ هەژماری ڕاژەکارەکانی تر نیشان نادرێت." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "بگەڕێ", "search_bar": { From 24ae18d40dbd8df1183f872a583dc733ffd479a7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:19:50 +0200 Subject: [PATCH 493/571] New translations Localizable.stringsdict (Vietnamese) --- .../StringsConvertor/input/vi.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict index 760e7363e..6905b240e 100644 --- a/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/vi.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + Theo dõi bởi %1$@, và %ld người quen plural.count.metric_formatted.post From b0586aa042ecbc0a1cfffaba9b0b39c5a0cffe2e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:20:04 +0200 Subject: [PATCH 494/571] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es-AR.lproj/Localizable.stringsdict | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict index f853165bb..2bd66395a 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es-AR.lproj/Localizable.stringsdict @@ -53,7 +53,7 @@ plural.count.followed_by_and_mutual NSStringLocalizedFormatKey - %#@names@%#@count_mutual@ + %#@names@: "%#@count_mutual@ names one @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Seguido por %1$@ y otra cuenta mutua other - Followed by %1$@, and %ld mutuals + Seguido por %1$@ y otras %ld cuentas mutuas plural.count.metric_formatted.post From 2b40c5ab8a9fbeb9940e245a7ae829219b45dd4a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 16:20:44 +0200 Subject: [PATCH 495/571] New translations app.json (Finnish) --- .../StringsConvertor/input/fi.lproj/app.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Localization/StringsConvertor/input/fi.lproj/app.json b/Localization/StringsConvertor/input/fi.lproj/app.json index 5759392ae..37c3fa3e8 100644 --- a/Localization/StringsConvertor/input/fi.lproj/app.json +++ b/Localization/StringsConvertor/input/fi.lproj/app.json @@ -462,11 +462,23 @@ } }, "follower": { + "title": "follower", "footer": "Seuraajia muilta palvelimilta ei näytetä." }, "following": { + "title": "following", "footer": "Seurauksia muilta palvelimilta ei näytetä." }, + "familiarFollowers": { + "title": "Followers you familiar", + "followed_by_names": "Followed by %s" + }, + "favorited_by": { + "title": "Favorited By" + }, + "reblogged_by": { + "title": "Reblogged By" + }, "search": { "title": "Haku", "search_bar": { From 05c5b77bbddd3c0d50b37a8ae12407db6c9ca232 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 22:36:58 +0800 Subject: [PATCH 496/571] chore: update i18n resources --- .../Generated/Strings.swift | 24 ++++++ .../Resources/ar.lproj/Localizable.strings | 6 ++ .../ar.lproj/Localizable.stringsdict | 43 ++++++++++ .../Resources/ca.lproj/Localizable.strings | 6 ++ .../ca.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/ckb.lproj/Localizable.strings | 6 ++ .../ckb.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/de.lproj/Localizable.strings | 6 ++ .../de.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/en.lproj/Localizable.strings | 6 ++ .../en.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/es.lproj/Localizable.strings | 6 ++ .../es.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/eu.lproj/Localizable.strings | 6 ++ .../eu.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/fr.lproj/Localizable.strings | 6 ++ .../fr.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/gd.lproj/Localizable.strings | 6 ++ .../gd.lproj/Localizable.stringsdict | 35 ++++++++ .../Resources/gl.lproj/Localizable.strings | 12 ++- .../gl.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/it.lproj/Localizable.strings | 6 ++ .../it.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/ja.lproj/Localizable.strings | 6 ++ .../ja.lproj/Localizable.stringsdict | 23 ++++++ .../Resources/kab.lproj/Localizable.strings | 6 ++ .../kab.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/ku.lproj/Localizable.strings | 54 +++++++------ .../ku.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/nl.lproj/Localizable.strings | 6 ++ .../nl.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/ru.lproj/Localizable.strings | 6 ++ .../ru.lproj/Localizable.stringsdict | 35 ++++++++ .../Resources/sv.lproj/Localizable.strings | 12 ++- .../sv.lproj/Localizable.stringsdict | 29 ++++++- .../Resources/th.lproj/Localizable.strings | 80 ++++++++++--------- .../th.lproj/Localizable.stringsdict | 25 +++++- .../Resources/tr.lproj/Localizable.strings | 6 ++ .../tr.lproj/Localizable.stringsdict | 27 +++++++ .../Resources/vi.lproj/Localizable.strings | 80 ++++++++++--------- .../vi.lproj/Localizable.stringsdict | 23 ++++++ .../zh-Hans.lproj/Localizable.strings | 80 ++++++++++--------- .../zh-Hans.lproj/Localizable.stringsdict | 25 +++++- .../zh-Hant.lproj/Localizable.strings | 10 ++- .../zh-Hant.lproj/Localizable.stringsdict | 23 ++++++ 45 files changed, 908 insertions(+), 146 deletions(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift index f8208f0db..bc621b295 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift +++ b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift @@ -563,17 +563,33 @@ public enum L10n { public static let posts = L10n.tr("Localizable", "Scene.Discovery.Tabs.Posts") } } + public enum Familiarfollowers { + /// Followed by %@ + public static func followedByNames(_ p1: Any) -> String { + return L10n.tr("Localizable", "Scene.Familiarfollowers.FollowedByNames", String(describing: p1)) + } + /// Followers you familiar + public static let title = L10n.tr("Localizable", "Scene.Familiarfollowers.Title") + } public enum Favorite { /// Your Favorites public static let title = L10n.tr("Localizable", "Scene.Favorite.Title") } + public enum FavoritedBy { + /// Favorited By + public static let title = L10n.tr("Localizable", "Scene.FavoritedBy.Title") + } public enum Follower { /// Followers from other servers are not displayed. public static let footer = L10n.tr("Localizable", "Scene.Follower.Footer") + /// follower + public static let title = L10n.tr("Localizable", "Scene.Follower.Title") } public enum Following { /// Follows from other servers are not displayed. public static let footer = L10n.tr("Localizable", "Scene.Following.Footer") + /// following + public static let title = L10n.tr("Localizable", "Scene.Following.Title") } public enum HomeTimeline { /// Home @@ -709,6 +725,10 @@ public enum L10n { public static let replies = L10n.tr("Localizable", "Scene.Profile.SegmentedControl.Replies") } } + public enum RebloggedBy { + /// Reblogged By + public static let title = L10n.tr("Localizable", "Scene.RebloggedBy.Title") + } public enum Register { /// Let’s get you set up on %@ public static func letsGetYouSetUpOnDomain(_ p1: Any) -> String { @@ -1307,6 +1327,10 @@ public enum L10n { public static func favorite(_ p1: Int) -> String { return L10n.tr("Localizable", "plural.count.favorite", p1) } + /// Plural format key: "%#@names@%#@count_mutual@" + public static func followedByAndMutual(_ p1: Int, _ p2: Int) -> String { + return L10n.tr("Localizable", "plural.count.followed_by_and_mutual", p1, p2) + } /// Plural format key: "%#@count_follower@" public static func follower(_ p1: Int) -> String { return L10n.tr("Localizable", "plural.count.follower", p1) diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index 12ce8cd2d..0c5b06959 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -208,9 +208,14 @@ "Scene.Discovery.Tabs.Hashtags" = "وُسُوم"; "Scene.Discovery.Tabs.News" = "أخبار"; "Scene.Discovery.Tabs.Posts" = "مَنشُورات"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "مُفضَّلَتُك"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "ُّزِرُّ الشِّعار"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "إظهار منشورات جديدة"; @@ -254,6 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "مَنشورات"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "مَنشُوراتٌ وَرُدُود"; "Scene.Profile.SegmentedControl.Replies" = "رُدُود"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "الاِتِّفاقيَّة"; "Scene.Register.Error.Item.Email" = "البريد الإلكتروني"; "Scene.Register.Error.Item.Locale" = "اللغة المحلية"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict index 61ba17c28..12990353a 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict @@ -74,6 +74,49 @@ %ld حَرف + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + zero + + one + + two + + few + + many + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + Followed by %1$@, and %ld mutuals + one + Followed by %1$@, and another mutual + two + Followed by %1$@, and %ld mutuals + few + Followed by %1$@, and %ld mutuals + many + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index 6f35c13b8..eb0c441a5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -208,9 +208,14 @@ carregat a Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Etiquetes"; "Scene.Discovery.Tabs.News" = "Notícies"; "Scene.Discovery.Tabs.Posts" = "Publicacions"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Els teus Favorits"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Els seguidors d'altres servidors no son mostrats."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Els seguits d'altres servidors no son mostrats."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Botó de logotip"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Veure noves publicacions"; @@ -254,6 +259,7 @@ carregat a Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Publicacions"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Publicacions i Respostes"; "Scene.Profile.SegmentedControl.Replies" = "Respostes"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Acord"; "Scene.Register.Error.Item.Email" = "Correu electrònic"; "Scene.Register.Error.Item.Locale" = "Idioma"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict index c83c65883..cc28edbc6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caràcters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Seguit per %1$@, i un altre mutu + other + Seguit per %1$@, i %ld mutus + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings index a3eda382e..93d15649f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings @@ -207,9 +207,14 @@ "Scene.Discovery.Tabs.Hashtags" = "هاشتاگەکان"; "Scene.Discovery.Tabs.News" = "هەواڵەکان"; "Scene.Discovery.Tabs.Posts" = "پۆستەکان"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "بەدڵبووەکانت"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "شوێنکەوتووەکانی لە ڕاژەکارەکانی ترەوە نیشان نادرێت."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "شوێنکەوتنەکانی بۆ هەژماری ڕاژەکارەکانی تر نیشان نادرێت."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "پۆستە نوێکان ببینە"; @@ -253,6 +258,7 @@ "Scene.Profile.SegmentedControl.Posts" = "پۆستەکان"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "پۆست و وەڵامەکان"; "Scene.Profile.SegmentedControl.Replies" = "وەڵامەکان"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "ڕێککەوتن"; "Scene.Register.Error.Item.Email" = "ئیمێڵ"; "Scene.Register.Error.Item.Locale" = "زمان"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict index 9d9adb118..001a8a608 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld نووسە + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index 1a361b7c3..4f0be7170 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -208,9 +208,14 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "Nachrichten"; "Scene.Discovery.Tabs.Posts" = "Beiträge"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Deine Favoriten"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Follower von anderen Servern werden nicht angezeigt."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Wem das Konto folgt wird von anderen Servern werden nicht angezeigt."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Neue Beiträge anzeigen"; @@ -254,6 +259,7 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.Profile.SegmentedControl.Posts" = "Beiträge"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Beiträge und Antworten"; "Scene.Profile.SegmentedControl.Replies" = "Antworten"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Vereinbarung"; "Scene.Register.Error.Item.Email" = "E-Mail"; "Scene.Register.Error.Item.Locale" = "Sprache"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict index 36fb9f19e..3ea0fd0e3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld Zeichen + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings index cf08499b7..db1baf9b4 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings @@ -208,9 +208,14 @@ uploaded to Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "News"; "Scene.Discovery.Tabs.Posts" = "Posts"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Your Favorites"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Followers from other servers are not displayed."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Follows from other servers are not displayed."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "See new posts"; @@ -254,6 +259,7 @@ uploaded to Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Posts"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Posts and Replies"; "Scene.Profile.SegmentedControl.Replies" = "Replies"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Agreement"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Locale"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict index 80cfd3d62..bdcae6ac9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld characters + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings index e6193c45e..2842ce4ca 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings @@ -209,9 +209,14 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Discovery.Tabs.Hashtags" = "Etiquetas"; "Scene.Discovery.Tabs.News" = "Noticias"; "Scene.Discovery.Tabs.Posts" = "Publicaciones"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Tus Favoritos"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "No se muestran los seguidores de otros servidores."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "No se muestran los seguidos de otros servidores."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ver nuevas publicaciones"; @@ -255,6 +260,7 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.Profile.SegmentedControl.Posts" = "Publicaciones"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Publicaciones y respuestas"; "Scene.Profile.SegmentedControl.Replies" = "Respuestas"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Aceptación"; "Scene.Register.Error.Item.Email" = "Correo electrónico"; "Scene.Register.Error.Item.Locale" = "Idioma"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict index 31cd9d237..05bcff142 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings index 72105dcd0..425ad78cd 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings @@ -208,9 +208,14 @@ Mastodonera igo."; "Scene.Discovery.Tabs.Hashtags" = "Traolak"; "Scene.Discovery.Tabs.News" = "Albisteak"; "Scene.Discovery.Tabs.Posts" = "Argitalpenak"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Zure gogokoak"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Beste zerbitzarietako jarraitzaileak ez dira bistaratzen."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Beste zerbitzarietan jarraitutakoak ez dira bistaratzen."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Ikusi bidal. berriak"; @@ -254,6 +259,7 @@ Mastodonera igo."; "Scene.Profile.SegmentedControl.Posts" = "Bidalketak"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Bidalketak eta erantzunak"; "Scene.Profile.SegmentedControl.Replies" = "Erantzunak"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Adostasuna"; "Scene.Register.Error.Item.Email" = "Eposta"; "Scene.Register.Error.Item.Locale" = "Eskualdeko ezarpenak"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict index 5de100844..0159a7da9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld karaktere + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings index 6cd159a8e..4ca7535a5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings @@ -208,9 +208,14 @@ téléversé sur Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "Actualité"; "Scene.Discovery.Tabs.Posts" = "Messages"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Vos favoris"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Les abonnés issus des autres serveurs ne sont pas affichés."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Voir les nouvelles publications"; @@ -254,6 +259,7 @@ téléversé sur Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Publications"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Messages et réponses"; "Scene.Profile.SegmentedControl.Replies" = "Réponses"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Accord"; "Scene.Register.Error.Item.Email" = "Courriel"; "Scene.Register.Error.Item.Locale" = "Lieu"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict index d251c82f3..50e1b8326 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caractères + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings index b310e3ef5..8d75b1614 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings @@ -209,9 +209,14 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Discovery.Tabs.Hashtags" = "Tagaichean hais"; "Scene.Discovery.Tabs.News" = "Naidheachdan"; "Scene.Discovery.Tabs.Posts" = "Postaichean"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Na h-annsachdan agad"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Cha dèid luchd-leantainn o fhrithealaichean eile a shealltainn."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Cha dèid cò air a leanas tu air frithealaichean eile a shealltainn."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Seall na postaichean ùra"; @@ -255,6 +260,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.Profile.SegmentedControl.Posts" = "Postaichean"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Postaichean ’s freagairtean"; "Scene.Profile.SegmentedControl.Replies" = "Freagairtean"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Aonta"; "Scene.Register.Error.Item.Email" = "Post-d"; "Scene.Register.Error.Item.Locale" = "Sgeama ionadail"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict index c7bc77310..f041677fa 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.stringsdict @@ -62,6 +62,41 @@ %ld caractar + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + two + + few + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + two + Followed by %1$@, and %ld mutuals + few + Followed by %1$@, and %ld mutuals + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings index 25c59d712..2e27d2b4f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings @@ -200,7 +200,7 @@ ser subido a Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Abrir cliente de email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Mira na caixa de correo."; "Scene.ConfirmEmail.Subtitle" = "Preme na ligazón que che enviamos ao email para verificar a conta."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Preme na ligazón que che enviamos ao email para verificar a conta"; "Scene.ConfirmEmail.Title" = "O último detalle."; "Scene.Discovery.Intro" = "Estas son as publicacións en voga no teu recuncho de Mastodon."; "Scene.Discovery.Tabs.Community" = "Comunidade"; @@ -208,9 +208,14 @@ ser subido a Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Cancelos"; "Scene.Discovery.Tabs.News" = "Novas"; "Scene.Discovery.Tabs.Posts" = "Publicacións"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Publicacións Favoritas"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Non se mostran seguidoras desde outros servidores."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Non se mostran os seguimentos desde outros servidores."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Toca para ir arriba e toca outra vez para volver ao mesmo lugar"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Botón do logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Novas publicacións"; @@ -254,6 +259,7 @@ ser subido a Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Publicacións"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Publicacións e respostas"; "Scene.Profile.SegmentedControl.Replies" = "Respostas"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Acordo"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Locale"; @@ -286,7 +292,7 @@ ser subido a Mastodon."; "Scene.Register.Input.Password.Require" = "O contrasinal debe ter polo menos:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Este nome de usuaria xa está en uso."; "Scene.Register.Input.Username.Placeholder" = "identificador"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Imos crear a túa conta en %@"; "Scene.Register.Title" = "Imos crear a túa conta en %@"; "Scene.Report.Content1" = "Hai outras publicacións que desexes engadir á denuncia?"; "Scene.Report.Content2" = "Hai algo que a moderación deba saber acerca desta denuncia?"; @@ -420,7 +426,7 @@ ser subido a Mastodon."; "Scene.SuggestionAccount.Title" = "Atopar persoas para seguir"; "Scene.Thread.BackTitle" = "Publicación"; "Scene.Thread.Title" = "Publicación de %@"; -"Scene.Welcome.GetStarted" = "Comezar"; +"Scene.Welcome.GetStarted" = "Crear conta"; "Scene.Welcome.LogIn" = "Acceder"; "Scene.Welcome.Slogan" = "Comunicación social de volta ás túas mans."; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict index abd72c1b9..ff9d87c18 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caracteres + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Seguida por %1$@, e outro común + other + Seguida por %1$@, e %ld comúns + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index c66ca14fa..db3f34373 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -208,9 +208,14 @@ caricato su Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Notizie"; "Scene.Discovery.Tabs.Posts" = "Post"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "I tuoi preferiti"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "I seguaci da altri server non vengono visualizzati."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "I follow da altri server non vengono visualizzati."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Pulsante Logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Vedi nuovi post"; @@ -254,6 +259,7 @@ caricato su Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Post"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Post e risposte"; "Scene.Profile.SegmentedControl.Replies" = "Risposte"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Accordo"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Locale"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict index 423ca4104..38f986521 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld caratteri + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Seguito da %1$@ e un altro amico in comune + other + Seguito da %1$@ e %ld amici in comune + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings index be6690aba..c15d31843 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings @@ -203,9 +203,14 @@ "Scene.Discovery.Tabs.Hashtags" = "ハッシュタグ"; "Scene.Discovery.Tabs.News" = "ニュース"; "Scene.Discovery.Tabs.Posts" = "投稿"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "お気に入り"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "他のサーバーからのフォロワーは表示されません。"; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "他のサーバーにいるフォローは表示されません。"; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "新しい投稿を見る"; @@ -249,6 +254,7 @@ "Scene.Profile.SegmentedControl.Posts" = "投稿"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "投稿と返信"; "Scene.Profile.SegmentedControl.Replies" = "返信"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "契約"; "Scene.Register.Error.Item.Email" = "メール"; "Scene.Register.Error.Item.Locale" = "地域"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict index 87e4f8a5e..054b8cded 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 文字 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings index d783baee5..769dbb32d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings @@ -208,9 +208,14 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Ihacṭagen"; "Scene.Discovery.Tabs.News" = "Isallen"; "Scene.Discovery.Tabs.Posts" = "Tisuffaɣ"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Ismenyifen-ik·im"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Ineḍfaren seg yiqeddacen-nniḍen ur d-ttwaskanen ara."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Tissufaɣ timaynutin"; @@ -254,6 +259,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Imagraden"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Tisuffaɣ d tririyin"; "Scene.Profile.SegmentedControl.Replies" = "Tiririyin"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Amtawa"; "Scene.Register.Error.Item.Email" = "Imayl"; "Scene.Register.Error.Item.Locale" = "Tadigant"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict index 0fde8d68f..09e3645f3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld yisekkilen + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings index 7732c500b..45c84179d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings @@ -201,7 +201,7 @@ Profîla te ji wan ra wiha xuya dike."; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Nameyên xwe yên wergirtî kontrol bike."; "Scene.ConfirmEmail.Subtitle" = "Me tenê e-nameyek ji %@ re şand, girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Girêdana e-nameyê ku me ji te re şand bitikîne da ku ajimêra xwe bidî piştrastkirin"; "Scene.ConfirmEmail.Title" = "Tiştekî dawî."; "Scene.Discovery.Intro" = "Ev şandiyên ku di quncika Mastodon balê dikişîne."; "Scene.Discovery.Tabs.Community" = "Civak"; @@ -209,11 +209,16 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Nûçe"; "Scene.Discovery.Tabs.Posts" = "Şandî"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Bijarteyên te"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Şopîner ji rajekerên din nayê dîtin."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Şopandin ji rajekerên din nayê dîtin."; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.Following.Title" = "following"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Ji bo şemitandina jor û dîsa li cihê berê vegerî bitikîne"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Bişkoka Logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Şandiyên nû bibîne"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Derhêl"; "Scene.HomeTimeline.NavigationBarState.Published" = "Hate weşandin!"; @@ -255,6 +260,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Profile.SegmentedControl.Posts" = "Şandî"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Şandî û bersiv"; "Scene.Profile.SegmentedControl.Replies" = "Bersiv"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Peyman"; "Scene.Register.Error.Item.Email" = "E-name"; "Scene.Register.Error.Item.Locale" = "Zimanê navrûyê"; @@ -287,7 +293,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Register.Input.Password.Require" = "Pêdiviya pêborîna te ya herî kêm:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Navê vê bikarhêner tê girtin."; "Scene.Register.Input.Username.Placeholder" = "navê bikarhêner"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Ka em te bi rê bixin li ser %@"; "Scene.Register.Title" = "Ji me re hinekî qala xwe bike %@"; "Scene.Report.Content1" = "Şandiyên din hene ku tu dixwazî tevlî ragihandinê bikî?"; "Scene.Report.Content2" = "Derbarê vê ragihandinê de tiştek heye ku divê çavdêr bizanin?"; @@ -300,35 +306,35 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Report.StepFinal.BlockUser" = "%@ asteng bike"; "Scene.Report.StepFinal.DontWantToSeeThis" = "Tu naxwazî vê bibînî?"; "Scene.Report.StepFinal.MuteUser" = "%@ bêdeng bike"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "Êdî nikarin şandiyên te bişopînin an jî bibînin, lê ew dikarin bibînin ka hatine astengkirin an na."; "Scene.Report.StepFinal.Unfollow" = "Neşopîne"; "Scene.Report.StepFinal.UnfollowUser" = "%@ neşopîne"; "Scene.Report.StepFinal.Unfollowed" = "Ji şopê hate derketin"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Dema li ser Mastodonê tiştekî ku tu jê hez nakî bibînî, tu dikarî ew kes ji navrûya xwe derxî."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Dema ku em vê yekê dinirxînin, tu dikarî li dijî %@ tedbîran bigirî"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Tu yê şandî an jî bilindkirinên wan di rojeva xwe de nebînî. Ew ê nizanibin ku hatine bêdengkirin."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Tiştek din heye ku tu difikirî ku divê em zanibin?"; "Scene.Report.StepFour.Step4Of4" = "Gav 4 ji 4"; "Scene.Report.StepOne.IDontLikeIt" = "Ez jê hez nakim"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "Ew ne tiştek e ku tu dixwazî bibînî"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Ew rêzikên rajekar binpê dike"; +"Scene.Report.StepOne.ItsSomethingElse" = "Tiştekî din e"; "Scene.Report.StepOne.ItsSpam" = "Ew spam e"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Girêdanên xerab, tevlêbûna sexte, an jî bersivên dubarekirî"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Baştirîn lihevhatina hilbijêre"; "Scene.Report.StepOne.Step1Of4" = "Gav 1 ji 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Pirsgirêk di kategoriyên din de cih nagire"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Çi çewt e di vê ajimêrê de?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Çi çewt e di vê şandiyê de?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Çi çewt e bi %@ re?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Tu dizanî ku ew rêzikên taybetiyê binpê dike"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Tu şandiyên ku vê ragihandinê piştgirî dikin hene?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Hemûyên ku têne sepandin hilbijêre"; "Scene.Report.StepThree.Step3Of4" = "Gav 3 ji 4"; "Scene.Report.StepTwo.IJustDon’tLikeIt" = "Tenê ez jê hez nakim"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Hemûyên ku têne sepandin hilbijêre"; "Scene.Report.StepTwo.Step2Of4" = "Gav 2 ji 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Kîjan rêzik têne binpêkirin?"; "Scene.Report.TextPlaceholder" = "Şiroveyên daxwazkirê binivîsine an jî pê ve bike"; "Scene.Report.Title" = "%@ ragihîne"; "Scene.Report.TitleReport" = "Ragihandin"; @@ -369,7 +375,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.ServerPicker.EmptyState.FindingServers" = "Peydakirina rajekarên berdest..."; "Scene.ServerPicker.EmptyState.NoResults" = "Encam tune"; "Scene.ServerPicker.Input.Placeholder" = "Li rajekaran bigere"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Li civakan bigere an jî girêdanê binivîse"; "Scene.ServerPicker.Label.Category" = "BEŞ"; "Scene.ServerPicker.Label.Language" = "ZIMAN"; "Scene.ServerPicker.Label.Users" = "BIKARHÊNER"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict index 7b2e40773..77571439f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tîp + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Ji aliyê %1$@, û hevaleke hevpar tê şopandin + other + Ji aliyê %1$@, û %ld hevalên hevpar tê şopandin + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings index b9770969b..4b92061a3 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings @@ -203,9 +203,14 @@ klik op de link om uw account te bevestigen."; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "Nieuws"; "Scene.Discovery.Tabs.Posts" = "Berichten"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Uw favorieten"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Volgers van andere servers worden niet weergegeven."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Volgers van andere servers worden niet weergegeven."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Bekijk nieuwe berichten"; @@ -249,6 +254,7 @@ klik op de link om uw account te bevestigen."; "Scene.Profile.SegmentedControl.Posts" = "Berichten"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Berichten en reacties"; "Scene.Profile.SegmentedControl.Replies" = "Reacties"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Overeenkomst"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Taal"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict index e6f9353de..314600ff7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tekens + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings index 4d742dc6e..faac1e6a8 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings @@ -219,9 +219,14 @@ "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "News"; "Scene.Discovery.Tabs.Posts" = "Posts"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Ваше избранное"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Followers from other servers are not displayed."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Follows from other servers are not displayed."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Показать новые"; @@ -265,6 +270,7 @@ "Scene.Profile.SegmentedControl.Posts" = "Посты"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Посты и ответы"; "Scene.Profile.SegmentedControl.Replies" = "Ответы"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Соглашение"; "Scene.Register.Error.Item.Email" = "E-mail"; "Scene.Register.Error.Item.Locale" = "Язык"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict index 026815a8e..afb29a6aa 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.stringsdict @@ -62,6 +62,41 @@ %ld символа осталось + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + few + + many + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + %1$@ и ещё %ld человек подписаны + few + %1$@ и ещё %ld человека подписаны + many + %1$@ и ещё %ld человек подписаны + other + %1$@ и ещё %ld человека подписаны + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings index 3d801f1a6..c9f5892ed 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings @@ -200,7 +200,7 @@ laddas upp till Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Öppna e-postklient"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Kolla din inkorg."; "Scene.ConfirmEmail.Subtitle" = "Tryck på länken vi e-postade till dig för att verifiera ditt konto."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tryck på länken vi e-postade till dig för att verifiera ditt konto"; "Scene.ConfirmEmail.Title" = "En sista sak."; "Scene.Discovery.Intro" = "Detta är de inlägg som engagerar i ditt hörn av Mastodon."; "Scene.Discovery.Tabs.Community" = "Server"; @@ -208,9 +208,14 @@ laddas upp till Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtaggar"; "Scene.Discovery.Tabs.News" = "Nyheter"; "Scene.Discovery.Tabs.Posts" = "Inlägg"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Dina favoriter"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Följare från andra servrar visas inte."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Följda på andra servrar visas inte."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tryck för att bläddra till toppen och tryck igen för föregående plats"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo-knapp"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Nya inlägg"; @@ -254,6 +259,7 @@ laddas upp till Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Inlägg"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Inlägg och svar"; "Scene.Profile.SegmentedControl.Replies" = "Svar"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Avtal"; "Scene.Register.Error.Item.Email" = "E-post"; "Scene.Register.Error.Item.Locale" = "Språk"; @@ -286,7 +292,7 @@ laddas upp till Mastodon."; "Scene.Register.Input.Password.Require" = "Ditt lösenord behöver minst:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Det här användarnamnet är redan taget."; "Scene.Register.Input.Username.Placeholder" = "användarnamn"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Låt oss få igång dig på %@"; "Scene.Register.Title" = "Låt oss få igång dig på %@"; "Scene.Report.Content1" = "Finns det några andra inlägg du vill lägga till i rapporten?"; "Scene.Report.Content2" = "Finns det något som moderatorerna borde känna till om denna rapport?"; @@ -304,7 +310,7 @@ laddas upp till Mastodon."; "Scene.Report.StepFinal.UnfollowUser" = "Avfölj %@"; "Scene.Report.StepFinal.Unfollowed" = "Slutade följa"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "När du ser något som du inte gillar på Mastodon kan du ta bort personen från din upplevelse."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Medan vi granskar detta kan du vidta åtgärder mot %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Du kommer inte att se deras inlägg eller ompostningar i ditt hemflöde. De kommer inte att veta att de har blivit tystade."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Finns det något annat vi borde veta?"; "Scene.Report.StepFour.Step4Of4" = "Steg 4 av 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict index 653a69373..0d6ddd579 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld tecken + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey @@ -77,7 +104,7 @@ NSStringFormatValueTypeKey ld one - 1 media + %ld media other %ld media diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index 7ba97e2ab..c86b3e47c 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -200,7 +200,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "เปิดไคลเอ็นต์อีเมล"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "ตรวจสอบกล่องขาเข้าของคุณ"; "Scene.ConfirmEmail.Subtitle" = "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ"; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "แตะลิงก์ที่เราส่งอีเมลถึงคุณเพื่อยืนยันบัญชีของคุณ"; "Scene.ConfirmEmail.Title" = "หนึ่งสิ่งสุดท้าย"; "Scene.Discovery.Intro" = "นี่คือโพสต์ที่กำลังได้รับความสนใจในมุมของ Mastodon ของคุณ"; "Scene.Discovery.Tabs.Community" = "ชุมชน"; @@ -208,11 +208,16 @@ "Scene.Discovery.Tabs.Hashtags" = "แฮชแท็ก"; "Scene.Discovery.Tabs.News" = "ข่าว"; "Scene.Discovery.Tabs.Posts" = "โพสต์"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "รายการโปรดของคุณ"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ"; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.Following.Title" = "following"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "แตะเพื่อเลื่อนไปยังด้านบนสุดและแตะอีกครั้งไปยังตำแหน่งที่ตั้งก่อนหน้า"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "ปุ่มโลโก้"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "ดูโพสต์ใหม่"; "Scene.HomeTimeline.NavigationBarState.Offline" = "ออฟไลน์"; "Scene.HomeTimeline.NavigationBarState.Published" = "เผยแพร่แล้ว!"; @@ -254,6 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "โพสต์"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "โพสต์และการตอบกลับ"; "Scene.Profile.SegmentedControl.Replies" = "การตอบกลับ"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "ข้อตกลง"; "Scene.Register.Error.Item.Email" = "อีเมล"; "Scene.Register.Error.Item.Locale" = "ตำแหน่งที่ตั้ง"; @@ -286,7 +292,7 @@ "Scene.Register.Input.Password.Require" = "รหัสผ่านของคุณจำเป็นต้องมีอย่างน้อย:"; "Scene.Register.Input.Username.DuplicatePrompt" = "ชื่อผู้ใช้นี้ถูกใช้ไปแล้ว"; "Scene.Register.Input.Username.Placeholder" = "ชื่อผู้ใช้"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "มาตั้งค่าของคุณใน %@ กันเลย"; "Scene.Register.Title" = "มาตั้งค่าของคุณใน %@ กันเลย"; "Scene.Report.Content1" = "มีโพสต์อื่นใดที่คุณต้องการเพิ่มไปยังรายงานหรือไม่?"; "Scene.Report.Content2" = "มีสิ่งใดที่ผู้ควบคุมควรทราบเกี่ยวกับรายงานนี้หรือไม่?"; @@ -296,38 +302,38 @@ "Scene.Report.SkipToSend" = "ส่งโดยไม่มีความคิดเห็น"; "Scene.Report.Step1" = "ขั้นตอนที่ 1 จาก 2"; "Scene.Report.Step2" = "ขั้นตอนที่ 2 จาก 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepFinal.BlockUser" = "ปิดกั้น %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "ไม่ต้องการเห็นสิ่งนี้?"; +"Scene.Report.StepFinal.MuteUser" = "ซ่อน %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "เขาจะไม่สามารถติดตามหรือเห็นโพสต์ของคุณได้อีกต่อไป แต่เขาสามารถเห็นว่ามีการปิดกั้นเขาหรือไม่"; +"Scene.Report.StepFinal.Unfollow" = "เลิกติดตาม"; +"Scene.Report.StepFinal.UnfollowUser" = "เลิกติดตาม %@"; +"Scene.Report.StepFinal.Unfollowed" = "เลิกติดตามแล้ว"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "เมื่อคุณเห็นบางอย่างที่คุณไม่ชอบใน Mastodon คุณสามารถเอาบุคคลออกจากประสบการณ์ของคุณ"; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "ขณะที่เราตรวจทานสิ่งนี้ คุณสามารถดำเนินการกับ %@"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "คุณจะไม่เห็นโพสต์หรือการดันของเขาในฟีดหน้าแรกของคุณ เขาจะไม่ทราบว่ามีการซ่อนเขา"; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "มีสิ่งอื่นใดที่เราควรทราบหรือไม่?"; +"Scene.Report.StepFour.Step4Of4" = "ขั้นตอนที่ 4 จาก 4"; +"Scene.Report.StepOne.IDontLikeIt" = "ฉันไม่ชอบโพสต์"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "โพสต์ไม่ใช่บางอย่างที่คุณต้องการเห็น"; +"Scene.Report.StepOne.ItViolatesServerRules" = "โพสต์ละเมิดกฎของเซิร์ฟเวอร์"; +"Scene.Report.StepOne.ItsSomethingElse" = "โพสต์เป็นอย่างอื่น"; +"Scene.Report.StepOne.ItsSpam" = "โพสต์เป็นสแปม"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "ลิงก์ที่เป็นอันตราย, การมีส่วนร่วมปลอม หรือการตอบกลับซ้ำ ๆ"; +"Scene.Report.StepOne.SelectTheBestMatch" = "เลือกที่ตรงกันที่สุด"; +"Scene.Report.StepOne.Step1Of4" = "ขั้นตอนที่ 1 จาก 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "ปัญหาไม่เข้าหมวดหมู่อื่น ๆ"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "บัญชีนี้มีอะไรผิดปกติ?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "โพสต์นี้มีอะไรผิดปกติ?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "%@ มีอะไรผิดปกติ?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "คุณทราบว่าโพสต์แหกกฎเฉพาะ"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "มีโพสต์ใด ๆ ที่สนับสนุนรายงานนี้หรือไม่?"; +"Scene.Report.StepThree.SelectAllThatApply" = "เลือกทั้งหมดที่นำไปใช้"; +"Scene.Report.StepThree.Step3Of4" = "ขั้นตอนที่ 3 จาก 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "ฉันแค่ไม่ชอบโพสต์"; +"Scene.Report.StepTwo.SelectAllThatApply" = "เลือกทั้งหมดที่นำไปใช้"; +"Scene.Report.StepTwo.Step2Of4" = "ขั้นตอนที่ 2 จาก 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "กำลังละเมิดกฎใด?"; "Scene.Report.TextPlaceholder" = "พิมพ์หรือวางความคิดเห็นเพิ่มเติม"; "Scene.Report.Title" = "รายงาน %@"; "Scene.Report.TitleReport" = "รายงาน"; @@ -368,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน..."; "Scene.ServerPicker.EmptyState.NoResults" = "ไม่มีผลลัพธ์"; "Scene.ServerPicker.Input.Placeholder" = "ค้นหาเซิร์ฟเวอร์"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "ค้นหาชุมชนหรือป้อน URL"; "Scene.ServerPicker.Label.Category" = "หมวดหมู่"; "Scene.ServerPicker.Label.Language" = "ภาษา"; "Scene.ServerPicker.Label.Users" = "ผู้ใช้"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict index 4b4d47e84..edd0e18f9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld ตัวอักษร + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey @@ -69,7 +92,7 @@ NSStringFormatValueTypeKey ld other - %ld media + %ld สื่อ plural.count.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings index 62667fde7..f5a8ce8cf 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings @@ -207,9 +207,14 @@ yüklenemiyor."; "Scene.Discovery.Tabs.Hashtags" = "Etiketler"; "Scene.Discovery.Tabs.News" = "Haberler"; "Scene.Discovery.Tabs.Posts" = "Gönderiler"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Favorilerin"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Diğer sunucudaki takipçiler gösterilemiyor."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Diğer sunucudaki takip edilenler gösterilemiyor."; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Yeni gönderiler gör"; @@ -253,6 +258,7 @@ yüklenemiyor."; "Scene.Profile.SegmentedControl.Posts" = "Gönderiler"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Gönderiler ve Yanıtlar"; "Scene.Profile.SegmentedControl.Replies" = "Yanıtlar"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Anlaşma"; "Scene.Register.Error.Item.Email" = "E-posta"; "Scene.Register.Error.Item.Locale" = "Locale"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict index a512c4a7f..3da12ee4e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.stringsdict @@ -50,6 +50,33 @@ %ld karakter + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings index b90f29ff4..958cbe057 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings @@ -200,7 +200,7 @@ tải lên Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Mở ứng dụng email"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Kiểm tra hộp thư của bạn."; "Scene.ConfirmEmail.Subtitle" = "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Nhấn vào liên kết chúng tôi gửi qua email để xác thực tài khoản"; "Scene.ConfirmEmail.Title" = "Còn điều này nữa."; "Scene.Discovery.Intro" = "Đây là những tút thu hút được sự chú ý trong góc Mastodon của bạn."; "Scene.Discovery.Tabs.Community" = "Máy chủ"; @@ -208,11 +208,16 @@ tải lên Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Tin tức"; "Scene.Discovery.Tabs.Posts" = "Tút"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "Lượt thích"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Không hiển thị người theo dõi từ máy chủ khác."; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "Không hiển thị người bạn theo dõi từ máy chủ khác."; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.Following.Title" = "following"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Nhấn để cuộn lên trên và nhấn lại lần nữa để trở về vị trí cũ"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Nút biểu tượng"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Đọc những tút mới"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Ngoại tuyến"; "Scene.HomeTimeline.NavigationBarState.Published" = "Đã đăng!"; @@ -254,6 +259,7 @@ tải lên Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Tút"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Tút và trả lời"; "Scene.Profile.SegmentedControl.Replies" = "Trả lời"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "Thoả thuận"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Cục bộ"; @@ -286,7 +292,7 @@ tải lên Mastodon."; "Scene.Register.Input.Password.Require" = "Mật khẩu phải tối thiểu:"; "Scene.Register.Input.Username.DuplicatePrompt" = "Tên người dùng đã tồn tại."; "Scene.Register.Input.Username.Placeholder" = "tên người dùng"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Hãy để tôi đăng ký trên %@"; "Scene.Register.Title" = "Hãy để tôi đăng ký trên %@"; "Scene.Report.Content1" = "Bạn muốn thêm tút nào vào báo cáo nữa không?"; "Scene.Report.Content2" = "Kiểm duyệt viên cần biết gì về báo cáo này?"; @@ -296,38 +302,38 @@ tải lên Mastodon."; "Scene.Report.SkipToSend" = "Gửi không ghi chú"; "Scene.Report.Step1" = "Bước 1 trong 2"; "Scene.Report.Step2" = "Bước 2 trong 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepFinal.BlockUser" = "Chặn %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Không muốn xem thứ này?"; +"Scene.Report.StepFinal.MuteUser" = "Ẩn %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "Họ sẽ không thể theo dõi hoặc đọc tút của bạn, nhưng họ có thể hiểu bạn đã chặn họ."; +"Scene.Report.StepFinal.Unfollow" = "Ngưng theo dõi"; +"Scene.Report.StepFinal.UnfollowUser" = "Ngưng theo dõi %@"; +"Scene.Report.StepFinal.Unfollowed" = "Ngưng theo dõi"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Khi bạn thấy có gì đó mà bạn không thích trên Mastodon, bạn có thể tự loại bỏ chúng."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "Trong lúc chờ chúng tôi xem xét, bạn có thể áp dụng hành động với @%@"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Bạn sẽ không thấy tút hoặc lượt đăng lại của họ trên bảng tin. Họ không biết rằng bạn ẩn họ."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Bạn nghĩ chúng tôi nên biết thêm điều gì?"; +"Scene.Report.StepFour.Step4Of4" = "Bước 4 trong 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Tôi không thích nó"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "Đó không phải là thứ gì mà bạn muốn thấy"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Vi phạm quy tắc máy chủ"; +"Scene.Report.StepOne.ItsSomethingElse" = "Một lý do khác"; +"Scene.Report.StepOne.ItsSpam" = "Đây là spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Liên kết độc hại, tạo tương tác giả hoặc trả lời lặp đi lặp lại"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Chọn lý do khớp nhất"; +"Scene.Report.StepOne.Step1Of4" = "Bước 1 trong 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Vấn đề không nằm trong những mục trên"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Có vấn đề gì với người này?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Có vấn đề gì với tút này?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Có vấn đề gì với %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Bạn nhận thấy nó vi phạm quy tắc máy chủ"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Bạn muốn gửi tút nào kèm báo cáo này?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Chọn tất cả những gì phù hợp"; +"Scene.Report.StepThree.Step3Of4" = "Bước 3 trong 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Tôi không thích nó"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Chọn tất cả những gì phù hợp"; +"Scene.Report.StepTwo.Step2Of4" = "Bước 2 trong 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Vi phạm quy tắc nào?"; "Scene.Report.TextPlaceholder" = "Nhập hoặc bổ sung chú thích"; "Scene.Report.Title" = "Báo cáo %@"; "Scene.Report.TitleReport" = "Báo cáo"; @@ -368,7 +374,7 @@ tải lên Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Đang tìm máy chủ hoạt động..."; "Scene.ServerPicker.EmptyState.NoResults" = "Không có kết quả"; "Scene.ServerPicker.Input.Placeholder" = "Tìm máy chủ"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Tìm một máy chủ hoặc nhập URL"; "Scene.ServerPicker.Label.Category" = "PHÂN LOẠI"; "Scene.ServerPicker.Label.Language" = "NGÔN NGỮ"; "Scene.ServerPicker.Label.Users" = "NGƯỜI DÙNG"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict index 886021c08..6905b240e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld ký tự + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Theo dõi bởi %1$@, và %ld người quen + + plural.count.metric_formatted.post NSStringLocalizedFormatKey diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index 956a0f2b5..482a8bea4 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -200,7 +200,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "打开邮件客户端"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "检查你的邮箱"; "Scene.ConfirmEmail.Subtitle" = "点击我们发送给您的链接来验证您的账户。"; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "点击我们发送给您的链接来验证您的账户。"; "Scene.ConfirmEmail.Title" = "最后一件事。"; "Scene.Discovery.Intro" = "这些嘟文在你的长毛象小宇宙中备受关注。"; "Scene.Discovery.Tabs.Community" = "社区"; @@ -208,11 +208,16 @@ "Scene.Discovery.Tabs.Hashtags" = "话题标签"; "Scene.Discovery.Tabs.News" = "最新消息"; "Scene.Discovery.Tabs.Posts" = "嘟文"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "你的喜欢"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "不会显示来自其它服务器的关注者"; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "不会显示来自其它服务器的关注"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.Following.Title" = "following"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "轻点滚到顶部,再次轻点回到原处"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo 按钮"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "查看新帖子"; "Scene.HomeTimeline.NavigationBarState.Offline" = "离线"; "Scene.HomeTimeline.NavigationBarState.Published" = "已发送"; @@ -254,6 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "帖子"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "帖子与回复"; "Scene.Profile.SegmentedControl.Replies" = "回复"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "协议"; "Scene.Register.Error.Item.Email" = "电子邮箱"; "Scene.Register.Error.Item.Locale" = "地区"; @@ -286,7 +292,7 @@ "Scene.Register.Input.Password.Require" = "您的密码至少需要:"; "Scene.Register.Input.Username.DuplicatePrompt" = "此用户名已被使用"; "Scene.Register.Input.Username.Placeholder" = "用户名"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "让我们在 %@ 上开始"; "Scene.Register.Title" = "让我们在 %@ 上开始"; "Scene.Report.Content1" = "是否有帖子需要举报?"; "Scene.Report.Content2" = "是否有关于此举报的详细描述信息?"; @@ -296,38 +302,38 @@ "Scene.Report.SkipToSend" = "直接发送"; "Scene.Report.Step1" = "步骤 1 / 2"; "Scene.Report.Step2" = "步骤 2 / 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; -"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; -"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; -"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepFinal.BlockUser" = "屏蔽 %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "不想看到这个内容?"; +"Scene.Report.StepFinal.MuteUser" = "静音 %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "他们将不再能够关注或看到你的帖子,但他们可以知道他们是否被屏蔽。"; +"Scene.Report.StepFinal.Unfollow" = "取消关注"; +"Scene.Report.StepFinal.UnfollowUser" = "取消关注 %@"; +"Scene.Report.StepFinal.Unfollowed" = "已取消关注"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "当你在 Mastodon 看到不喜欢的东西时,可以尝试移除它。"; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "当我们审核这个报告时,你可以对 %@ 采取行动。"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "你不会在主页里看到他们的帖子和转发。他们不会知道被静音了。"; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "还有什么你认为我们应该知道的吗?"; +"Scene.Report.StepFour.Step4Of4" = "第 4 步(共 4 步)"; +"Scene.Report.StepOne.IDontLikeIt" = "我不喜欢它"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "这不是你想看到的东西"; +"Scene.Report.StepOne.ItViolatesServerRules" = "它违反了服务器规则"; +"Scene.Report.StepOne.ItsSomethingElse" = "其他原因"; +"Scene.Report.StepOne.ItsSpam" = "它是垃圾信息"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "恶意链接、虚假参与或重复性回复"; +"Scene.Report.StepOne.SelectTheBestMatch" = "选择最佳匹配"; +"Scene.Report.StepOne.Step1Of4" = "第 1 步(共 4 步)"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "该问题属于其他类别"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "这个账户有什么问题?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "这个帖子有什么问题?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "%@ 有什么问题?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "你发现它违反了某个服务器规则"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "有任何帖子可以支持此报告吗?"; +"Scene.Report.StepThree.SelectAllThatApply" = "选择适用选项"; +"Scene.Report.StepThree.Step3Of4" = "第 3 步(共 4 步)"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "我不喜欢它"; +"Scene.Report.StepTwo.SelectAllThatApply" = "选择适用选项"; +"Scene.Report.StepTwo.Step2Of4" = "第 2 步(共 4 步)"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "哪些规则被违反了?"; "Scene.Report.TextPlaceholder" = "输入或粘贴额外的注释"; "Scene.Report.Title" = "举报 %@"; "Scene.Report.TitleReport" = "举报"; @@ -368,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "正在查找可用的服务器..."; "Scene.ServerPicker.EmptyState.NoResults" = "无结果"; "Scene.ServerPicker.Input.Placeholder" = "查找或加入你自己的服务器..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜索服务器或输入 URL"; "Scene.ServerPicker.Label.Category" = "类别"; "Scene.ServerPicker.Label.Language" = "语言"; "Scene.ServerPicker.Label.Users" = "用户"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict index 4040f30d0..5a7af3752 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 个字符 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %1$@ 和你关注的另外 %ld 人也关注了这个账号 + + plural.count.metric_formatted.post NSStringLocalizedFormatKey @@ -69,7 +92,7 @@ NSStringFormatValueTypeKey ld other - %ld media + %ld 个媒体 plural.count.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings index ed24d8923..affd013a6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings @@ -195,7 +195,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "請開啟電子郵件程式"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "請檢查您的收件夾。"; "Scene.ConfirmEmail.Subtitle" = "點擊我們寄送給您的帳號驗證連結。"; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "點擊我們寄送給您的帳號驗證連結"; "Scene.ConfirmEmail.Title" = "最後一步。"; "Scene.Discovery.Intro" = "這些嘟文正在您 Mastodon 的角落受到注目。"; "Scene.Discovery.Tabs.Community" = "社群"; @@ -203,9 +203,14 @@ "Scene.Discovery.Tabs.Hashtags" = "主題標籤"; "Scene.Discovery.Tabs.News" = "最新消息"; "Scene.Discovery.Tabs.Posts" = "嘟文"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; "Scene.Favorite.Title" = "您的最愛"; +"Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "來自其他伺服器的跟隨者不會被顯示。"; +"Scene.Follower.Title" = "follower"; "Scene.Following.Footer" = "來自其他伺服器的跟隨中不會被顯示。"; +"Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "輕點一下捲至頂端並且再點ㄧ下回到原先位置"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "標誌按鈕"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "檢視最新嘟文"; @@ -249,6 +254,7 @@ "Scene.Profile.SegmentedControl.Posts" = "嘟文"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "嘟文及回覆"; "Scene.Profile.SegmentedControl.Replies" = "回覆"; +"Scene.RebloggedBy.Title" = "Reblogged By"; "Scene.Register.Error.Item.Agreement" = "條款"; "Scene.Register.Error.Item.Email" = "電子郵件"; "Scene.Register.Error.Item.Locale" = "地區"; @@ -281,7 +287,7 @@ "Scene.Register.Input.Password.Require" = "您的密碼必須是至少:"; "Scene.Register.Input.Username.DuplicatePrompt" = "此使用者名稱已被佔用。"; "Scene.Register.Input.Username.Placeholder" = "使用者名稱"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "讓我們一起設定 %@ 吧!"; "Scene.Register.Title" = "讓我們一起設定 %@ 吧!"; "Scene.Report.Content1" = "還有其他您想加入這份檢舉報告的嘟文嗎?"; "Scene.Report.Content2" = "有其他管管們需要知道關於這份檢舉報告的嗎?"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict index fe44cdfd0..7fa90b502 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict @@ -44,6 +44,29 @@ %ld 個字 + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + Followed by %1$@, and %ld mutuals + + plural.count.metric_formatted.post NSStringLocalizedFormatKey From e119a06bba9ecb3839a81e801f656c60ff7848a6 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 23:27:58 +0800 Subject: [PATCH 497/571] chore: using i18n strings --- .../FamiliarFollowersViewController.swift | 4 +++- .../Follower/FollowerListViewController.swift | 2 +- .../Following/FollowingListViewController.swift | 2 +- .../FavoritedBy/FavoritedByViewController.swift | 2 +- .../RebloggedBy/RebloggedByViewController.swift | 2 +- .../MastodonLocalization+Bundle.swift | 14 ++++++++++++++ ...iliarFollowersDashboardView+Configuration.swift | 2 +- .../FamiliarFollowersDashboardView+ViewModel.swift | 12 ++++++++---- .../View/Content/StatusView+ViewModel.swift | 5 ++--- 9 files changed, 32 insertions(+), 13 deletions(-) create mode 100644 MastodonSDK/Sources/MastodonLocalization/MastodonLocalization+Bundle.swift diff --git a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift index bb1f46c20..1e60f7a90 100644 --- a/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift +++ b/Mastodon/Scene/Profile/FamiliarFollowers/FamiliarFollowersViewController.swift @@ -8,6 +8,7 @@ import os.log import UIKit import Combine +import MastodonLocalization final class FamiliarFollowersViewController: UIViewController, NeedsDependency { @@ -38,7 +39,8 @@ extension FamiliarFollowersViewController { override func viewDidLoad() { super.viewDidLoad() - title = "Followers you familiar" + title = L10n.Scene.Familiarfollowers.title + view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme .receive(on: DispatchQueue.main) diff --git a/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift b/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift index 1b9efa1fb..decc1ee97 100644 --- a/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift +++ b/Mastodon/Scene/Profile/Follower/FollowerListViewController.swift @@ -43,7 +43,7 @@ extension FollowerListViewController { override func viewDidLoad() { super.viewDidLoad() - title = L10n.Scene.Profile.Dashboard.followers + title = L10n.Scene.Follower.title view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme diff --git a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift index eb0872227..c125b0214 100644 --- a/Mastodon/Scene/Profile/Following/FollowingListViewController.swift +++ b/Mastodon/Scene/Profile/Following/FollowingListViewController.swift @@ -43,7 +43,7 @@ extension FollowingListViewController { override func viewDidLoad() { super.viewDidLoad() - title = L10n.Scene.Profile.Dashboard.following + title = L10n.Scene.Following.title view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme diff --git a/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift index 7316be5aa..0e2bc64ed 100644 --- a/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift +++ b/Mastodon/Scene/Profile/UserLIst/FavoritedBy/FavoritedByViewController.swift @@ -47,7 +47,7 @@ extension FavoritedByViewController { } #endif - title = "Favorited By" + title = L10n.Scene.FavoritedBy.title view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme diff --git a/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift index ab2087954..78988bb41 100644 --- a/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift +++ b/Mastodon/Scene/Profile/UserLIst/RebloggedBy/RebloggedByViewController.swift @@ -47,7 +47,7 @@ extension RebloggedByViewController { } #endif - title = "Favorited By" + title = L10n.Scene.RebloggedBy.title view.backgroundColor = ThemeService.shared.currentTheme.value.secondarySystemBackgroundColor ThemeService.shared.currentTheme diff --git a/MastodonSDK/Sources/MastodonLocalization/MastodonLocalization+Bundle.swift b/MastodonSDK/Sources/MastodonLocalization/MastodonLocalization+Bundle.swift new file mode 100644 index 000000000..3e5f62e40 --- /dev/null +++ b/MastodonSDK/Sources/MastodonLocalization/MastodonLocalization+Bundle.swift @@ -0,0 +1,14 @@ +// +// MastodonLocalization+Bundle.swift +// +// +// Created by MainasuK on 2022-5-17. +// + +import Foundation + +public enum MastodonLocalization { + public static var bundle: Bundle { + Bundle.module + } +} diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift index 782070232..0b63f848e 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+Configuration.swift @@ -12,7 +12,7 @@ extension FamiliarFollowersDashboardView { public func configure(familiarFollowers: Mastodon.Entity.FamiliarFollowers?) { assert(Thread.isMainThread) - let accounts = familiarFollowers?.accounts.prefix(4) ?? [] + let accounts = familiarFollowers?.accounts ?? [] viewModel.avatarURLs = accounts.map { $0.avatarImageURL() } viewModel.names = accounts.map { $0.displayNameWithFallback } diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift index cee71a45f..a9bb2c5f0 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/FamiliarFollowersDashboardView+ViewModel.swift @@ -10,6 +10,7 @@ import UIKit import Combine import CoreDataStack import MastodonMeta +import MastodonLocalization extension FamiliarFollowersDashboardView { public final class ViewModel: ObservableObject { @@ -32,6 +33,9 @@ extension FamiliarFollowersDashboardView.ViewModel { UIContentSizeCategory.publisher ) .sink { avatarURLs, backgroundColor, contentSizeCategory in + // only using first 4 items + let avatarURLs = avatarURLs.prefix(4) + view.avatarContainerView.subviews.forEach { $0.removeFromSuperview() } let initialOffset = min(12 * 1.5, UIFontMetrics(forTextStyle: .headline).scaledValue(for: 12)) // max 1.5x @@ -82,12 +86,12 @@ extension FamiliarFollowersDashboardView.ViewModel { switch names.count { case 1..<3: - return "Followed by \(firstTwoNames)" - case 3: - return "Followed by \(firstTwoNames), and another mutual" + return L10n.Scene.Familiarfollowers.followedByNames(firstTwoNames) default: + // Note: SwiftGen generates wrong formate argv for "%1$@" let remains = count - 2 - return "Followed by \(firstTwoNames), and \(remains) mutuals" + let format = MastodonLocalization.bundle.localizedString(forKey: "plural.count.followed_by_and_mutual", value: nil, table: "Localizable") + return String(format: format, locale: .current, arguments: [firstTwoNames, remains]) } }() let document = MastodonContent(content: content, emojis: emojis) diff --git a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView+ViewModel.swift b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView+ViewModel.swift index 44f7bb9ab..f3d9f6f80 100644 --- a/MastodonSDK/Sources/MastodonUI/View/Content/StatusView+ViewModel.swift +++ b/MastodonSDK/Sources/MastodonUI/View/Content/StatusView+ViewModel.swift @@ -666,12 +666,11 @@ extension StatusView.ViewModel { let meidaAccessibilityLabel = $mediaViewConfigurations .map { configurations -> String? in let count = configurations.count - // TODO: i18n - return count > 0 ? "\(count) media" : nil + return L10n.Plural.Count.media(count) } // TODO: Toolbar - + Publishers.CombineLatest3( authorAccessibilityLabel, contentAccessibilityLabel, From ca91e756ff126040bd72aa59ab2364a6cf524423 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 17 May 2022 23:28:29 +0800 Subject: [PATCH 498/571] chore: update version to 1.4.2 (129) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 +-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 34 insertions(+), 34 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index bbb286601..dd564b63d 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 173de3507..d41f69d00 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4832,7 +4832,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4862,7 +4862,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4970,11 +4970,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 128; + DYLIB_CURRENT_VERSION = 129; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5001,11 +5001,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 128; + DYLIB_CURRENT_VERSION = 129; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5096,7 +5096,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5164,11 +5164,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 128; + DYLIB_CURRENT_VERSION = 129; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5193,7 +5193,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5216,7 +5216,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5240,7 +5240,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5264,7 +5264,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5288,7 +5288,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5312,7 +5312,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5336,7 +5336,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5423,7 +5423,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5490,11 +5490,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 128; + DYLIB_CURRENT_VERSION = 129; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5518,7 +5518,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5541,7 +5541,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5565,7 +5565,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5589,7 +5589,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5612,7 +5612,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 128; + CURRENT_PROJECT_VERSION = 129; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 05d7ad139..3e2139aa3 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 34 + 28 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 33 + 29 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 35 + 27 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 57022b347..7413af34a 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 128 + 129 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index abe1e118c..cd9c8ac9c 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index bbb286601..dd564b63d 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index bbb286601..dd564b63d 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index 3ecf003ac..dbe606d16 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 706d194a1..71e6dfc4b 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 128 + 129 NSExtension NSExtensionAttributes From f50f427f6b0790c1d58cb6c378898697fedd902e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:41:50 +0200 Subject: [PATCH 499/571] New translations app.json (Catalan) --- .../StringsConvertor/input/ca.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json index dae3ff6a9..14e926c2e 100644 --- a/Localization/StringsConvertor/input/ca.lproj/app.json +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "seguidor", "footer": "Els seguidors d'altres servidors no son mostrats." }, "following": { - "title": "following", + "title": "seguint", "footer": "Els seguits d'altres servidors no son mostrats." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Seguidors coneguts", + "followed_by_names": "Seguit per %s" }, "favorited_by": { - "title": "Favorited By" + "title": "Preferit per" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Impulsat per" }, "search": { "title": "Cerca", From 15a1a382eee9b561f3a97b1b7e876112a6b03882 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:01 +0200 Subject: [PATCH 500/571] New translations app.json (Spanish, Argentina) --- .../input/es-AR.lproj/app.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index a6f8f2013..efc7f4f2b 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -240,7 +240,7 @@ "category": "CATEGORÍA" }, "input": { - "placeholder": "Encontrá un servidor o unite al tuyo…", + "placeholder": "Buscar servidores", "search_servers_or_enter_url": "Buscar comunidades o introducir dirección web" }, "empty_state": { @@ -250,7 +250,7 @@ } }, "register": { - "title": "Contanos sobre vos.", + "title": "Vamos a prepararte en %s", "lets_get_you_set_up_on_domain": "Vamos a prepararte en %s", "input": { "avatar": { @@ -286,7 +286,7 @@ "email": "Correo electrónico", "password": "Contraseña", "agreement": "Acuerdo", - "locale": "Idioma de la interface", + "locale": "Interno", "reason": "Motivo" }, "reason": { @@ -321,7 +321,7 @@ }, "confirm_email": { "title": "Una última cosa.", - "subtitle": "Acabamos de enviar un correo electrónico a %s,\npulsá en el enlace para confirmar tu cuenta.", + "subtitle": "Tocá el enlace que te enviamos por correo electrónico para verificar tu cuenta.", "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tocá el enlace que te enviamos por correo electrónico para verificar tu cuenta", "button": { "open_email_app": "Abrir aplicación de correo electrónico", @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "seguidor", "footer": "No se muestran los seguidores de otros servidores." }, "following": { - "title": "following", + "title": "siguiendo", "footer": "No se muestran las cuentas de otros servidores que seguís." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Seguidores conocidos", + "followed_by_names": "Seguido por %s" }, "favorited_by": { - "title": "Favorited By" + "title": "Marcado como favorito por" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Adherido por" }, "search": { "title": "Buscar", From 284bf7e4ac6c1726f8937f86db4392df008fd3f1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:05 +0200 Subject: [PATCH 501/571] New translations app.json (Chinese Traditional) --- .../StringsConvertor/input/zh-Hant.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json index fa6538bbc..26427f5d3 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "跟隨者", "footer": "來自其他伺服器的跟隨者不會被顯示。" }, "following": { - "title": "following", + "title": "跟隨中", "footer": "來自其他伺服器的跟隨中不會被顯示。" }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "您熟悉的跟隨者", + "followed_by_names": "被 %s 跟隨" }, "favorited_by": { - "title": "Favorited By" + "title": "已加入最愛" }, "reblogged_by": { - "title": "Reblogged By" + "title": "已轉嘟" }, "search": { "title": "搜尋", From a0793e56e0df9a0f685d702423728214a7a9fdb1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:07 +0200 Subject: [PATCH 502/571] New translations app.json (Italian) --- .../StringsConvertor/input/it.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json index 759c742c4..e7ab4b5f6 100644 --- a/Localization/StringsConvertor/input/it.lproj/app.json +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "seguace", "footer": "I seguaci da altri server non vengono visualizzati." }, "following": { - "title": "following", + "title": "seguendo", "footer": "I follow da altri server non vengono visualizzati." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Seguaci che conosci", + "followed_by_names": "Seguito da %s" }, "favorited_by": { - "title": "Favorited By" + "title": "Preferito Da" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Condiviso Da" }, "search": { "title": "Cerca", From c2bc5247fb970994fd3393568b6bd7dd64bad81d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:13 +0200 Subject: [PATCH 503/571] New translations app.json (German) --- Localization/StringsConvertor/input/de.lproj/app.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Localization/StringsConvertor/input/de.lproj/app.json b/Localization/StringsConvertor/input/de.lproj/app.json index 0c8fd3b28..319c9fe22 100644 --- a/Localization/StringsConvertor/input/de.lproj/app.json +++ b/Localization/StringsConvertor/input/de.lproj/app.json @@ -207,7 +207,7 @@ "scene": { "welcome": { "slogan": "Soziale Netzwerke wieder in deinen Händen.", - "get_started": "Erste Schritte", + "get_started": "Registrieren", "log_in": "Anmelden" }, "server_picker": { @@ -240,8 +240,8 @@ "category": "KATEGORIE" }, "input": { - "placeholder": "Finde einen Server oder trete deinem eigenen bei...", - "search_servers_or_enter_url": "Search communities or enter URL" + "placeholder": "Nach Server suchen oder URL eingeben", + "search_servers_or_enter_url": "Nach Server suchen oder URL eingeben" }, "empty_state": { "finding_servers": "Verfügbare Server werden gesucht...", From 45b5c99aa7baeee9ddd1e83a3284b8ca8b1e3efd Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:21 +0200 Subject: [PATCH 504/571] New translations app.json (Chinese Simplified) --- .../StringsConvertor/input/zh-Hans.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index a9b8f13ab..3bc65e32c 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "关注者", "footer": "不会显示来自其它服务器的关注者" }, "following": { - "title": "following", + "title": "正在关注", "footer": "不会显示来自其它服务器的关注" }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "你熟悉的关注者", + "followed_by_names": "%s 关注了这个账号" }, "favorited_by": { - "title": "Favorited By" + "title": "收藏者" }, "reblogged_by": { - "title": "Reblogged By" + "title": "转发者" }, "search": { "title": "搜索", From 3dfc885a77d62bdcbba861fef775206c69ea5188 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 17:42:23 +0200 Subject: [PATCH 505/571] New translations Localizable.stringsdict (Chinese Traditional) --- .../input/zh-Hant.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict index 7fa90b502..c0ce0f9a2 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + 被 %1$@ 跟隨,%ld 個共同跟隨者 plural.count.metric_formatted.post From 9b4da01c487fc28e993011035c40e61911fe2a97 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 18 May 2022 00:28:38 +0800 Subject: [PATCH 506/571] chore: allow multiple report server rules selection --- .../Report/Report/ReportViewController.swift | 27 ++++++------------- .../Scene/Report/Report/ReportViewModel.swift | 9 +++---- .../ReportReason/ReportReasonView.swift | 4 +-- .../ReportResult/ReportResultView.swift | 5 ++-- .../ReportServerRulesView.swift | 22 +++++---------- .../ReportServerRulesViewController.swift | 11 +++----- .../ReportServerRulesViewModel.swift | 3 +-- .../Cell/ReportStatusTableViewCell.swift | 6 +++-- 8 files changed, 32 insertions(+), 55 deletions(-) diff --git a/Mastodon/Scene/Report/Report/ReportViewController.swift b/Mastodon/Scene/Report/Report/ReportViewController.swift index 1fe1a720c..854ea96b6 100644 --- a/Mastodon/Scene/Report/Report/ReportViewController.swift +++ b/Mastodon/Scene/Report/Report/ReportViewController.swift @@ -120,26 +120,15 @@ extension ReportViewController: ReportReasonViewControllerDelegate { // MARK: - ReportServerRulesViewControllerDelegate extension ReportViewController: ReportServerRulesViewControllerDelegate { func reportServerRulesViewController(_ viewController: ReportServerRulesViewController, nextButtonPressed button: UIButton) { - if viewController.viewModel.isDislike { - let reportResultViewModel = ReportResultViewModel( - context: context, - user: viewModel.user, - isReported: false - ) - coordinator.present( - scene: .reportResult(viewModel: reportResultViewModel), - from: self, - transition: .show - ) - } else if viewController.viewModel.selectRule != nil { - coordinator.present( - scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), - from: self, - transition: .show - ) - } else { - assertionFailure() + guard !viewController.viewModel.selectRules.isEmpty else { + return } + + coordinator.present( + scene: .reportStatus(viewModel: viewModel.reportStatusViewModel), + from: self, + transition: .show + ) } } diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift index fdd90a774..5afe794a1 100644 --- a/Mastodon/Scene/Report/Report/ReportViewModel.swift +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -136,10 +136,9 @@ extension ReportViewModel { suffixes.append(reason.rawValue) case .violateRule: suffixes.append(reason.rawValue) - if let rule = self.reportServerRulesViewModel.selectRule { + + for rule in self.reportServerRulesViewModel.selectRules { suffixes.append(rule.text) - } else { - assertionFailure("should select valid rule") } case .dislike: assertionFailure("should not enter the report flow") @@ -178,8 +177,8 @@ extension ReportViewModel { ruleIDs: { switch self.reportReasonViewModel.selectReason { case .violateRule: - guard let rule = self.reportServerRulesViewModel.selectRule else { return nil } - return [rule.id] + let ruleIDs = self.reportServerRulesViewModel.selectRules.map { $0.id }.sorted() + return ruleIDs default: return nil } diff --git a/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift index 67e948727..8ee04311e 100644 --- a/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift +++ b/Mastodon/Scene/Report/ReportReason/ReportReasonView.swift @@ -41,9 +41,7 @@ struct ReportReasonView: View { EmptyView() default: ReportReasonRowView(reason: reason, isSelect: reason == viewModel.selectReason) - .background( - Color(viewModel.backgroundColor) - ) + .contentShape(Rectangle()) .onTapGesture { viewModel.selectReason = reason } diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift index 7931538fc..609970eb1 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift @@ -138,14 +138,15 @@ struct ReportActionButton: View { ZStack { ProgressView() .opacity(isBusy ? 1 : 0) + .progressViewStyle(CircularProgressViewStyle(tint: .gray)) Text(title) .font(.headline) - .foregroundColor(Color(Asset.Colors.Label.primary.color)) + .foregroundColor(Color(UIColor.black)) .opacity(isBusy ? 0 : 1) } .frame(maxWidth: .infinity) .padding() - .background(Color(UIColor.systemBackground)) + .background(Color(UIColor.white)) // using white for Light & Dark .cornerRadius(10) .shadow(color: .black.opacity(0.1), radius: 2, x: 0, y: 1) } diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift index 57406402b..50db9c89b 100644 --- a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesView.swift @@ -37,27 +37,19 @@ struct ReportServerRulesView: View { ForEach(viewModel.serverRules, id: \.self) { rule in ReportServerRulesRowView( title: rule.text, - isSelect: rule == viewModel.selectRule + isSelect: viewModel.selectRules.contains(rule) ) .background( Color(viewModel.backgroundColor) ) .onTapGesture { - viewModel.selectRule = rule - viewModel.isDislike = false + if viewModel.selectRules.contains(rule) { + viewModel.selectRules.remove(rule) + } else { + viewModel.selectRules.insert(rule) + } } } - ReportServerRulesRowView( - title: L10n.Scene.Report.StepTwo.iJustDonTLikeIt, - isSelect: viewModel.isDislike - ) - .background( - Color(viewModel.backgroundColor) - ) - .onTapGesture { - viewModel.selectRule = nil - viewModel.isDislike = true - } } .padding() .transition(.opacity) @@ -80,7 +72,7 @@ struct ReportServerRulesRowView: View { var body: some View { HStack(spacing: 14) { - Image(systemName: isSelect ? "checkmark.circle.fill" : "circle") + Image(systemName: isSelect ? "checkmark.square.fill" : "square") .resizable() .frame(width: 28, height: 28, alignment: .center) VStack(alignment: .leading, spacing: 4) { diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift index 330debbb8..73a47496c 100644 --- a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewController.swift @@ -88,13 +88,10 @@ extension ReportServerRulesViewController { } .store(in: &observations) - Publishers.CombineLatest( - viewModel.$selectRule, - viewModel.$isDislike - ) - .map { $0 != nil || $1 } - .assign(to: \.isEnabled, on: navigationActionView.nextButton) - .store(in: &disposeBag) + viewModel.$selectRules + .map { !$0.isEmpty } + .assign(to: \.isEnabled, on: navigationActionView.nextButton) + .store(in: &disposeBag) navigationActionView.nextButton.addTarget(self, action: #selector(ReportServerRulesViewController.nextButtonPressed(_:)), for: .touchUpInside) } diff --git a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift index e0e21f301..50d2bf2d3 100644 --- a/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift +++ b/Mastodon/Scene/Report/ReportServerRules/ReportServerRulesViewModel.swift @@ -25,8 +25,7 @@ final class ReportServerRulesViewModel: ObservableObject { @Published var backgroundColor: UIColor = Asset.Scene.Report.background.color // output - @Published var selectRule: Mastodon.Entity.Instance.Rule? - @Published var isDislike: Bool = false + @Published var selectRules: Set = Set() init(context: AppContext) { self.context = context diff --git a/Mastodon/Scene/Report/Share/Cell/ReportStatusTableViewCell.swift b/Mastodon/Scene/Report/Share/Cell/ReportStatusTableViewCell.swift index b134db302..6a2cf7fb2 100644 --- a/Mastodon/Scene/Report/Share/Cell/ReportStatusTableViewCell.swift +++ b/Mastodon/Scene/Report/Share/Cell/ReportStatusTableViewCell.swift @@ -86,15 +86,17 @@ extension ReportStatusTableViewCell { separatorLine.bottomAnchor.constraint(equalTo: contentView.bottomAnchor), separatorLine.heightAnchor.constraint(equalToConstant: UIView.separatorLineHeight(of: contentView)).priority(.required - 1), ]) + + statusView.isUserInteractionEnabled = false } override func setSelected(_ selected: Bool, animated: Bool) { super.setSelected(selected, animated: animated) if selected { - checkbox.image = UIImage(systemName: "checkmark.circle.fill") + checkbox.image = UIImage(systemName: "checkmark.square.fill") checkbox.tintColor = Asset.Colors.Label.primary.color } else { - checkbox.image = UIImage(systemName: "circle") + checkbox.image = UIImage(systemName: "square") checkbox.tintColor = Asset.Colors.Label.secondary.color } } From 49c8e829106b54d73680ed9de4fd9be3defb9d25 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 18 May 2022 00:32:52 +0800 Subject: [PATCH 507/571] fix: report final step page i18n string not set issue --- Mastodon/Scene/Report/ReportResult/ReportResultView.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift index 609970eb1..b3bbe7938 100644 --- a/Mastodon/Scene/Report/ReportResult/ReportResultView.swift +++ b/Mastodon/Scene/Report/ReportResult/ReportResultView.swift @@ -51,7 +51,7 @@ struct ReportResultView: View { .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 28, weight: .bold)) as CTFont)) if viewModel.isReported { avatarView - Text(verbatim: "While we review this, you can take action against @\(viewModel.username)") + Text(verbatim: L10n.Scene.Report.StepFinal.whileWeReviewThisYouCanTakeActionAgainstUser("@\(viewModel.username)")) .foregroundColor(Color(Asset.Colors.Label.secondary.color)) .font(Font(UIFontMetrics(forTextStyle: .largeTitle).scaledFont(for: .systemFont(ofSize: 17, weight: .regular)) as CTFont)) } else { @@ -74,7 +74,7 @@ struct ReportResultView: View { action: { viewModel.followActionPublisher.send() }, - title: viewModel.relationshipViewModel.isFollowing ? "Unfollow" : "Unfollowed", + title: viewModel.relationshipViewModel.isFollowing ? L10n.Scene.Report.StepFinal.unfollow : L10n.Scene.Report.StepFinal.unfollowed, isBusy: viewModel.isRequestFollow ) } From 4e83be76c40707ca4d01bf7fa345bec1c9e085e5 Mon Sep 17 00:00:00 2001 From: CMK Date: Wed, 18 May 2022 00:33:13 +0800 Subject: [PATCH 508/571] chore: update version to 1.4.2 (130) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++++++++--------------- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 8 files changed, 31 insertions(+), 31 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index dd564b63d..e2cd5d4b9 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index d41f69d00..ed678c596 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4832,7 +4832,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4862,7 +4862,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4970,11 +4970,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 129; + DYLIB_CURRENT_VERSION = 130; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5001,11 +5001,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 129; + DYLIB_CURRENT_VERSION = 130; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5096,7 +5096,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5164,11 +5164,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 129; + DYLIB_CURRENT_VERSION = 130; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5193,7 +5193,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5216,7 +5216,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5240,7 +5240,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5264,7 +5264,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5288,7 +5288,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5312,7 +5312,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5336,7 +5336,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5423,7 +5423,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5490,11 +5490,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 129; + DYLIB_CURRENT_VERSION = 130; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5518,7 +5518,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5541,7 +5541,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5565,7 +5565,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5589,7 +5589,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5612,7 +5612,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 129; + CURRENT_PROJECT_VERSION = 130; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 7413af34a..b3dedb4f3 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 129 + 130 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index cd9c8ac9c..82565e924 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index dd564b63d..e2cd5d4b9 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index dd564b63d..e2cd5d4b9 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index dbe606d16..4ef955b5c 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 71e6dfc4b..8cba36e98 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 129 + 130 NSExtension NSExtensionAttributes From bc7e6dddd4a171ad27b99ebc7be3561b49f4d1e5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 20:47:42 +0200 Subject: [PATCH 509/571] New translations app.json (Thai) --- .../StringsConvertor/input/th.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index cbe072eff..b1a0968a1 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "ผู้ติดตาม", "footer": "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ" }, "following": { - "title": "following", + "title": "กำลังติดตาม", "footer": "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ" }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "ผู้ติดตามที่คุณคุ้นเคย", + "followed_by_names": "ติดตามโดย %s" }, "favorited_by": { - "title": "Favorited By" + "title": "ชื่นชอบโดย" }, "reblogged_by": { - "title": "Reblogged By" + "title": "ดันโดย" }, "search": { "title": "ค้นหา", From 19dfb6569f715bc2792fa370c43ad07667b7ce2d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 20:47:43 +0200 Subject: [PATCH 510/571] New translations Localizable.stringsdict (Thai) --- .../StringsConvertor/input/th.lproj/Localizable.stringsdict | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict index edd0e18f9..897d07eca 100644 --- a/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/th.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + ติดตามโดย %1$@ และ %ld ที่ร่วมกัน plural.count.metric_formatted.post From 62fe4148f8c312a5680dbbdc8ec43678b4cd4db7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 21:53:55 +0200 Subject: [PATCH 511/571] New translations app.json (French) --- .../StringsConvertor/input/fr.lproj/app.json | 78 +++++++++---------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/Localization/StringsConvertor/input/fr.lproj/app.json b/Localization/StringsConvertor/input/fr.lproj/app.json index d37c34632..fbd968b4d 100644 --- a/Localization/StringsConvertor/input/fr.lproj/app.json +++ b/Localization/StringsConvertor/input/fr.lproj/app.json @@ -129,7 +129,7 @@ "show_post": "Montrer la publication", "show_user_profile": "Montrer le profil de l’utilisateur·rice", "content_warning": "Avertissement de contenu", - "sensitive_content": "Sensitive Content", + "sensitive_content": "Contenu sensible", "media_content_warning": "Tapotez n’importe où pour révéler la publication", "tap_to_reveal": "Appuyer pour afficher", "poll": { @@ -147,7 +147,7 @@ "show_image": "Afficher l’image", "show_gif": "Afficher le GIF", "show_video_player": "Afficher le lecteur vidéo", - "tap_then_hold_to_show_menu": "Tap then hold to show menu" + "tap_then_hold_to_show_menu": "Appuyez et maintenez pour afficher le menu" }, "tag": { "url": "URL", @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Trouvez un serveur ou rejoignez le vôtre...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Rechercher parmi les communautés ou entrer une URL" }, "empty_state": { "finding_servers": "Recherche des serveurs disponibles...", @@ -251,7 +251,7 @@ }, "register": { "title": "Parlez-nous de vous.", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "Mettons les choses en place pour %s", "input": { "avatar": { "delete": "Supprimer" @@ -322,7 +322,7 @@ "confirm_email": { "title": "Une dernière chose.", "subtitle": "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte", "button": { "open_email_app": "Ouvrir l’application de courriel", "resend": "Renvoyer" @@ -347,7 +347,7 @@ "published": "Publié!", "Publishing": "Publication en cours ...", "accessibility": { - "logo_label": "Logo Button", + "logo_label": "Bouton logo", "logo_hint": "Tap to scroll to top and tap again to previous location" } } @@ -462,7 +462,7 @@ } }, "follower": { - "title": "follower", + "title": "abonné·e", "footer": "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s." }, "following": { @@ -470,8 +470,8 @@ "footer": "Les abonnés issus des autres serveurs ne sont pas affichés." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Abonné·e·s que vous connaissez", + "followed_by_names": "Suivi·e par %s" }, "favorited_by": { "title": "Favorited By" @@ -517,10 +517,10 @@ "posts": "Messages", "hashtags": "Hashtags", "news": "Actualité", - "community": "Community", + "community": "Communauté", "for_you": "Pour vous" }, - "intro": "These are the posts gaining traction in your corner of Mastodon." + "intro": "Ce sont les messages qui gagnent en popularité sur votre serveur Mastodon." }, "favorite": { "title": "Vos favoris" @@ -617,44 +617,44 @@ "text_placeholder": "Tapez ou collez des informations supplémentaires", "reported": "SIGNALÉ", "step_one": { - "step_1_of_4": "Step 1 of 4", - "whats_wrong_with_this_post": "What's wrong with this post?", - "whats_wrong_with_this_account": "What's wrong with this account?", - "whats_wrong_with_this_username": "What's wrong with %s?", + "step_1_of_4": "Étape 1 sur 4", + "whats_wrong_with_this_post": "Qu’est-ce qui ne va pas avec ce message ?", + "whats_wrong_with_this_account": "Qu’est-ce qui ne va pas avec ce compte ?", + "whats_wrong_with_this_username": "Qu’est-ce qui ne va pas avec %s ?", "select_the_best_match": "Select the best match", - "i_dont_like_it": "I don’t like it", - "it_is_not_something_you_want_to_see": "It is not something you want to see", - "its_spam": "It’s spam", - "malicious_links_fake_engagement_or_repetetive_replies": "Malicious links, fake engagement, or repetetive replies", - "it_violates_server_rules": "It violates server rules", - "you_are_aware_that_it_breaks_specific_rules": "You are aware that it breaks specific rules", - "its_something_else": "It’s something else", - "the_issue_does_not_fit_into_other_categories": "The issue does not fit into other categories" + "i_dont_like_it": "Je n’aime pas", + "it_is_not_something_you_want_to_see": "C’est quelque chose que vous ne souhaitez pas voir", + "its_spam": "C’est du spam", + "malicious_links_fake_engagement_or_repetetive_replies": "Liens malveillants, engagement mensonger ou réponses répétitives", + "it_violates_server_rules": "Enfreint les règles du serveur", + "you_are_aware_that_it_breaks_specific_rules": "Vous savez qu’il enfreint des règles spécifiques", + "its_something_else": "Pour une autre raison", + "the_issue_does_not_fit_into_other_categories": "Le problème ne correspond à aucune des catégories" }, "step_two": { - "step_2_of_4": "Step 2 of 4", - "which_rules_are_being_violated": "Which rules are being violated?", - "select_all_that_apply": "Select all that apply", - "i_just_don’t_like_it": "I just don’t like it" + "step_2_of_4": "Étape 2 sur 4", + "which_rules_are_being_violated": "Quelles règles sont enfreintes ?", + "select_all_that_apply": "Sélectionnez toutes les réponses appropriées", + "i_just_don’t_like_it": "Ça ne me plaît tout simplement pas" }, "step_three": { - "step_3_of_4": "Step 3 of 4", - "are_there_any_posts_that_back_up_this_report": "Are there any posts that back up this report?", - "select_all_that_apply": "Select all that apply" + "step_3_of_4": "Étape 3 sur 4", + "are_there_any_posts_that_back_up_this_report": "Existe-t-il des messages pour étayer ce rapport ?", + "select_all_that_apply": "Sélectionnez toutes les réponses qui s’appliquent" }, "step_four": { - "step_4_of_4": "Step 4 of 4", - "is_there_anything_else_we_should_know": "Is there anything else we should know?" + "step_4_of_4": "Étape 4 sur 4", + "is_there_anything_else_we_should_know": "Y a-t-il autre chose que nous devrions savoir ?" }, "step_final": { - "dont_want_to_see_this": "Don’t want to see this?", - "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "When you see something you don’t like on Mastodon, you can remove the person from your experience.", - "unfollow": "Unfollow", + "dont_want_to_see_this": "Vous ne voulez pas voir cela ?", + "when_you_see_something_you_dont_like_on_mastodon_you_can_remove_the_person_from_your_experience.": "Quand vous voyez quelque chose que vous n’aimez pas sur Mastodon, vous pouvez retirer la personne de votre expérience.", + "unfollow": "Se désabonner", "unfollowed": "Unfollowed", - "unfollow_user": "Unfollow %s", - "mute_user": "Mute %s", - "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted.", - "block_user": "Block %s", + "unfollow_user": "Ne plus suivre %s", + "mute_user": "Masquer %s", + "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "Vous ne verrez plus leurs messages ou leurs partages dans votre flux personnel. Iels ne sauront pas qu’iels ont été mis en sourdine.", + "block_user": "Bloquer %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked.", "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" } From e78627452691a5a4265661a70553146cf54a521e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 17 May 2022 21:53:56 +0200 Subject: [PATCH 512/571] New translations Localizable.stringsdict (French) --- .../input/fr.lproj/Localizable.stringsdict | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict index 50e1b8326..d9d860a47 100644 --- a/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fr.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Suivi·e par %1$@ et un·e autre en commun other - Followed by %1$@, and %ld mutuals + Suivi·e par %1$@ et %ld autres en commun plural.count.metric_formatted.post @@ -104,9 +104,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 média other - %ld media + %ld médias plural.count.post From 904306977ccdc648e4b06ec28e2f8f9cf3ef35f7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 18 May 2022 12:53:25 +0200 Subject: [PATCH 513/571] New translations app.json (Vietnamese) --- .../StringsConvertor/input/vi.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/vi.lproj/app.json b/Localization/StringsConvertor/input/vi.lproj/app.json index 348a64c10..f4b71f861 100644 --- a/Localization/StringsConvertor/input/vi.lproj/app.json +++ b/Localization/StringsConvertor/input/vi.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "người theo dõi", "footer": "Không hiển thị người theo dõi từ máy chủ khác." }, "following": { - "title": "following", + "title": "đang theo dõi", "footer": "Không hiển thị người bạn theo dõi từ máy chủ khác." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Người theo dõi tương tự", + "followed_by_names": "Theo dõi bởi %s" }, "favorited_by": { - "title": "Favorited By" + "title": "Thích bởi" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Đăng lại bởi" }, "search": { "title": "Tìm kiếm", From 5863552c6a2ef6da209644d0645d2081e29b5683 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 18 May 2022 15:23:39 +0200 Subject: [PATCH 514/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar.lproj/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json index 505fa89bf..02c9695a0 100644 --- a/Localization/StringsConvertor/input/ar.lproj/app.json +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -474,10 +474,10 @@ "followed_by_names": "Followed by %s" }, "favorited_by": { - "title": "Favorited By" + "title": "فُضِّلَ مِن قِبَلِ" }, "reblogged_by": { - "title": "Reblogged By" + "title": "أُعيدَ تَدوينَهُ بِواسِطَةِ" }, "search": { "title": "البَحث", From 35b1a6b29aa90d5f0b9804a3765523ca13a5f903 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 18 May 2022 15:23:40 +0200 Subject: [PATCH 515/571] New translations Localizable.stringsdict (Arabic) --- .../input/ar.lproj/Localizable.stringsdict | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict index 12990353a..52145a165 100644 --- a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict @@ -152,17 +152,17 @@ NSStringFormatValueTypeKey ld zero - %ld media + لا وسيطة one - 1 media + وسيطةٌ واحِدَة two - %ld media + وسيطتانِ اِثنتان few - %ld media + %ld أوساط many - %ld media + %ld وَسَطًا other - %ld media + %ld وَسَط plural.count.post From 38070c9e97e8c88e88a268bb0464ee884e14c8ac Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Wed, 18 May 2022 16:20:35 +0200 Subject: [PATCH 516/571] New translations app.json (Arabic) --- .../StringsConvertor/input/ar.lproj/app.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json index 02c9695a0..2f233ae67 100644 --- a/Localization/StringsConvertor/input/ar.lproj/app.json +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -251,7 +251,7 @@ }, "register": { "title": "أخبرنا عن نفسك.", - "lets_get_you_set_up_on_domain": "Let’s get you set up on %s", + "lets_get_you_set_up_on_domain": "دَعنا نَبدَأُ بِإعدادِكَ عَلَى %s", "input": { "avatar": { "delete": "حذف" @@ -322,7 +322,7 @@ "confirm_email": { "title": "شيءٌ أخير.", "subtitle": "أنقر على الرابط المرسل إليك لاستيثاق حسابك.", - "tap_the_link_we_emailed_to_you_to_verify_your_account": "Tap the link we emailed to you to verify your account", + "tap_the_link_we_emailed_to_you_to_verify_your_account": "اُنقُر عَلَى الرَّابِطِ الَّذي أرسَلناهُ إليكَ عَبرَ البَريدِ الإلِكتُرُونيّ لِلتَّحَقُقِ مِن حِسابِك", "button": { "open_email_app": "فتح تطبيق البريد الإلكتروني", "resend": "إعادَةُ الإرسال" @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "مُتابِعِين", "footer": "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى." }, "following": { - "title": "following", + "title": "مُتابَعُون", "footer": "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "مُتابِعُونَ مَألُوفُونَ بِالنِّسبَةِ لَك", + "followed_by_names": "مُتابَعٌ مِن قِبَلِ %s" }, "favorited_by": { - "title": "فُضِّلَ مِن قِبَلِ" + "title": "مُفَضَّلٌ مِن قِبَلِ" }, "reblogged_by": { - "title": "أُعيدَ تَدوينَهُ بِواسِطَةِ" + "title": "اُعيدَ تَدوينَهُ بِواسِطَةِ" }, "search": { "title": "البَحث", @@ -656,7 +656,7 @@ "you_wont_see_their_posts_or_reblogs_in_your_home_feed_they_wont_know_they_ve_been_muted": "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا.", "block_user": "حَظرُ %s", "they_will_no_longer_be_able_to_follow_or_see_your_posts_but_they_can_see_if_theyve_been_blocked": "لَن يَتمكَّنَ بَعدَ الآنِ مِن مُتابَعَةِ مَنشوراتِكَ أو رُؤيَتِها، وَلكِن يُمكِنَهُ مَعرِفَةُ مَا إذا حُظَرِت عَنه.", - "while_we_review_this_you_can_take_action_against_user": "While we review this, you can take action against %s" + "while_we_review_this_you_can_take_action_against_user": "أثناءُ مُراجَعَتِنا لِذلِك، يُمكِنُكَ اِتِّخاذُ إجراءٍ ضِدَّ %s" } }, "preview": { From eef960dae4f0062826d387c687e63ff622afd8fd Mon Sep 17 00:00:00 2001 From: CMK Date: Thu, 19 May 2022 10:26:41 +0800 Subject: [PATCH 517/571] chore: remove report comment suffix --- .../Scene/Report/Report/ReportViewModel.swift | 38 +++---------------- 1 file changed, 5 insertions(+), 33 deletions(-) diff --git a/Mastodon/Scene/Report/Report/ReportViewModel.swift b/Mastodon/Scene/Report/Report/ReportViewModel.swift index 5afe794a1..81ba20125 100644 --- a/Mastodon/Scene/Report/Report/ReportViewModel.swift +++ b/Mastodon/Scene/Report/Report/ReportViewModel.swift @@ -125,40 +125,12 @@ extension ReportViewModel { // the user comment is essential step in report flow // only check isSkip or not let comment: String? = { - var suffixes: [String] = [] - let content: String? - - // the server rules is NOT essential step in report flow - // append suffix depends which reason - if let reason = self.reportReasonViewModel.selectReason { - switch reason { - case .spam: - suffixes.append(reason.rawValue) - case .violateRule: - suffixes.append(reason.rawValue) - - for rule in self.reportServerRulesViewModel.selectRules { - suffixes.append(rule.text) - } - case .dislike: - assertionFailure("should not enter the report flow") - case .other: - break - } + let _comment = self.reportSupplementaryViewModel.isSkip ? nil : self.reportSupplementaryViewModel.commentContext.comment + if let comment = _comment, !comment.isEmpty { + return comment + } else { + return nil } - - content = self.reportSupplementaryViewModel.isSkip ? nil : self.reportSupplementaryViewModel.commentContext.comment - - let suffix: String? = { - let text = suffixes.joined(separator: ". ") - guard !text.isEmpty else { return nil } - return "<" + text + ">" - }() - - let comment = [content, suffix] - .compactMap { $0 } - .joined(separator: " ") - return comment.isEmpty ? nil : comment }() return Mastodon.API.Reports.FileReportQuery( accountID: user.id, From 4b5c15e23a1366d11ddecb78abddcfc1c1cb1c13 Mon Sep 17 00:00:00 2001 From: CMK Date: Thu, 19 May 2022 10:55:05 +0800 Subject: [PATCH 518/571] chore: update i18n resources --- .../Resources/ar.lproj/Localizable.strings | 18 ++--- .../ar.lproj/Localizable.stringsdict | 12 +-- .../Resources/ca.lproj/Localizable.strings | 12 +-- .../Resources/de.lproj/Localizable.strings | 6 +- .../Resources/fr.lproj/Localizable.strings | 78 +++++++++---------- .../fr.lproj/Localizable.stringsdict | 8 +- .../Resources/it.lproj/Localizable.strings | 12 +-- .../Resources/th.lproj/Localizable.strings | 12 +-- .../th.lproj/Localizable.stringsdict | 2 +- .../Resources/vi.lproj/Localizable.strings | 12 +-- .../zh-Hans.lproj/Localizable.strings | 12 +-- .../zh-Hant.lproj/Localizable.strings | 12 +-- .../zh-Hant.lproj/Localizable.stringsdict | 2 +- 13 files changed, 99 insertions(+), 99 deletions(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index 0c5b06959..ec7957667 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -200,7 +200,7 @@ "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "فتح عميل البريد الإلكتروني"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "تحقَّق من بريدك الوارِد."; "Scene.ConfirmEmail.Subtitle" = "أنقر على الرابط المرسل إليك لاستيثاق حسابك."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "اُنقُر عَلَى الرَّابِطِ الَّذي أرسَلناهُ إليكَ عَبرَ البَريدِ الإلِكتُرُونيّ لِلتَّحَقُقِ مِن حِسابِك"; "Scene.ConfirmEmail.Title" = "شيءٌ أخير."; "Scene.Discovery.Intro" = "هَذِهِ هِيَ المَنشُوراتُ الَّتي تَكْتَسِبُ شَعبِيَّةً فِي الرُّكنِ الخاصِّ بِكَ مِن مَاستُودون."; "Scene.Discovery.Tabs.Community" = "المُجتَمَع"; @@ -208,14 +208,14 @@ "Scene.Discovery.Tabs.Hashtags" = "وُسُوم"; "Scene.Discovery.Tabs.News" = "أخبار"; "Scene.Discovery.Tabs.Posts" = "مَنشُورات"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "مُتابَعٌ مِن قِبَلِ %@"; +"Scene.Familiarfollowers.Title" = "مُتابِعُونَ مَألُوفُونَ بِالنِّسبَةِ لَك"; "Scene.Favorite.Title" = "مُفضَّلَتُك"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "مُفَضَّلٌ مِن قِبَلِ"; "Scene.Follower.Footer" = "لا يُمكِن عَرض المُتابِعين مِنَ الخوادم الأُخرى."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "مُتابِعِين"; "Scene.Following.Footer" = "لا يُمكِن عَرض المُتابَعات مِنَ الخوادم الأُخرى."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "مُتابَعُون"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "اُنقُر لِلتمريرِ لأعلى واُنقُر مَرّةً أُخرَى لِلذَّهابِ إلَى المَوقِعِ السَّابِق"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "ُّزِرُّ الشِّعار"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "إظهار منشورات جديدة"; @@ -259,7 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "مَنشورات"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "مَنشُوراتٌ وَرُدُود"; "Scene.Profile.SegmentedControl.Replies" = "رُدُود"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "اُعيدَ تَدوينَهُ بِواسِطَةِ"; "Scene.Register.Error.Item.Agreement" = "الاِتِّفاقيَّة"; "Scene.Register.Error.Item.Email" = "البريد الإلكتروني"; "Scene.Register.Error.Item.Locale" = "اللغة المحلية"; @@ -292,7 +292,7 @@ "Scene.Register.Input.Password.Require" = "رمز المرور الخاص بك يجب أن يحتوي على الأقل:"; "Scene.Register.Input.Username.DuplicatePrompt" = "اِسم المُستَخدِم هذا مأخوذٌ بالفعل."; "Scene.Register.Input.Username.Placeholder" = "اِسمُ مُستَخدِم"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "دَعنا نَبدَأُ بِإعدادِكَ عَلَى %@"; "Scene.Register.Title" = "أخبرنا عن نفسك."; "Scene.Report.Content1" = "هل ترغب في إضافة أي منشورات أُخرى إلى البلاغ؟"; "Scene.Report.Content2" = "هل هناك أي شيء يجب أن يعرفه المُراقبين حول هذا البلاغ؟"; @@ -310,7 +310,7 @@ "Scene.Report.StepFinal.UnfollowUser" = "إلغاءُ مُتابَعَةِ %@"; "Scene.Report.StepFinal.Unfollowed" = "أُلغِيَت المُتابَعَة"; "Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "عِندما تَرى شيئًا لَا يُعجِبُكَ عَلَى مَاستودُون، يُمكِنُكَ إزالَةُ الشَّخصِ مِن تَجرِبَتِك."; -"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "أثناءُ مُراجَعَتِنا لِذلِك، يُمكِنُكَ اِتِّخاذُ إجراءٍ ضِدَّ %@"; "Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "لَن تَرى مُشارَكاتِهِ أو إعادَاتِ تَدوينَهِ فِي تغذيَتِكَ الرَّئيسَة. لَن يَعرِفَ أنَّهُ قَد كُتِمَ أيضًا."; "Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "هَل هُناكَ شَيءٌ آخَرَ يَجِبُ أن نَعلَمَ بِه؟"; "Scene.Report.StepFour.Step4Of4" = "الخطوة 4 مِن أصل 4"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict index 12990353a..52145a165 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict @@ -152,17 +152,17 @@ NSStringFormatValueTypeKey ld zero - %ld media + لا وسيطة one - 1 media + وسيطةٌ واحِدَة two - %ld media + وسيطتانِ اِثنتان few - %ld media + %ld أوساط many - %ld media + %ld وَسَطًا other - %ld media + %ld وَسَط plural.count.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index eb0c441a5..27dd54294 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -208,14 +208,14 @@ carregat a Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Etiquetes"; "Scene.Discovery.Tabs.News" = "Notícies"; "Scene.Discovery.Tabs.Posts" = "Publicacions"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Seguit per %@"; +"Scene.Familiarfollowers.Title" = "Seguidors coneguts"; "Scene.Favorite.Title" = "Els teus Favorits"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "Preferit per"; "Scene.Follower.Footer" = "Els seguidors d'altres servidors no son mostrats."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "seguidor"; "Scene.Following.Footer" = "Els seguits d'altres servidors no son mostrats."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "seguint"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Toca per desplaçar-te cap a dalt i torna a toca de nou per tornar a la ubicació anterior"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Botó de logotip"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Veure noves publicacions"; @@ -259,7 +259,7 @@ carregat a Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Publicacions"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Publicacions i Respostes"; "Scene.Profile.SegmentedControl.Replies" = "Respostes"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "Impulsat per"; "Scene.Register.Error.Item.Agreement" = "Acord"; "Scene.Register.Error.Item.Email" = "Correu electrònic"; "Scene.Register.Error.Item.Locale" = "Idioma"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index 4f0be7170..f0468f315 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -373,8 +373,8 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.ServerPicker.EmptyState.BadNetwork" = "Beim Laden der Daten ist etwas schief gelaufen. Überprüfe deine Internetverbindung."; "Scene.ServerPicker.EmptyState.FindingServers" = "Verfügbare Server werden gesucht..."; "Scene.ServerPicker.EmptyState.NoResults" = "Keine Ergebnisse"; -"Scene.ServerPicker.Input.Placeholder" = "Finde einen Server oder trete deinem eigenen bei..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.Placeholder" = "Nach Server suchen oder URL eingeben"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Nach Server suchen oder URL eingeben"; "Scene.ServerPicker.Label.Category" = "KATEGORIE"; "Scene.ServerPicker.Label.Language" = "SPRACHE"; "Scene.ServerPicker.Label.Users" = "BENUTZER"; @@ -427,7 +427,7 @@ beliebigen Server."; "Scene.SuggestionAccount.Title" = "Finde Personen zum Folgen"; "Scene.Thread.BackTitle" = "Beitrag"; "Scene.Thread.Title" = "Beitrag von %@"; -"Scene.Welcome.GetStarted" = "Erste Schritte"; +"Scene.Welcome.GetStarted" = "Registrieren"; "Scene.Welcome.LogIn" = "Anmelden"; "Scene.Welcome.Slogan" = "Soziale Netzwerke wieder in deinen Händen."; "Scene.Wizard.AccessibilityHint" = "Doppeltippen, um diesen Assistenten zu schließen"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings index 4ca7535a5..41afb2394 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings @@ -101,14 +101,14 @@ Veuillez vérifier votre accès à Internet."; "Common.Controls.Status.Actions.ShowGif" = "Afficher le GIF"; "Common.Controls.Status.Actions.ShowImage" = "Afficher l’image"; "Common.Controls.Status.Actions.ShowVideoPlayer" = "Afficher le lecteur vidéo"; -"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tap then hold to show menu"; +"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Appuyez et maintenez pour afficher le menu"; "Common.Controls.Status.Actions.Unfavorite" = "Retirer des favoris"; "Common.Controls.Status.Actions.Unreblog" = "Annuler le reblog"; "Common.Controls.Status.ContentWarning" = "Avertissement de contenu"; "Common.Controls.Status.MediaContentWarning" = "Tapotez n’importe où pour révéler la publication"; "Common.Controls.Status.Poll.Closed" = "Fermé"; "Common.Controls.Status.Poll.Vote" = "Voter"; -"Common.Controls.Status.SensitiveContent" = "Sensitive Content"; +"Common.Controls.Status.SensitiveContent" = "Contenu sensible"; "Common.Controls.Status.ShowPost" = "Montrer la publication"; "Common.Controls.Status.ShowUserProfile" = "Montrer le profil de l’utilisateur·rice"; "Common.Controls.Status.Tag.Email" = "Courriel"; @@ -200,24 +200,24 @@ téléversé sur Mastodon."; "Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Ouvrir le client de messagerie"; "Scene.ConfirmEmail.OpenEmailApp.Title" = "Vérifier votre boîte aux lettres."; "Scene.ConfirmEmail.Subtitle" = "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte."; -"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Appuyez sur le lien que nous vous avons envoyé par courriel pour vérifier votre compte"; "Scene.ConfirmEmail.Title" = "Une dernière chose."; -"Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; -"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Intro" = "Ce sont les messages qui gagnent en popularité sur votre serveur Mastodon."; +"Scene.Discovery.Tabs.Community" = "Communauté"; "Scene.Discovery.Tabs.ForYou" = "Pour vous"; "Scene.Discovery.Tabs.Hashtags" = "Hashtags"; "Scene.Discovery.Tabs.News" = "Actualité"; "Scene.Discovery.Tabs.Posts" = "Messages"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Suivi·e par %@"; +"Scene.Familiarfollowers.Title" = "Abonné·e·s que vous connaissez"; "Scene.Favorite.Title" = "Vos favoris"; "Scene.FavoritedBy.Title" = "Favorited By"; "Scene.Follower.Footer" = "Les abonné·e·s issus des autres serveurs ne sont pas affiché·e·s."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "abonné·e"; "Scene.Following.Footer" = "Les abonnés issus des autres serveurs ne sont pas affichés."; "Scene.Following.Title" = "following"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; -"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Bouton logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Voir les nouvelles publications"; "Scene.HomeTimeline.NavigationBarState.Offline" = "Hors ligne"; "Scene.HomeTimeline.NavigationBarState.Published" = "Publié!"; @@ -292,7 +292,7 @@ téléversé sur Mastodon."; "Scene.Register.Input.Password.Require" = "Votre mot de passe doit être composé d’au moins :"; "Scene.Register.Input.Username.DuplicatePrompt" = "Ce nom d'utilisateur est déjà pris."; "Scene.Register.Input.Username.Placeholder" = "nom d'utilisateur"; -"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Mettons les choses en place pour %@"; "Scene.Register.Title" = "Parlez-nous de vous."; "Scene.Report.Content1" = "Y a-t-il d’autres messages que vous aimeriez ajouter au signalement?"; "Scene.Report.Content2" = "Y a-t-il quelque chose que les modérateurs devraient savoir sur ce rapport ?"; @@ -302,38 +302,38 @@ téléversé sur Mastodon."; "Scene.Report.SkipToSend" = "Envoyer sans commentaire"; "Scene.Report.Step1" = "Étape 1 de 2"; "Scene.Report.Step2" = "Étape 2 de 2"; -"Scene.Report.StepFinal.BlockUser" = "Block %@"; -"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; -"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.BlockUser" = "Bloquer %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Vous ne voulez pas voir cela ?"; +"Scene.Report.StepFinal.MuteUser" = "Masquer %@"; "Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; -"Scene.Report.StepFinal.Unfollow" = "Unfollow"; -"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollow" = "Se désabonner"; +"Scene.Report.StepFinal.UnfollowUser" = "Ne plus suivre %@"; "Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; -"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "Quand vous voyez quelque chose que vous n’aimez pas sur Mastodon, vous pouvez retirer la personne de votre expérience."; "Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; -"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; -"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; -"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; -"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; -"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; -"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; -"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; -"Scene.Report.StepOne.ItsSpam" = "It’s spam"; -"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "Vous ne verrez plus leurs messages ou leurs partages dans votre flux personnel. Iels ne sauront pas qu’iels ont été mis en sourdine."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Y a-t-il autre chose que nous devrions savoir ?"; +"Scene.Report.StepFour.Step4Of4" = "Étape 4 sur 4"; +"Scene.Report.StepOne.IDontLikeIt" = "Je n’aime pas"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "C’est quelque chose que vous ne souhaitez pas voir"; +"Scene.Report.StepOne.ItViolatesServerRules" = "Enfreint les règles du serveur"; +"Scene.Report.StepOne.ItsSomethingElse" = "Pour une autre raison"; +"Scene.Report.StepOne.ItsSpam" = "C’est du spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Liens malveillants, engagement mensonger ou réponses répétitives"; "Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; -"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; -"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; -"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; -"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; -"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; -"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; -"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; -"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; -"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; -"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; -"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; -"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.StepOne.Step1Of4" = "Étape 1 sur 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "Le problème ne correspond à aucune des catégories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "Qu’est-ce qui ne va pas avec ce compte ?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "Qu’est-ce qui ne va pas avec ce message ?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "Qu’est-ce qui ne va pas avec %@ ?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "Vous savez qu’il enfreint des règles spécifiques"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Existe-t-il des messages pour étayer ce rapport ?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Sélectionnez toutes les réponses qui s’appliquent"; +"Scene.Report.StepThree.Step3Of4" = "Étape 3 sur 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "Ça ne me plaît tout simplement pas"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Sélectionnez toutes les réponses appropriées"; +"Scene.Report.StepTwo.Step2Of4" = "Étape 2 sur 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Quelles règles sont enfreintes ?"; "Scene.Report.TextPlaceholder" = "Tapez ou collez des informations supplémentaires"; "Scene.Report.Title" = "Signaler %@"; "Scene.Report.TitleReport" = "Signalement"; @@ -374,7 +374,7 @@ téléversé sur Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Recherche des serveurs disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Aucun résultat"; "Scene.ServerPicker.Input.Placeholder" = "Trouvez un serveur ou rejoignez le vôtre..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Rechercher parmi les communautés ou entrer une URL"; "Scene.ServerPicker.Label.Category" = "CATÉGORIE"; "Scene.ServerPicker.Label.Language" = "LANGUE"; "Scene.ServerPicker.Label.Users" = "UTILISATEUR·RICE·S"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict index 50e1b8326..d9d860a47 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Suivi·e par %1$@ et un·e autre en commun other - Followed by %1$@, and %ld mutuals + Suivi·e par %1$@ et %ld autres en commun plural.count.metric_formatted.post @@ -104,9 +104,9 @@ NSStringFormatValueTypeKey ld one - 1 media + 1 média other - %ld media + %ld médias plural.count.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index db3f34373..161361b85 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -208,14 +208,14 @@ caricato su Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Notizie"; "Scene.Discovery.Tabs.Posts" = "Post"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Seguito da %@"; +"Scene.Familiarfollowers.Title" = "Seguaci che conosci"; "Scene.Favorite.Title" = "I tuoi preferiti"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "Preferito Da"; "Scene.Follower.Footer" = "I seguaci da altri server non vengono visualizzati."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "seguace"; "Scene.Following.Footer" = "I follow da altri server non vengono visualizzati."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "seguendo"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tocca per scorrere verso l'alto e tocca di nuovo verso la posizione precedente"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Pulsante Logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Vedi nuovi post"; @@ -259,7 +259,7 @@ caricato su Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Post"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Post e risposte"; "Scene.Profile.SegmentedControl.Replies" = "Risposte"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "Condiviso Da"; "Scene.Register.Error.Item.Agreement" = "Accordo"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Locale"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index c86b3e47c..70e29222e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -208,14 +208,14 @@ "Scene.Discovery.Tabs.Hashtags" = "แฮชแท็ก"; "Scene.Discovery.Tabs.News" = "ข่าว"; "Scene.Discovery.Tabs.Posts" = "โพสต์"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "ติดตามโดย %@"; +"Scene.Familiarfollowers.Title" = "ผู้ติดตามที่คุณคุ้นเคย"; "Scene.Favorite.Title" = "รายการโปรดของคุณ"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "ชื่นชอบโดย"; "Scene.Follower.Footer" = "ไม่ได้แสดงผู้ติดตามจากเซิร์ฟเวอร์อื่น ๆ"; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "ผู้ติดตาม"; "Scene.Following.Footer" = "ไม่ได้แสดงการติดตามจากเซิร์ฟเวอร์อื่น ๆ"; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "กำลังติดตาม"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "แตะเพื่อเลื่อนไปยังด้านบนสุดและแตะอีกครั้งไปยังตำแหน่งที่ตั้งก่อนหน้า"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "ปุ่มโลโก้"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "ดูโพสต์ใหม่"; @@ -259,7 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "โพสต์"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "โพสต์และการตอบกลับ"; "Scene.Profile.SegmentedControl.Replies" = "การตอบกลับ"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "ดันโดย"; "Scene.Register.Error.Item.Agreement" = "ข้อตกลง"; "Scene.Register.Error.Item.Email" = "อีเมล"; "Scene.Register.Error.Item.Locale" = "ตำแหน่งที่ตั้ง"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict index edd0e18f9..897d07eca 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + ติดตามโดย %1$@ และ %ld ที่ร่วมกัน plural.count.metric_formatted.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings index 958cbe057..1b78a22b6 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings @@ -208,14 +208,14 @@ tải lên Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Tin tức"; "Scene.Discovery.Tabs.Posts" = "Tút"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Theo dõi bởi %@"; +"Scene.Familiarfollowers.Title" = "Người theo dõi tương tự"; "Scene.Favorite.Title" = "Lượt thích"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "Thích bởi"; "Scene.Follower.Footer" = "Không hiển thị người theo dõi từ máy chủ khác."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "người theo dõi"; "Scene.Following.Footer" = "Không hiển thị người bạn theo dõi từ máy chủ khác."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "đang theo dõi"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Nhấn để cuộn lên trên và nhấn lại lần nữa để trở về vị trí cũ"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Nút biểu tượng"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Đọc những tút mới"; @@ -259,7 +259,7 @@ tải lên Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Tút"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Tút và trả lời"; "Scene.Profile.SegmentedControl.Replies" = "Trả lời"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "Đăng lại bởi"; "Scene.Register.Error.Item.Agreement" = "Thoả thuận"; "Scene.Register.Error.Item.Email" = "Email"; "Scene.Register.Error.Item.Locale" = "Cục bộ"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index 482a8bea4..bd45a50c8 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -208,14 +208,14 @@ "Scene.Discovery.Tabs.Hashtags" = "话题标签"; "Scene.Discovery.Tabs.News" = "最新消息"; "Scene.Discovery.Tabs.Posts" = "嘟文"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "%@ 关注了这个账号"; +"Scene.Familiarfollowers.Title" = "你熟悉的关注者"; "Scene.Favorite.Title" = "你的喜欢"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "收藏者"; "Scene.Follower.Footer" = "不会显示来自其它服务器的关注者"; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "关注者"; "Scene.Following.Footer" = "不会显示来自其它服务器的关注"; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "正在关注"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "轻点滚到顶部,再次轻点回到原处"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo 按钮"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "查看新帖子"; @@ -259,7 +259,7 @@ "Scene.Profile.SegmentedControl.Posts" = "帖子"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "帖子与回复"; "Scene.Profile.SegmentedControl.Replies" = "回复"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "转发者"; "Scene.Register.Error.Item.Agreement" = "协议"; "Scene.Register.Error.Item.Email" = "电子邮箱"; "Scene.Register.Error.Item.Locale" = "地区"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings index affd013a6..6a76fa3f4 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings @@ -203,14 +203,14 @@ "Scene.Discovery.Tabs.Hashtags" = "主題標籤"; "Scene.Discovery.Tabs.News" = "最新消息"; "Scene.Discovery.Tabs.Posts" = "嘟文"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "被 %@ 跟隨"; +"Scene.Familiarfollowers.Title" = "您熟悉的跟隨者"; "Scene.Favorite.Title" = "您的最愛"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "已加入最愛"; "Scene.Follower.Footer" = "來自其他伺服器的跟隨者不會被顯示。"; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "跟隨者"; "Scene.Following.Footer" = "來自其他伺服器的跟隨中不會被顯示。"; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "跟隨中"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "輕點一下捲至頂端並且再點ㄧ下回到原先位置"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "標誌按鈕"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "檢視最新嘟文"; @@ -254,7 +254,7 @@ "Scene.Profile.SegmentedControl.Posts" = "嘟文"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "嘟文及回覆"; "Scene.Profile.SegmentedControl.Replies" = "回覆"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "已轉嘟"; "Scene.Register.Error.Item.Agreement" = "條款"; "Scene.Register.Error.Item.Email" = "電子郵件"; "Scene.Register.Error.Item.Locale" = "地區"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict index 7fa90b502..c0ce0f9a2 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.stringsdict @@ -64,7 +64,7 @@ NSStringFormatValueTypeKey ld other - Followed by %1$@, and %ld mutuals + 被 %1$@ 跟隨,%ld 個共同跟隨者 plural.count.metric_formatted.post From cc413074f31efbe76a9ad99308c9a11751ebc878 Mon Sep 17 00:00:00 2001 From: CMK Date: Thu, 19 May 2022 10:55:41 +0800 Subject: [PATCH 519/571] chore: update version to 1.4.2 (131) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++++++++--------------- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 8 files changed, 31 insertions(+), 31 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index e2cd5d4b9..afd0cd01d 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index ed678c596..7835f1550 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4832,7 +4832,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4862,7 +4862,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4970,11 +4970,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 130; + DYLIB_CURRENT_VERSION = 131; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5001,11 +5001,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 130; + DYLIB_CURRENT_VERSION = 131; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5096,7 +5096,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5164,11 +5164,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 130; + DYLIB_CURRENT_VERSION = 131; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5193,7 +5193,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5216,7 +5216,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5240,7 +5240,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5264,7 +5264,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5288,7 +5288,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5312,7 +5312,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5336,7 +5336,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5423,7 +5423,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5490,11 +5490,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 130; + DYLIB_CURRENT_VERSION = 131; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5518,7 +5518,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5541,7 +5541,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5565,7 +5565,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5589,7 +5589,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5612,7 +5612,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 130; + CURRENT_PROJECT_VERSION = 131; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index b3dedb4f3..f425b125f 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 130 + 131 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 82565e924..3da854b33 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index e2cd5d4b9..afd0cd01d 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index e2cd5d4b9..afd0cd01d 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index 4ef955b5c..119cb1139 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 8cba36e98..119bb9404 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 130 + 131 NSExtension NSExtensionAttributes From f87a6096d75b367c183fcf8da554ad51bb6707a9 Mon Sep 17 00:00:00 2001 From: CMK Date: Thu, 19 May 2022 11:21:40 +0800 Subject: [PATCH 520/571] chore: add Finnish language --- .../Sources/StringsConvertor/main.swift | 1 + Mastodon.xcodeproj/project.pbxproj | 7 + .../xcschemes/xcschememanagement.plist | 6 +- Mastodon/Resources/fi.lproj/InfoPlist.strings | 4 + MastodonIntent/fi.lproj/Intents.strings | 51 ++ MastodonIntent/fi.lproj/Intents.stringsdict | 54 +++ .../Resources/fi.lproj/Localizable.strings | 436 +++++++++++++++++ .../fi.lproj/Localizable.stringsdict | 449 ++++++++++++++++++ 8 files changed, 1005 insertions(+), 3 deletions(-) create mode 100644 Mastodon/Resources/fi.lproj/InfoPlist.strings create mode 100644 MastodonIntent/fi.lproj/Intents.strings create mode 100644 MastodonIntent/fi.lproj/Intents.stringsdict create mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings create mode 100644 MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.stringsdict diff --git a/Localization/StringsConvertor/Sources/StringsConvertor/main.swift b/Localization/StringsConvertor/Sources/StringsConvertor/main.swift index 7c0486548..76dc722f6 100644 --- a/Localization/StringsConvertor/Sources/StringsConvertor/main.swift +++ b/Localization/StringsConvertor/Sources/StringsConvertor/main.swift @@ -54,6 +54,7 @@ private func map(language: String) -> String? { case "zh-Hant.lproj": return "zh-Hant" // Chinese Traditional case "nl.lproj": return "nl" // Dutch case "en.lproj": return "en" + case "fi.lproj": return "fi" // Finnish case "fr.lproj": return "fr" // French case "gl.lproj": return "gl" // Galician case "de.lproj": return "de" // German diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 7835f1550..1171a73a7 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -1198,6 +1198,9 @@ DB8D8E3128196FA0009FD90F /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Intents.strings; sourceTree = ""; }; DB8D8E3228196FA0009FD90F /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/InfoPlist.strings; sourceTree = ""; }; DB8D8E3328196FA0009FD90F /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = sv; path = sv.lproj/Intents.stringsdict; sourceTree = ""; }; + DB8F40042835EE5E006E7513 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/Intents.strings; sourceTree = ""; }; + DB8F40052835EE5E006E7513 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fi; path = fi.lproj/InfoPlist.strings; sourceTree = ""; }; + DB8F40062835EE5E006E7513 /* fi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = fi; path = fi.lproj/Intents.stringsdict; sourceTree = ""; }; DB8F7075279E954700E1225B /* DataSourceFacade+Follow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DataSourceFacade+Follow.swift"; sourceTree = ""; }; DB8FAB9E26AEC3A2008E5AF4 /* Intents.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Intents.framework; path = System/Library/Frameworks/Intents.framework; sourceTree = SDKROOT; }; DB8FABA926AEC3A2008E5AF4 /* IntentsUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IntentsUI.framework; path = System/Library/Frameworks/IntentsUI.framework; sourceTree = SDKROOT; }; @@ -3646,6 +3649,7 @@ eu, gd, "es-AR", + fi, ); mainGroup = DB427DC925BAA00100D1B89D; packageReferences = ( @@ -4611,6 +4615,7 @@ DBC9E3A3282E13BB0063A4D9 /* eu */, DBC9E3A6282E15190063A4D9 /* gd */, DBC9E3A9282E17DF0063A4D9 /* es-AR */, + DB8F40042835EE5E006E7513 /* fi */, ); name = Intents.intentdefinition; sourceTree = ""; @@ -4641,6 +4646,7 @@ DBC9E3A4282E13BB0063A4D9 /* eu */, DBC9E3A7282E15190063A4D9 /* gd */, DBC9E3AA282E17DF0063A4D9 /* es-AR */, + DB8F40052835EE5E006E7513 /* fi */, ); name = InfoPlist.strings; sourceTree = ""; @@ -4687,6 +4693,7 @@ DBC9E3A5282E13BB0063A4D9 /* eu */, DBC9E3A8282E15190063A4D9 /* gd */, DBC9E3AB282E17DF0063A4D9 /* es-AR */, + DB8F40062835EE5E006E7513 /* fi */, ); name = Intents.stringsdict; sourceTree = ""; diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 3e2139aa3..e32c7d79c 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 28 + 21 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 29 + 22 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 27 + 20 SuppressBuildableAutocreation diff --git a/Mastodon/Resources/fi.lproj/InfoPlist.strings b/Mastodon/Resources/fi.lproj/InfoPlist.strings new file mode 100644 index 000000000..710865573 --- /dev/null +++ b/Mastodon/Resources/fi.lproj/InfoPlist.strings @@ -0,0 +1,4 @@ +"NSCameraUsageDescription" = "Used to take photo for post status"; +"NSPhotoLibraryAddUsageDescription" = "Used to save photo into the Photo Library"; +"NewPostShortcutItemTitle" = "New Post"; +"SearchShortcutItemTitle" = "Search"; \ No newline at end of file diff --git a/MastodonIntent/fi.lproj/Intents.strings b/MastodonIntent/fi.lproj/Intents.strings new file mode 100644 index 000000000..1be213d45 --- /dev/null +++ b/MastodonIntent/fi.lproj/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Julkaise Mastodonissa"; + +"751xkl" = "Tekstisisältö"; + +"CsR7G2" = "Julkaise Mastodonissa"; + +"HZSGTr" = "Mitä sisältöä julkaista?"; + +"HdGikU" = "Julkaiseminen epäonnistui"; + +"KDNTJ4" = "Epäonnistumisen syy"; + +"RHxKOw" = "Lähetä julkaisu teksisisällöllä"; + +"RxSqsb" = "Julkaisu"; + +"WCIR3D" = "Julkaise ${content} Mastodonissa"; + +"ZKJSNu" = "Julkaisu"; + +"ZS1XaK" = "${content}"; + +"ZbSjzC" = "Näkyvyys"; + +"Zo4jgJ" = "Julkaisun näkyvyys"; + +"apSxMG-dYQ5NN" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Julkinen’."; + +"apSxMG-ehFLjY" = "On ${count} vaihtoehtoa, jotka vastaavat ‘Vain seuraajat’."; + +"ayoYEb-dYQ5NN" = "${content}, julkinen"; + +"ayoYEb-ehFLjY" = "${content}, vain seuraajat"; + +"dUyuGg" = "Julkaise Mastodonissa"; + +"dYQ5NN" = "Julkinen"; + +"ehFLjY" = "Vain seuraajat"; + +"gfePDu" = "Julkaiseminen epäonnistui. ${failureReason}"; + +"k7dbKQ" = "Julkaisu lähetettiin onnistuneesti."; + +"oGiqmY-dYQ5NN" = "Vahvitukseksi, halusit ‘Julkinen’?"; + +"oGiqmY-ehFLjY" = "Vahvitstukseksi, halusit ‘Vain seuraajat’?"; + +"rM6dvp" = "URL"; + +"ryJLwG" = "Julkaisu lähetettiin onnistuneesti. "; diff --git a/MastodonIntent/fi.lproj/Intents.stringsdict b/MastodonIntent/fi.lproj/Intents.stringsdict new file mode 100644 index 000000000..5a39d5e64 --- /dev/null +++ b/MastodonIntent/fi.lproj/Intents.stringsdict @@ -0,0 +1,54 @@ + + + + + There are ${count} options matching ‘${content}’. - 2 + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${content}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + 0 options + one + 1 option + two + 2 options + few + %ld options + many + %ld options + other + %ld options + + + There are ${count} options matching ‘${visibility}’. + + NSStringLocalizedFormatKey + There are %#@count_option@ matching ‘${visibility}’. + count_option + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + %ld + zero + 0 options + one + 1 option + two + 2 options + few + %ld options + many + %ld options + other + %ld options + + + + diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings new file mode 100644 index 000000000..c4433845f --- /dev/null +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings @@ -0,0 +1,436 @@ +"Common.Alerts.BlockDomain.BlockEntireDomain" = "Estä verkkotunnus"; +"Common.Alerts.BlockDomain.Title" = "Are you really, really sure you want to block the entire %@? In most cases a few targeted blocks or mutes are sufficient and preferable. You will not see content from that domain and any of your followers from that domain will be removed."; +"Common.Alerts.CleanCache.Message" = "%@ välimuisti tyhjennetty onnistuneesti."; +"Common.Alerts.CleanCache.Title" = "Puhdista välimuisti"; +"Common.Alerts.Common.PleaseTryAgain" = "Yritä uudelleen."; +"Common.Alerts.Common.PleaseTryAgainLater" = "Yritä uudelleen myöhemmin."; +"Common.Alerts.DeletePost.Message" = "Are you sure you want to delete this post?"; +"Common.Alerts.DeletePost.Title" = "Haluatko varmasti poistaa tämän julkaisun?"; +"Common.Alerts.DiscardPostContent.Message" = "Confirm to discard composed post content."; +"Common.Alerts.DiscardPostContent.Title" = "Hylkää luonnos"; +"Common.Alerts.EditProfileFailure.Message" = "Profiilia ei voida muoka. Yritä uudelleen."; +"Common.Alerts.EditProfileFailure.Title" = "Virhe profiilin muokkauksessa"; +"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "Ei voi liittä yhtä videota enempää."; +"Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "Cannot attach a video to a post that already contains images."; +"Common.Alerts.PublishPostFailure.Message" = "Julkaisun julkaiseminen epäonnistui. +Tarkista internet-yhteytesi."; +"Common.Alerts.PublishPostFailure.Title" = "Julkaiseminen epäonnistui"; +"Common.Alerts.SavePhotoFailure.Message" = "Please enable the photo library access permission to save the photo."; +"Common.Alerts.SavePhotoFailure.Title" = "Kuvan tallentaminen epäonnistui"; +"Common.Alerts.ServerError.Title" = "Palvelinvirhe"; +"Common.Alerts.SignOut.Confirm" = "Kirjaudu ulos"; +"Common.Alerts.SignOut.Message" = "Haluatko varmasti kirjautua ulos?"; +"Common.Alerts.SignOut.Title" = "Kirjaudu ulos"; +"Common.Alerts.SignUpFailure.Title" = "Rekisteröinti epäonnistui"; +"Common.Alerts.VoteFailure.PollEnded" = "Kysely on päättynyt"; +"Common.Alerts.VoteFailure.Title" = "Vote Failure"; +"Common.Controls.Actions.Add" = "Lisää"; +"Common.Controls.Actions.Back" = "Takaisin"; +"Common.Controls.Actions.BlockDomain" = "Estä %@"; +"Common.Controls.Actions.Cancel" = "Kumoa"; +"Common.Controls.Actions.Compose" = "Koosta"; +"Common.Controls.Actions.Confirm" = "Vahvista"; +"Common.Controls.Actions.Continue" = "Jatka"; +"Common.Controls.Actions.CopyPhoto" = "Kopioi kuva"; +"Common.Controls.Actions.Delete" = "Poista"; +"Common.Controls.Actions.Discard" = "Hylkää"; +"Common.Controls.Actions.Done" = "Valmis"; +"Common.Controls.Actions.Edit" = "Muokkaa"; +"Common.Controls.Actions.FindPeople" = "Löydä tilejä seurattavaksi"; +"Common.Controls.Actions.ManuallySearch" = "Manually search instead"; +"Common.Controls.Actions.Next" = "Seuraava"; +"Common.Controls.Actions.Ok" = "OK"; +"Common.Controls.Actions.Open" = "Avaa"; +"Common.Controls.Actions.OpenInBrowser" = "Open in Browser"; +"Common.Controls.Actions.OpenInSafari" = "Avaa Safarissa"; +"Common.Controls.Actions.Preview" = "Esikatselu"; +"Common.Controls.Actions.Previous" = "Edellinen"; +"Common.Controls.Actions.Remove" = "Poista"; +"Common.Controls.Actions.Reply" = "Vastaa"; +"Common.Controls.Actions.ReportUser" = "Ilmianna %@"; +"Common.Controls.Actions.Save" = "Tallenna"; +"Common.Controls.Actions.SavePhoto" = "Tallenna kuva"; +"Common.Controls.Actions.SeeMore" = "Näytä lisää"; +"Common.Controls.Actions.Settings" = "Asetukset"; +"Common.Controls.Actions.Share" = "Jaa"; +"Common.Controls.Actions.SharePost" = "Jaa julkaisu"; +"Common.Controls.Actions.ShareUser" = "Jaa %@"; +"Common.Controls.Actions.SignIn" = "Kirjaudu sisään"; +"Common.Controls.Actions.SignUp" = "Rekisteröidy"; +"Common.Controls.Actions.Skip" = "Ohita"; +"Common.Controls.Actions.TakePhoto" = "Ota kuva"; +"Common.Controls.Actions.TryAgain" = "Yritä uudelleen"; +"Common.Controls.Actions.UnblockDomain" = "Poista esto %@"; +"Common.Controls.Friendship.Block" = "Estä"; +"Common.Controls.Friendship.BlockDomain" = "Estä %@"; +"Common.Controls.Friendship.BlockUser" = "Estä %@"; +"Common.Controls.Friendship.Blocked" = "Estetty"; +"Common.Controls.Friendship.EditInfo" = "Muokkaa profiilia"; +"Common.Controls.Friendship.Follow" = "Seuraa"; +"Common.Controls.Friendship.Following" = "Seurataan"; +"Common.Controls.Friendship.Mute" = "Mykistä"; +"Common.Controls.Friendship.MuteUser" = "Mykistä %@"; +"Common.Controls.Friendship.Muted" = "Mykistetty"; +"Common.Controls.Friendship.Pending" = "Pyydetty"; +"Common.Controls.Friendship.Request" = "Pyydä"; +"Common.Controls.Friendship.Unblock" = "Poista esto"; +"Common.Controls.Friendship.UnblockUser" = "Unblock %@"; +"Common.Controls.Friendship.Unmute" = "Poista mykistys"; +"Common.Controls.Friendship.UnmuteUser" = "Poista mykistys tililtä %@"; +"Common.Controls.Keyboard.Common.ComposeNewPost" = "Koosta uusi julkaisu"; +"Common.Controls.Keyboard.Common.OpenSettings" = "Avaa asetukset"; +"Common.Controls.Keyboard.Common.ShowFavorites" = "Näytä suosikit"; +"Common.Controls.Keyboard.Common.SwitchToTab" = "Vaihda %@"; +"Common.Controls.Keyboard.SegmentedControl.NextSection" = "Seuraava lohko"; +"Common.Controls.Keyboard.SegmentedControl.PreviousSection" = "Previous Section"; +"Common.Controls.Keyboard.Timeline.NextStatus" = "Seuraava julkaisu"; +"Common.Controls.Keyboard.Timeline.OpenAuthorProfile" = "Avaa tekijän profiili"; +"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "Avaa edelleen jakajan profiili"; +"Common.Controls.Keyboard.Timeline.OpenStatus" = "Avaa julkaisu"; +"Common.Controls.Keyboard.Timeline.PreviewImage" = "Preview Image"; +"Common.Controls.Keyboard.Timeline.PreviousStatus" = "Edellinen julkaisu"; +"Common.Controls.Keyboard.Timeline.ReplyStatus" = "Vastaa julkaisuun"; +"Common.Controls.Keyboard.Timeline.ToggleContentWarning" = "Vaihda sisältövaroitus"; +"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "Toggle Favorite on Post"; +"Common.Controls.Keyboard.Timeline.ToggleReblog" = "Toggle Reblog on Post"; +"Common.Controls.Status.Actions.Favorite" = "Favorite"; +"Common.Controls.Status.Actions.Hide" = "Hide"; +"Common.Controls.Status.Actions.Menu" = "Valikko"; +"Common.Controls.Status.Actions.Reblog" = "Jaa edelleen"; +"Common.Controls.Status.Actions.Reply" = "Vastaa"; +"Common.Controls.Status.Actions.ShowGif" = "Show GIF"; +"Common.Controls.Status.Actions.ShowImage" = "Show image"; +"Common.Controls.Status.Actions.ShowVideoPlayer" = "Show video player"; +"Common.Controls.Status.Actions.TapThenHoldToShowMenu" = "Tap then hold to show menu"; +"Common.Controls.Status.Actions.Unfavorite" = "Unfavorite"; +"Common.Controls.Status.Actions.Unreblog" = "Peru edelleen jako"; +"Common.Controls.Status.ContentWarning" = "Sisältövaroitus"; +"Common.Controls.Status.MediaContentWarning" = "Napauta mistä tahansa paljastaaksesi"; +"Common.Controls.Status.Poll.Closed" = "Suljettu"; +"Common.Controls.Status.Poll.Vote" = "Vote"; +"Common.Controls.Status.SensitiveContent" = "Sensitive Content"; +"Common.Controls.Status.ShowPost" = "Näytä julkaisu"; +"Common.Controls.Status.ShowUserProfile" = "Näytä tili"; +"Common.Controls.Status.Tag.Email" = "Sähköposti"; +"Common.Controls.Status.Tag.Emoji" = "Emoji"; +"Common.Controls.Status.Tag.Hashtag" = "Hashtagi"; +"Common.Controls.Status.Tag.Link" = "Linkki"; +"Common.Controls.Status.Tag.Mention" = "Mention"; +"Common.Controls.Status.Tag.Url" = "URL"; +"Common.Controls.Status.TapToReveal" = "Tap to reveal"; +"Common.Controls.Status.UserReblogged" = "%@ jakoi edelleen"; +"Common.Controls.Status.UserRepliedTo" = "Vastasi %@:lle"; +"Common.Controls.Status.Visibility.Direct" = "Only mentioned user can see this post."; +"Common.Controls.Status.Visibility.Private" = "Only their followers can see this post."; +"Common.Controls.Status.Visibility.PrivateFromMe" = "Only my followers can see this post."; +"Common.Controls.Status.Visibility.Unlisted" = "Everyone can see this post but not display in the public timeline."; +"Common.Controls.Tabs.Home" = "Koti"; +"Common.Controls.Tabs.Notification" = "Ilmoitus"; +"Common.Controls.Tabs.Profile" = "Profiili"; +"Common.Controls.Tabs.Search" = "Haku"; +"Common.Controls.Timeline.Filtered" = "Suodatettu"; +"Common.Controls.Timeline.Header.BlockedWarning" = "Et voi tarkastella tämän tilin profiilia +ennen kuin hän poistaa eston."; +"Common.Controls.Timeline.Header.BlockingWarning" = "Et voi tarkastella tämän tilin profiilia +ennen kuin poistat sen esto. +Profiilisi näyttää tältä hänelle."; +"Common.Controls.Timeline.Header.NoStatusFound" = "Julkaisua ei löytynyt"; +"Common.Controls.Timeline.Header.SuspendedWarning" = "Tämä tili on lakkautettu."; +"Common.Controls.Timeline.Header.UserBlockedWarning" = "Et voi tarkastella tilin %@ profiilia +ennen kuin hän poistaa eston."; +"Common.Controls.Timeline.Header.UserBlockingWarning" = "Et voi tarkastella tilin %@ profiilia +ennen kuin poistat sen esto. +Profiilisi näyttää tältä hänelle."; +"Common.Controls.Timeline.Header.UserSuspendedWarning" = "Tili %@ on lakkautettu."; +"Common.Controls.Timeline.Loader.LoadMissingPosts" = "Lataa puuttuvat julkaisut"; +"Common.Controls.Timeline.Loader.LoadingMissingPosts" = "Ladataan puuttuvia julkaisuja..."; +"Common.Controls.Timeline.Loader.ShowMoreReplies" = "Näytä lisää vastauksia"; +"Common.Controls.Timeline.Timestamp.Now" = "Nyt"; +"Scene.AccountList.AddAccount" = "Lisää tili"; +"Scene.AccountList.DismissAccountSwitcher" = "Sulje tilin vaihtaja"; +"Scene.AccountList.TabBarHint" = "Nykyinen valittu profiili: %@. Kaksoisnapauta ja pidä sitten painettuna näytääksesi tilin vaihtajan"; +"Scene.Compose.Accessibility.AppendAttachment" = "Lisää liite"; +"Scene.Compose.Accessibility.AppendPoll" = "Lisää kysely"; +"Scene.Compose.Accessibility.CustomEmojiPicker" = "Mukautettu emojivalitsin"; +"Scene.Compose.Accessibility.DisableContentWarning" = "Poista sisältövaroitus käytöstä"; +"Scene.Compose.Accessibility.EnableContentWarning" = "Ota sisältövaroitus käyttöön"; +"Scene.Compose.Accessibility.PostVisibilityMenu" = "Julkaisun näkyvyysvalikko"; +"Scene.Compose.Accessibility.RemovePoll" = "Poista kysely"; +"Scene.Compose.Attachment.AttachmentBroken" = "This %@ is broken and can’t be +uploaded to Mastodon."; +"Scene.Compose.Attachment.DescriptionPhoto" = "Kuvaile kuva näkövammaisille..."; +"Scene.Compose.Attachment.DescriptionVideo" = "Kuvaile video näkövammaisille..."; +"Scene.Compose.Attachment.Photo" = "kuva"; +"Scene.Compose.Attachment.Video" = "video"; +"Scene.Compose.AutoComplete.SpaceToAdd" = "Space to add"; +"Scene.Compose.ComposeAction" = "Julkaise"; +"Scene.Compose.ContentInputPlaceholder" = "Kirjoita tai liitä, siitä mitä ajattelet"; +"Scene.Compose.ContentWarning.Placeholder" = "Kirjoita tarkka varoitus tähän..."; +"Scene.Compose.Keyboard.AppendAttachmentEntry" = "Lisää liite - %@"; +"Scene.Compose.Keyboard.DiscardPost" = "Hylkää julkaisu"; +"Scene.Compose.Keyboard.PublishPost" = "Julkaise julkaisu"; +"Scene.Compose.Keyboard.SelectVisibilityEntry" = "Valitse näkyvyys - %@"; +"Scene.Compose.Keyboard.ToggleContentWarning" = "Vaihda sisältövaroitus"; +"Scene.Compose.Keyboard.TogglePoll" = "Vaihda kysely"; +"Scene.Compose.MediaSelection.Browse" = "Selaa"; +"Scene.Compose.MediaSelection.Camera" = "Ota kuva"; +"Scene.Compose.MediaSelection.PhotoLibrary" = "Kuvakirjasto"; +"Scene.Compose.Poll.DurationTime" = "Kesto: %@"; +"Scene.Compose.Poll.OneDay" = "1 päivä"; +"Scene.Compose.Poll.OneHour" = "1 tunti"; +"Scene.Compose.Poll.OptionNumber" = "Vaihtoehto %ld"; +"Scene.Compose.Poll.SevenDays" = "7 päivää"; +"Scene.Compose.Poll.SixHours" = "6 tuntia"; +"Scene.Compose.Poll.ThirtyMinutes" = "30 minuuttia"; +"Scene.Compose.Poll.ThreeDays" = "3 päivää"; +"Scene.Compose.ReplyingToUser" = "vastaamassa tilille %@"; +"Scene.Compose.Title.NewPost" = "Uusi julkaisu"; +"Scene.Compose.Title.NewReply" = "Uusi vastaus"; +"Scene.Compose.Visibility.Direct" = "Vain mainitsemani tilit"; +"Scene.Compose.Visibility.Private" = "Vain seuraajat"; +"Scene.Compose.Visibility.Public" = "Julkinen"; +"Scene.Compose.Visibility.Unlisted" = "Listaamaton"; +"Scene.ConfirmEmail.Button.OpenEmailApp" = "Avaa sähköpostisovellus"; +"Scene.ConfirmEmail.Button.Resend" = "Resend"; +"Scene.ConfirmEmail.DontReceiveEmail.Description" = "Tarkista, että sähköpostiosoitteesi on oikea, sekä roskapostikansiosi, jos et vielä ole."; +"Scene.ConfirmEmail.DontReceiveEmail.ResendEmail" = "Lähetä sähköposti uudelleen"; +"Scene.ConfirmEmail.DontReceiveEmail.Title" = "Tarkista sähköpostisi"; +"Scene.ConfirmEmail.OpenEmailApp.Description" = "Lähetimme sinulle juuri sähköpostin. Tarkista myös roskapostikansiosi, jos et vielä ole."; +"Scene.ConfirmEmail.OpenEmailApp.Mail" = "Sähköposti"; +"Scene.ConfirmEmail.OpenEmailApp.OpenEmailClient" = "Avaa sähköpostisovellus"; +"Scene.ConfirmEmail.OpenEmailApp.Title" = "Tarkasta postilaatikkosi."; +"Scene.ConfirmEmail.Subtitle" = "Lähetimme juuri sähköpostin osoitteeseen %@, napauta siinä olevaa linkkiä vahvistaaksesi tilisi."; +"Scene.ConfirmEmail.TapTheLinkWeEmailedToYouToVerifyYourAccount" = "Tap the link we emailed to you to verify your account"; +"Scene.ConfirmEmail.Title" = "Viimeinen asia."; +"Scene.Discovery.Intro" = "These are the posts gaining traction in your corner of Mastodon."; +"Scene.Discovery.Tabs.Community" = "Community"; +"Scene.Discovery.Tabs.ForYou" = "For You"; +"Scene.Discovery.Tabs.Hashtags" = "Hashtags"; +"Scene.Discovery.Tabs.News" = "News"; +"Scene.Discovery.Tabs.Posts" = "Posts"; +"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; +"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Favorite.Title" = "Omat suosikit"; +"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.Follower.Footer" = "Seuraajia muilta palvelimilta ei näytetä."; +"Scene.Follower.Title" = "follower"; +"Scene.Following.Footer" = "Seurauksia muilta palvelimilta ei näytetä."; +"Scene.Following.Title" = "following"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tap to scroll to top and tap again to previous location"; +"Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo Button"; +"Scene.HomeTimeline.NavigationBarState.NewPosts" = "Uusia julkaisuja"; +"Scene.HomeTimeline.NavigationBarState.Offline" = "Yhteydetön"; +"Scene.HomeTimeline.NavigationBarState.Published" = "Julkaistu!"; +"Scene.HomeTimeline.NavigationBarState.Publishing" = "Julkaistaan julkaisua..."; +"Scene.HomeTimeline.Title" = "Koti"; +"Scene.Notification.Keyobard.ShowEverything" = "Näytä kaikki"; +"Scene.Notification.Keyobard.ShowMentions" = "Näytä maininnat"; +"Scene.Notification.NotificationDescription.FavoritedYourPost" = "favorited your post"; +"Scene.Notification.NotificationDescription.FollowedYou" = "followed you"; +"Scene.Notification.NotificationDescription.MentionedYou" = "mentioned you"; +"Scene.Notification.NotificationDescription.PollHasEnded" = "poll has ended"; +"Scene.Notification.NotificationDescription.RebloggedYourPost" = "reblogged your post"; +"Scene.Notification.NotificationDescription.RequestToFollowYou" = "request to follow you"; +"Scene.Notification.Title.Everything" = "Kaikki"; +"Scene.Notification.Title.Mentions" = "Maininnat"; +"Scene.Preview.Keyboard.ClosePreview" = "Sulje esikatselu"; +"Scene.Preview.Keyboard.ShowNext" = "Näytä seuraava"; +"Scene.Preview.Keyboard.ShowPrevious" = "Näytä edellinen"; +"Scene.Profile.Accessibility.DoubleTapToOpenTheList" = "Double tap to open the list"; +"Scene.Profile.Accessibility.EditAvatarImage" = "Edit avatar image"; +"Scene.Profile.Accessibility.ShowAvatarImage" = "Show avatar image"; +"Scene.Profile.Accessibility.ShowBannerImage" = "Show banner image"; +"Scene.Profile.Dashboard.Followers" = "seuraajat"; +"Scene.Profile.Dashboard.Following" = "seurataan"; +"Scene.Profile.Dashboard.Posts" = "julkaisut"; +"Scene.Profile.Fields.AddRow" = "Lisää rivi"; +"Scene.Profile.Fields.Placeholder.Content" = "Sisältö"; +"Scene.Profile.Fields.Placeholder.Label" = "Nimi"; +"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Message" = "Confirm to block %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmBlockUser.Title" = "Block Account"; +"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Message" = "Confirm to mute %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmMuteUser.Title" = "Mute Account"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Message" = "Confirm to unblock %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnblockUser.Title" = "Unblock Account"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Message" = "Vahvista, että haluat poistaa mykistyksen tililtä %@"; +"Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Title" = "Poista tilin mykistys"; +"Scene.Profile.SegmentedControl.About" = "About"; +"Scene.Profile.SegmentedControl.Media" = "Media"; +"Scene.Profile.SegmentedControl.Posts" = "Julkaisut"; +"Scene.Profile.SegmentedControl.PostsAndReplies" = "Posts and Replies"; +"Scene.Profile.SegmentedControl.Replies" = "Vastaukset"; +"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.Register.Error.Item.Agreement" = "Hyväksy"; +"Scene.Register.Error.Item.Email" = "Sähköposti"; +"Scene.Register.Error.Item.Locale" = "Locale"; +"Scene.Register.Error.Item.Password" = "Salasana"; +"Scene.Register.Error.Item.Reason" = "Syy"; +"Scene.Register.Error.Item.Username" = "Käyttäjänimi"; +"Scene.Register.Error.Reason.Accepted" = "%@ täytyy hyväksyä"; +"Scene.Register.Error.Reason.Blank" = "%@ vaaditaan"; +"Scene.Register.Error.Reason.Blocked" = "%@ sisältää estetyn sähköpostipalveluntarjoajan"; +"Scene.Register.Error.Reason.Inclusion" = "%@ ei ole tuettu arvo"; +"Scene.Register.Error.Reason.Invalid" = "%@ on virheellinen"; +"Scene.Register.Error.Reason.Reserved" = "%@ is a reserved keyword"; +"Scene.Register.Error.Reason.Taken" = "%@ on jo käytössä"; +"Scene.Register.Error.Reason.TooLong" = "%@ on liian pitkä"; +"Scene.Register.Error.Reason.TooShort" = "%@ on liian lyhyt"; +"Scene.Register.Error.Reason.Unreachable" = "%@ ei näytä olevan olemassa"; +"Scene.Register.Error.Special.EmailInvalid" = "Tämä ei ole kelvollinen sähköpostiosoite"; +"Scene.Register.Error.Special.PasswordTooShort" = "Salasana on liian lyhyt (täytyy olla vähintään 8 merkkiä)"; +"Scene.Register.Error.Special.UsernameInvalid" = "Käyttäjänimi voi sisältää ainoastaan aakkosnumerrisia merkkejä ja alaviivoja"; +"Scene.Register.Error.Special.UsernameTooLong" = "Käyttäjänimi on liian pitkä (ei voi olla pidempi kuin 30 merkkiä)"; +"Scene.Register.Input.Avatar.Delete" = "Poista"; +"Scene.Register.Input.DisplayName.Placeholder" = "näyttönimi"; +"Scene.Register.Input.Email.Placeholder" = "sähköposti"; +"Scene.Register.Input.Invite.RegistrationUserInviteRequest" = "Miksi haluat liittyä?"; +"Scene.Register.Input.Password.Accessibility.Checked" = "checked"; +"Scene.Register.Input.Password.Accessibility.Unchecked" = "unchecked"; +"Scene.Register.Input.Password.CharacterLimit" = "8 characters"; +"Scene.Register.Input.Password.Hint" = "Salasanassasi on oltava vähintään kahdeksan merkkiä"; +"Scene.Register.Input.Password.Placeholder" = "salasana"; +"Scene.Register.Input.Password.Require" = "Your password needs at least:"; +"Scene.Register.Input.Username.DuplicatePrompt" = "Tämä käyttäjänimi on varattu."; +"Scene.Register.Input.Username.Placeholder" = "käyttäjänimi"; +"Scene.Register.LetsGetYouSetUpOnDomain" = "Let’s get you set up on %@"; +"Scene.Register.Title" = "Kerro meille sinusta."; +"Scene.Report.Content1" = "Onko julkaisuja, joita haluaisit lisätä ilmiantoon?"; +"Scene.Report.Content2" = "Onko valvojien syytä tietää tästä ilmiannosta?"; +"Scene.Report.ReportSentTitle" = "Thanks for reporting, we’ll look into this."; +"Scene.Report.Reported" = "REPORTED"; +"Scene.Report.Send" = "Lähetä ilmianto"; +"Scene.Report.SkipToSend" = "Lähetä ilman kommentteja"; +"Scene.Report.Step1" = "Vaihe 1/2"; +"Scene.Report.Step2" = "Vaihe 2/2"; +"Scene.Report.StepFinal.BlockUser" = "Block %@"; +"Scene.Report.StepFinal.DontWantToSeeThis" = "Don’t want to see this?"; +"Scene.Report.StepFinal.MuteUser" = "Mute %@"; +"Scene.Report.StepFinal.TheyWillNoLongerBeAbleToFollowOrSeeYourPostsButTheyCanSeeIfTheyveBeenBlocked" = "They will no longer be able to follow or see your posts, but they can see if they’ve been blocked."; +"Scene.Report.StepFinal.Unfollow" = "Unfollow"; +"Scene.Report.StepFinal.UnfollowUser" = "Unfollow %@"; +"Scene.Report.StepFinal.Unfollowed" = "Unfollowed"; +"Scene.Report.StepFinal.WhenYouSeeSomethingYouDontLikeOnMastodonYouCanRemoveThePersonFromYourExperience." = "When you see something you don’t like on Mastodon, you can remove the person from your experience."; +"Scene.Report.StepFinal.WhileWeReviewThisYouCanTakeActionAgainstUser" = "While we review this, you can take action against %@"; +"Scene.Report.StepFinal.YouWontSeeTheirPostsOrReblogsInYourHomeFeedTheyWontKnowTheyVeBeenMuted" = "You won’t see their posts or reblogs in your home feed. They won’t know they’ve been muted."; +"Scene.Report.StepFour.IsThereAnythingElseWeShouldKnow" = "Is there anything else we should know?"; +"Scene.Report.StepFour.Step4Of4" = "Step 4 of 4"; +"Scene.Report.StepOne.IDontLikeIt" = "I don’t like it"; +"Scene.Report.StepOne.ItIsNotSomethingYouWantToSee" = "It is not something you want to see"; +"Scene.Report.StepOne.ItViolatesServerRules" = "It violates server rules"; +"Scene.Report.StepOne.ItsSomethingElse" = "It’s something else"; +"Scene.Report.StepOne.ItsSpam" = "It’s spam"; +"Scene.Report.StepOne.MaliciousLinksFakeEngagementOrRepetetiveReplies" = "Malicious links, fake engagement, or repetetive replies"; +"Scene.Report.StepOne.SelectTheBestMatch" = "Select the best match"; +"Scene.Report.StepOne.Step1Of4" = "Step 1 of 4"; +"Scene.Report.StepOne.TheIssueDoesNotFitIntoOtherCategories" = "The issue does not fit into other categories"; +"Scene.Report.StepOne.WhatsWrongWithThisAccount" = "What's wrong with this account?"; +"Scene.Report.StepOne.WhatsWrongWithThisPost" = "What's wrong with this post?"; +"Scene.Report.StepOne.WhatsWrongWithThisUsername" = "What's wrong with %@?"; +"Scene.Report.StepOne.YouAreAwareThatItBreaksSpecificRules" = "You are aware that it breaks specific rules"; +"Scene.Report.StepThree.AreThereAnyPostsThatBackUpThisReport" = "Are there any posts that back up this report?"; +"Scene.Report.StepThree.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepThree.Step3Of4" = "Step 3 of 4"; +"Scene.Report.StepTwo.IJustDon’tLikeIt" = "I just don’t like it"; +"Scene.Report.StepTwo.SelectAllThatApply" = "Select all that apply"; +"Scene.Report.StepTwo.Step2Of4" = "Step 2 of 4"; +"Scene.Report.StepTwo.WhichRulesAreBeingViolated" = "Which rules are being violated?"; +"Scene.Report.TextPlaceholder" = "Kirjoita tai liitä lisäkommentteja"; +"Scene.Report.Title" = "Ilmianna %@"; +"Scene.Report.TitleReport" = "Report"; +"Scene.Search.Recommend.Accounts.Description" = "Haluta ehkä seurata näitä tilejä"; +"Scene.Search.Recommend.Accounts.Follow" = "Seuraa"; +"Scene.Search.Recommend.Accounts.Title" = "Saatat pitää näistä tileistä"; +"Scene.Search.Recommend.ButtonText" = "Katso kaikki"; +"Scene.Search.Recommend.HashTag.Description" = "Hashtagit, jotka saavat melkoisesti huomiota"; +"Scene.Search.Recommend.HashTag.PeopleTalking" = "%@ ihmistä puhuu"; +"Scene.Search.Recommend.HashTag.Title" = "Trendaavat Mastodonissa"; +"Scene.Search.SearchBar.Cancel" = "Kumoa"; +"Scene.Search.SearchBar.Placeholder" = "Haku"; +"Scene.Search.Searching.Clear" = "Tyhjennä"; +"Scene.Search.Searching.EmptyState.NoResults" = "Ei hakutuloksia"; +"Scene.Search.Searching.RecentSearch" = "Viimeaikaiset"; +"Scene.Search.Searching.Segment.All" = "Kaikki"; +"Scene.Search.Searching.Segment.Hashtags" = "Hashtagit"; +"Scene.Search.Searching.Segment.People" = "Tilit"; +"Scene.Search.Searching.Segment.Posts" = "Julkaisut"; +"Scene.Search.Title" = "Haku"; +"Scene.ServerPicker.Button.Category.Academia" = "akateeminen"; +"Scene.ServerPicker.Button.Category.Activism" = "aktivismi"; +"Scene.ServerPicker.Button.Category.All" = "Kaikki"; +"Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "Kategoria: Kaikki"; +"Scene.ServerPicker.Button.Category.Art" = "taide"; +"Scene.ServerPicker.Button.Category.Food" = "ruoka"; +"Scene.ServerPicker.Button.Category.Furry" = "turri"; +"Scene.ServerPicker.Button.Category.Games" = "pelit"; +"Scene.ServerPicker.Button.Category.General" = "yleinen"; +"Scene.ServerPicker.Button.Category.Journalism" = "journalismi"; +"Scene.ServerPicker.Button.Category.Lgbt" = "hlbt"; +"Scene.ServerPicker.Button.Category.Music" = "musiikki"; +"Scene.ServerPicker.Button.Category.Regional" = "alueellinen"; +"Scene.ServerPicker.Button.Category.Tech" = "tekniikka"; +"Scene.ServerPicker.Button.SeeLess" = "Näytä vähemmän"; +"Scene.ServerPicker.Button.SeeMore" = "Näytä lisää"; +"Scene.ServerPicker.EmptyState.BadNetwork" = "Jokin meni pieleen dataa ladatessa. Tarkista internet-yhteytesi."; +"Scene.ServerPicker.EmptyState.FindingServers" = "Etsistään saatavilla olevia palvelimia..."; +"Scene.ServerPicker.EmptyState.NoResults" = "Ei hakutuloksia"; +"Scene.ServerPicker.Input.Placeholder" = "Etsi palvelin tai liity omaan..."; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Label.Category" = "KATEGORIA"; +"Scene.ServerPicker.Label.Language" = "KIELI"; +"Scene.ServerPicker.Label.Users" = "TILIÄ"; +"Scene.ServerPicker.Subtitle" = "Pick a server based on your interests, region, or a general purpose one."; +"Scene.ServerPicker.SubtitleExtend" = "Pick a server based on your interests, region, or a general purpose one. Each server is operated by an entirely independent organization or individual."; +"Scene.ServerPicker.Title" = "Valitse palvelin, +mikä tahansa palvelin."; +"Scene.ServerRules.Button.Confirm" = "Hyväksyn"; +"Scene.ServerRules.PrivacyPolicy" = "tietosuojakäytäntö"; +"Scene.ServerRules.Prompt" = "Jatkamalla, hyväksyt palvelun %@ palveluehdot ja tietosuojakäytönnön."; +"Scene.ServerRules.Subtitle" = "Nämä säännöt ovat %@ -palvelun asettamia."; +"Scene.ServerRules.TermsOfService" = "käyttöehdot"; +"Scene.ServerRules.Title" = "Joitakin perussääntöjä."; +"Scene.Settings.Footer.MastodonDescription" = "Mastodon on avoimen lähdekoodin ohjelmisto. Voit raportoida ongelmasta GitHubissa osoitteessa %@ (%@)"; +"Scene.Settings.Keyboard.CloseSettingsWindow" = "Sulje asetukset"; +"Scene.Settings.Section.Appearance.Automatic" = "Seuraa järjestelmää"; +"Scene.Settings.Section.Appearance.Dark" = "Tumma"; +"Scene.Settings.Section.Appearance.Light" = "Vaalea"; +"Scene.Settings.Section.Appearance.Title" = "Ulkoasu"; +"Scene.Settings.Section.BoringZone.AccountSettings" = "Tiliasetukset"; +"Scene.Settings.Section.BoringZone.Privacy" = "Tietosuojakäytäntö"; +"Scene.Settings.Section.BoringZone.Terms" = "Palveluehdot"; +"Scene.Settings.Section.BoringZone.Title" = "Tylsä alue"; +"Scene.Settings.Section.LookAndFeel.Light" = "Light"; +"Scene.Settings.Section.LookAndFeel.ReallyDark" = "Really Dark"; +"Scene.Settings.Section.LookAndFeel.SortaDark" = "Sorta Dark"; +"Scene.Settings.Section.LookAndFeel.Title" = "Look and Feel"; +"Scene.Settings.Section.LookAndFeel.UseSystem" = "Use System"; +"Scene.Settings.Section.Notifications.Boosts" = "Omien julkaisujen edelleen jaot"; +"Scene.Settings.Section.Notifications.Favorites" = "Favorites my post"; +"Scene.Settings.Section.Notifications.Follows" = "Seuraa minua"; +"Scene.Settings.Section.Notifications.Mentions" = "Mainitsee minut"; +"Scene.Settings.Section.Notifications.Title" = "Ilmoitukset"; +"Scene.Settings.Section.Notifications.Trigger.Anyone" = "kuka tahansa"; +"Scene.Settings.Section.Notifications.Trigger.Follow" = "kuka tahansa, jota seuraan"; +"Scene.Settings.Section.Notifications.Trigger.Follower" = "seuraaja"; +"Scene.Settings.Section.Notifications.Trigger.Noone" = "ei kukaan"; +"Scene.Settings.Section.Notifications.Trigger.Title" = "Ilmoita minulle, kun"; +"Scene.Settings.Section.Preference.DisableAvatarAnimation" = "Poista käytöstä animoidut avatarit"; +"Scene.Settings.Section.Preference.DisableEmojiAnimation" = "Poista käytöstä animoidut emojit"; +"Scene.Settings.Section.Preference.OpenLinksInMastodon" = "Open links in Mastodon"; +"Scene.Settings.Section.Preference.Title" = "Lisäasetukset"; +"Scene.Settings.Section.Preference.TrueBlackDarkMode" = "Todellinen mustan tumma tila"; +"Scene.Settings.Section.Preference.UsingDefaultBrowser" = "Käytä oletusselainta linkkien avaamiseen"; +"Scene.Settings.Section.SpicyZone.Clear" = "Tyhjennä median välimuisti"; +"Scene.Settings.Section.SpicyZone.Signout" = "Kirjaudu ulos"; +"Scene.Settings.Section.SpicyZone.Title" = "Varovainen alue"; +"Scene.Settings.Title" = "Asetukset"; +"Scene.SuggestionAccount.FollowExplain" = "Kun seuraat jotakuta, näet hänen julkaisunsa kotisyötteessäsi."; +"Scene.SuggestionAccount.Title" = "Löydä tilejä seurattavaksi"; +"Scene.Thread.BackTitle" = "Julkaisu"; +"Scene.Thread.Title" = "Julkaisu tililtä %@"; +"Scene.Welcome.GetStarted" = "Get Started"; +"Scene.Welcome.LogIn" = "Log In"; +"Scene.Welcome.Slogan" = "Sosiaalinen verkostoituminen +takaisin käsissäsi."; +"Scene.Wizard.AccessibilityHint" = "Hylkää tämä ohjattu toiminto kaksoisnapauttamalla"; +"Scene.Wizard.MultipleAccountSwitchIntroDescription" = "Vaihda useiden tilien välillä pitämällä profiilipainiketta painettuna."; +"Scene.Wizard.NewInMastodon" = "Uutta Mastodonissa"; \ No newline at end of file diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.stringsdict new file mode 100644 index 000000000..8048edf2d --- /dev/null +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.stringsdict @@ -0,0 +1,449 @@ + + + + + a11y.plural.count.unread.notification + + NSStringLocalizedFormatKey + %#@notification_count_unread_notification@ + notification_count_unread_notification + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 lukematon ilmoitus + other + %ld lukematonta ilmoitusta + + + a11y.plural.count.input_limit_exceeds + + NSStringLocalizedFormatKey + Syöterajoitus ylittyy %#@character_count@ + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 merkki + other + %ld merkkiä + + + a11y.plural.count.input_limit_remains + + NSStringLocalizedFormatKey + Syöterajoitus ylittyy %#@character_count@ päästä + character_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 merkki + other + %ld merkkiä + + + plural.count.followed_by_and_mutual + + NSStringLocalizedFormatKey + %#@names@%#@count_mutual@ + names + + one + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + + + count_mutual + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + Followed by %1$@, and another mutual + other + Followed by %1$@, and %ld mutuals + + + plural.count.metric_formatted.post + + NSStringLocalizedFormatKey + %@ %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + julkaisu + other + julkaisut + + + plural.count.media + + NSStringLocalizedFormatKey + %#@media_count@ + media_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 media + other + %ld media + + + plural.count.post + + NSStringLocalizedFormatKey + %#@post_count@ + post_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 julkaisu + other + %ld julkaisua + + + plural.count.favorite + + NSStringLocalizedFormatKey + %#@favorite_count@ + favorite_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 suosikki + other + %ld suosikkia + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 edelleen jako + other + %ld edelleen jakoa + + + plural.count.reply + + NSStringLocalizedFormatKey + %#@reply_count@ + reply_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 reply + other + %ld replies + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ääni + other + %ld ääntä + + + plural.count.voter + + NSStringLocalizedFormatKey + %#@voter_count@ + voter_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vastaaja + other + %ld vastaajaa + + + plural.people_talking + + NSStringLocalizedFormatKey + %#@count_people_talking@ + count_people_talking + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 ihminen puhuu + other + %ld ihmistä puhuu + + + plural.count.following + + NSStringLocalizedFormatKey + %#@count_following@ + count_following + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seurataan + other + %ld seurataan + + + plural.count.follower + + NSStringLocalizedFormatKey + %#@count_follower@ + count_follower + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 seuraaja + other + %ld seuraajaa + + + date.year.left + + NSStringLocalizedFormatKey + %#@count_year_left@ + count_year_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 vuosi jäljellä + other + %ld vuotta jäljellä + + + date.month.left + + NSStringLocalizedFormatKey + %#@count_month_left@ + count_month_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 kuukausi jäljellä + other + %ld kuukautta jäljellä + + + date.day.left + + NSStringLocalizedFormatKey + %#@count_day_left@ + count_day_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 päivä jäljellä + other + %ld päivää jäljellä + + + date.hour.left + + NSStringLocalizedFormatKey + %#@count_hour_left@ + count_hour_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 tunti jäljellä + other + %ld tuntia jäljellä + + + date.minute.left + + NSStringLocalizedFormatKey + %#@count_minute_left@ + count_minute_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 minuutti jäljellä + other + %ld minuuttia jäljellä + + + date.second.left + + NSStringLocalizedFormatKey + %#@count_second_left@ + count_second_left + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1 sekuntti + other + %ld sekunttia jäljellä + + + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1v sitten + other + %ldv sitten + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1kk sitten + other + %ldkk sitten + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1pv sitten + other + %ldpv sitten + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1t sitten + other + %ldt sitten + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1min sitten + other + %ldmin sitten + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1s sitten + other + %lds sitten + + + + From 08aa0d4655636ca54017c22ba2face5e06839617 Mon Sep 17 00:00:00 2001 From: CMK Date: Thu, 19 May 2022 11:22:01 +0800 Subject: [PATCH 521/571] chore: update version to 1.4.2 (132) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++---------- .../xcschemes/xcschememanagement.plist | 6 +-- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 9 files changed, 34 insertions(+), 34 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index afd0cd01d..c9a926ac5 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 1171a73a7..5077a935e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4839,7 +4839,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4869,7 +4869,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4977,11 +4977,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 131; + DYLIB_CURRENT_VERSION = 132; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5008,11 +5008,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 131; + DYLIB_CURRENT_VERSION = 132; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5103,7 +5103,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5171,11 +5171,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 131; + DYLIB_CURRENT_VERSION = 132; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5200,7 +5200,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5223,7 +5223,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5247,7 +5247,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5271,7 +5271,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5295,7 +5295,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5319,7 +5319,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5343,7 +5343,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5430,7 +5430,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5497,11 +5497,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 131; + DYLIB_CURRENT_VERSION = 132; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5525,7 +5525,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5548,7 +5548,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5572,7 +5572,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5596,7 +5596,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5619,7 +5619,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 131; + CURRENT_PROJECT_VERSION = 132; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index e32c7d79c..3e2139aa3 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -114,7 +114,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 21 + 28 MastodonIntents.xcscheme_^#shared#^_ @@ -129,12 +129,12 @@ NotificationService.xcscheme_^#shared#^_ orderHint - 22 + 29 ShareActionExtension.xcscheme_^#shared#^_ orderHint - 20 + 27 SuppressBuildableAutocreation diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index f425b125f..85015ddf4 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 131 + 132 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 3da854b33..56d632944 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index afd0cd01d..c9a926ac5 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index afd0cd01d..c9a926ac5 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index 119cb1139..b01a76d93 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 119bb9404..1fde80fa2 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 131 + 132 NSExtension NSExtensionAttributes From c613f2358c2b4b6dac772708cdc1b65f29686979 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 19 May 2022 11:55:29 +0200 Subject: [PATCH 522/571] New translations Localizable.stringsdict (Arabic) --- .../input/ar.lproj/Localizable.stringsdict | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict index 52145a165..cbbf7853f 100644 --- a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict @@ -104,17 +104,17 @@ NSStringFormatValueTypeKey ld zero - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ لَا أحَد one - Followed by %1$@, and another mutual + مُتابَعٌ مِن قِبَلِ %1$@، وشَخصٌ آخَرُ مُتبادَل two - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، وشَخصانِ آخَرَانِ مُتبادَلَان few - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخرين مُتبادَلين many - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخرين مُتبادَلين other - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرَ مُتبادَل plural.count.metric_formatted.post From 812bb11a68a360245a133cdb0a86b1ab53fb8ddf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 19 May 2022 12:51:42 +0200 Subject: [PATCH 523/571] New translations Localizable.stringsdict (Arabic) --- .../StringsConvertor/input/ar.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict index cbbf7853f..197897e8e 100644 --- a/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar.lproj/Localizable.stringsdict @@ -110,9 +110,9 @@ two مُتابَعٌ مِن قِبَلِ %1$@، وشَخصانِ آخَرَانِ مُتبادَلَان few - مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخرين مُتبادَلين + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرينَ مُتبادَلين many - مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخرين مُتبادَلين + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرينَ مُتبادَلين other مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرَ مُتبادَل From ec496eb51524e168d4f51d5c0ef2215fd14bc02c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Fri, 20 May 2022 00:23:03 +0200 Subject: [PATCH 524/571] New translations app.json (Kurmanji (Kurdish)) --- .../StringsConvertor/input/kmr.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json index 5e9c7e9c5..250877260 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/app.json +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "şopîner", "footer": "Şopîner ji rajekerên din nayê dîtin." }, "following": { - "title": "following", + "title": "dişopîne", "footer": "Şopandin ji rajekerên din nayê dîtin." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Şopînerên ku tu wan nas dikî", + "followed_by_names": "Ji aliyêm%s hatiye şopandin" }, "favorited_by": { - "title": "Favorited By" + "title": "Hatiye hezkirin ji aliyê" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Ji nû ve hatiye nivîsandin ji aliyê" }, "search": { "title": "Bigere", From 2b74f114336ec070d2af2efdcd691b5cf838b50a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:14 +0200 Subject: [PATCH 525/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json index 14e926c2e..ecac00836 100644 --- a/Localization/StringsConvertor/input/ca.lproj/app.json +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca servidors", - "search_servers_or_enter_url": "Cerca comunitats o introdueix l'URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Cercant els servidors disponibles...", From 0b62ffdcd5eb44a05b2ede4206e4405de9cb8dfc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:16 +0200 Subject: [PATCH 526/571] New translations app.json (Swedish) --- Localization/StringsConvertor/input/sv.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/sv.lproj/app.json b/Localization/StringsConvertor/input/sv.lproj/app.json index 4153222db..93bbda08a 100644 --- a/Localization/StringsConvertor/input/sv.lproj/app.json +++ b/Localization/StringsConvertor/input/sv.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Sök gemenskaper", - "search_servers_or_enter_url": "Sök gemenskaper eller ange URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Söker tillgängliga servrar...", From 9ebf449b9a5889ce575bacd7c085ef1380847a5d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:16 +0200 Subject: [PATCH 527/571] New translations app.json (Sorani (Kurdish)) --- Localization/StringsConvertor/input/ckb.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ckb.lproj/app.json b/Localization/StringsConvertor/input/ckb.lproj/app.json index 798768ed5..7b6596235 100644 --- a/Localization/StringsConvertor/input/ckb.lproj/app.json +++ b/Localization/StringsConvertor/input/ckb.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "بگەڕێ", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "ڕاژەکار دەدۆزرێتەوە...", From 020458e7e33c41bcb818be0e1a4d34a73897ab71 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:18 +0200 Subject: [PATCH 528/571] New translations app.json (Turkish) --- Localization/StringsConvertor/input/tr.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/tr.lproj/app.json b/Localization/StringsConvertor/input/tr.lproj/app.json index cd770f0fb..d377b5da1 100644 --- a/Localization/StringsConvertor/input/tr.lproj/app.json +++ b/Localization/StringsConvertor/input/tr.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Toplulukları ara", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Mevcut sunucular aranıyor...", From 4a443b4dfd9ec2588d701de589a18f98a260bdba Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:18 +0200 Subject: [PATCH 529/571] New translations app.json (Galician) --- Localization/StringsConvertor/input/gl.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gl.lproj/app.json b/Localization/StringsConvertor/input/gl.lproj/app.json index f02a1d8e6..af5ee5d50 100644 --- a/Localization/StringsConvertor/input/gl.lproj/app.json +++ b/Localization/StringsConvertor/input/gl.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Buscar comunidades", - "search_servers_or_enter_url": "Busca comunidades ou escribe URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Buscando servidores dispoñibles...", From 49fceed5e41fff95bfbfcdda5f07a620b18b885d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:20 +0200 Subject: [PATCH 530/571] New translations app.json (Kabyle) --- Localization/StringsConvertor/input/kab.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kab.lproj/app.json b/Localization/StringsConvertor/input/kab.lproj/app.json index 758dabe06..8987669c0 100644 --- a/Localization/StringsConvertor/input/kab.lproj/app.json +++ b/Localization/StringsConvertor/input/kab.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Nadi timɣiwnin", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Tifin n yiqeddacen yellan...", From 6efe9129f64e71bde7ef98044c7b17acaceec284 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:20 +0200 Subject: [PATCH 531/571] New translations app.json (Kurmanji (Kurdish)) --- Localization/StringsConvertor/input/kmr.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/kmr.lproj/app.json b/Localization/StringsConvertor/input/kmr.lproj/app.json index 250877260..65f891f93 100644 --- a/Localization/StringsConvertor/input/kmr.lproj/app.json +++ b/Localization/StringsConvertor/input/kmr.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Li rajekaran bigere", - "search_servers_or_enter_url": "Li civakan bigere an jî girêdanê binivîse" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Peydakirina rajekarên berdest...", From a40a19dcd7f221266e9cde689d27d10f49b75512 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:21 +0200 Subject: [PATCH 532/571] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/gd.lproj/app.json b/Localization/StringsConvertor/input/gd.lproj/app.json index 7a9b90655..c3364c6e9 100644 --- a/Localization/StringsConvertor/input/gd.lproj/app.json +++ b/Localization/StringsConvertor/input/gd.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "A’ lorg nam frithealaichean ri am faighinn…", From f5aa2204588ff7e05661632eca33daa8a63c9a34 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:22 +0200 Subject: [PATCH 533/571] New translations app.json (Welsh) --- Localization/StringsConvertor/input/cy.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/cy.lproj/app.json b/Localization/StringsConvertor/input/cy.lproj/app.json index 860871ed7..99eb2784a 100644 --- a/Localization/StringsConvertor/input/cy.lproj/app.json +++ b/Localization/StringsConvertor/input/cy.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From 761a41910cf4c5330d2bbe6f06b8c54433847b4d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:23 +0200 Subject: [PATCH 534/571] New translations app.json (English, United States) --- Localization/StringsConvertor/input/en-US.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/en-US.lproj/app.json b/Localization/StringsConvertor/input/en-US.lproj/app.json index 7c50eba7f..2a8634a67 100644 --- a/Localization/StringsConvertor/input/en-US.lproj/app.json +++ b/Localization/StringsConvertor/input/en-US.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From de536d9ba08f53cc16e45c2d20cbd80cea1c6045 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:25 +0200 Subject: [PATCH 535/571] New translations app.json (Hindi) --- Localization/StringsConvertor/input/hi.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/hi.lproj/app.json b/Localization/StringsConvertor/input/hi.lproj/app.json index 0f90d6f70..04b8fa021 100644 --- a/Localization/StringsConvertor/input/hi.lproj/app.json +++ b/Localization/StringsConvertor/input/hi.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From 3886e20b9eec03b001f726f98d664c21fa6ceded Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:26 +0200 Subject: [PATCH 536/571] New translations app.json (Spanish, Argentina) --- Localization/StringsConvertor/input/es-AR.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index efc7f4f2b..dc2bf67e2 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Buscar servidores", - "search_servers_or_enter_url": "Buscar comunidades o introducir dirección web" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Buscando servidores disponibles…", From 724cfa8d4d5c852841e70b7fe0aa4bca4a21178c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:27 +0200 Subject: [PATCH 537/571] New translations app.json (Indonesian) --- Localization/StringsConvertor/input/id.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/id.lproj/app.json b/Localization/StringsConvertor/input/id.lproj/app.json index 9240dcad4..c3f987d98 100644 --- a/Localization/StringsConvertor/input/id.lproj/app.json +++ b/Localization/StringsConvertor/input/id.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Mencari server yang tersedia...", From b51f1c2aba0a6ebbd6d6dd99772c00c1db265433 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:28 +0200 Subject: [PATCH 538/571] New translations app.json (Portuguese, Brazilian) --- Localization/StringsConvertor/input/pt-BR.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/pt-BR.lproj/app.json b/Localization/StringsConvertor/input/pt-BR.lproj/app.json index 942c6a2a6..cbb5b319e 100644 --- a/Localization/StringsConvertor/input/pt-BR.lproj/app.json +++ b/Localization/StringsConvertor/input/pt-BR.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From b8291a106f2bc7ab0bf2ff57c275444fabc6de1c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:29 +0200 Subject: [PATCH 539/571] New translations app.json (English) --- Localization/StringsConvertor/input/en.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/en.lproj/app.json b/Localization/StringsConvertor/input/en.lproj/app.json index 7c50eba7f..2a8634a67 100644 --- a/Localization/StringsConvertor/input/en.lproj/app.json +++ b/Localization/StringsConvertor/input/en.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From efa43c211d5c4e8a95ca4223a0e0c966c3458659 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:30 +0200 Subject: [PATCH 540/571] New translations app.json (Chinese Traditional) --- Localization/StringsConvertor/input/zh-Hant.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json index 26427f5d3..f82cd3ef4 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "搜尋伺服器", - "search_servers_or_enter_url": "搜尋社群或輸入 URL 地址" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "尋找可用的伺服器...", From 136590844e7761e072522a6a9e0f649bcfe58ccc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:31 +0200 Subject: [PATCH 541/571] New translations app.json (Portuguese) --- Localization/StringsConvertor/input/pt.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/pt.lproj/app.json b/Localization/StringsConvertor/input/pt.lproj/app.json index 7c50eba7f..2a8634a67 100644 --- a/Localization/StringsConvertor/input/pt.lproj/app.json +++ b/Localization/StringsConvertor/input/pt.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From 66c4452e70af111114c5417c330377920cca52d0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:32 +0200 Subject: [PATCH 542/571] New translations app.json (Italian) --- Localization/StringsConvertor/input/it.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json index e7ab4b5f6..6ee8665c1 100644 --- a/Localization/StringsConvertor/input/it.lproj/app.json +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca comunità", - "search_servers_or_enter_url": "Cerca comunità o inserisci l'URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Ricerca server disponibili...", From 16929dece1a6bf149037cfcc9484bfe4cf8d7390 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:33 +0200 Subject: [PATCH 543/571] New translations app.json (Dutch) --- Localization/StringsConvertor/input/nl.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/nl.lproj/app.json b/Localization/StringsConvertor/input/nl.lproj/app.json index 982cfb877..883b6a0ed 100644 --- a/Localization/StringsConvertor/input/nl.lproj/app.json +++ b/Localization/StringsConvertor/input/nl.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Zoek uw server of sluit u bij een nieuwe server aan...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Beschikbare servers zoeken...", From 638c6b0f847d661281683dc02327fbab8447e5ef Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:34 +0200 Subject: [PATCH 544/571] New translations app.json (Korean) --- Localization/StringsConvertor/input/ko.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ko.lproj/app.json b/Localization/StringsConvertor/input/ko.lproj/app.json index ef1a05d5e..ea42eaa71 100644 --- a/Localization/StringsConvertor/input/ko.lproj/app.json +++ b/Localization/StringsConvertor/input/ko.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From 4d2a74eaa5d73a33923674711cc6b02a8e2a8dac Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:35 +0200 Subject: [PATCH 545/571] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ja.lproj/app.json b/Localization/StringsConvertor/input/ja.lproj/app.json index 7d07d72e2..a4e55aae5 100644 --- a/Localization/StringsConvertor/input/ja.lproj/app.json +++ b/Localization/StringsConvertor/input/ja.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "サーバーを探す", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "利用可能なサーバーの検索...", From a7110b88ef253899165841bf2b90bb8a595024f5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:36 +0200 Subject: [PATCH 546/571] New translations app.json (German) --- Localization/StringsConvertor/input/de.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/de.lproj/app.json b/Localization/StringsConvertor/input/de.lproj/app.json index 319c9fe22..d0c61847c 100644 --- a/Localization/StringsConvertor/input/de.lproj/app.json +++ b/Localization/StringsConvertor/input/de.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Nach Server suchen oder URL eingeben", - "search_servers_or_enter_url": "Nach Server suchen oder URL eingeben" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Verfügbare Server werden gesucht...", From 2769fd24ea9161eb7a1c16e9566d26789e66e15c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:37 +0200 Subject: [PATCH 547/571] New translations app.json (Danish) --- Localization/StringsConvertor/input/da.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/da.lproj/app.json b/Localization/StringsConvertor/input/da.lproj/app.json index 7c50eba7f..2a8634a67 100644 --- a/Localization/StringsConvertor/input/da.lproj/app.json +++ b/Localization/StringsConvertor/input/da.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From c4d421b29e942b30fbee96e867bbc17b1c6d1ac3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:38 +0200 Subject: [PATCH 548/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json index 2f233ae67..b231ea31c 100644 --- a/Localization/StringsConvertor/input/ar.lproj/app.json +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", - "search_servers_or_enter_url": "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", From 7c971d43b270ba51a130190359eaa26edb92dccc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:39 +0200 Subject: [PATCH 549/571] New translations app.json (Spanish) --- Localization/StringsConvertor/input/es.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/es.lproj/app.json b/Localization/StringsConvertor/input/es.lproj/app.json index 42153de81..9c11e365d 100644 --- a/Localization/StringsConvertor/input/es.lproj/app.json +++ b/Localization/StringsConvertor/input/es.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Encuentra un servidor o únete al tuyo propio...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Encontrando servidores disponibles...", From 9e0747f953451e114faf46416c06cccefcec51a2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:40 +0200 Subject: [PATCH 550/571] New translations app.json (French) --- Localization/StringsConvertor/input/fr.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/fr.lproj/app.json b/Localization/StringsConvertor/input/fr.lproj/app.json index fbd968b4d..97a8566e9 100644 --- a/Localization/StringsConvertor/input/fr.lproj/app.json +++ b/Localization/StringsConvertor/input/fr.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Trouvez un serveur ou rejoignez le vôtre...", - "search_servers_or_enter_url": "Rechercher parmi les communautés ou entrer une URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Recherche des serveurs disponibles...", From 74f3da90aa012ed706c14bf68243a55428a9f992 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:41 +0200 Subject: [PATCH 551/571] New translations app.json (Romanian) --- Localization/StringsConvertor/input/ro.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ro.lproj/app.json b/Localization/StringsConvertor/input/ro.lproj/app.json index 7120467d6..20fe425df 100644 --- a/Localization/StringsConvertor/input/ro.lproj/app.json +++ b/Localization/StringsConvertor/input/ro.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Search servers", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Finding available servers...", From 6897743008479168d18e92877ac6af9a88055fab Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:41 +0200 Subject: [PATCH 552/571] New translations app.json (Basque) --- Localization/StringsConvertor/input/eu.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/eu.lproj/app.json b/Localization/StringsConvertor/input/eu.lproj/app.json index 3d8f354ca..96978f3d4 100644 --- a/Localization/StringsConvertor/input/eu.lproj/app.json +++ b/Localization/StringsConvertor/input/eu.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Bilatu zerbitzari bat edo sortu zurea...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Erabilgarri dauden zerbitzariak bilatzen...", From 62e3a6b21378f04024acc2183725bf8cab4110ab Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:42 +0200 Subject: [PATCH 553/571] New translations app.json (Vietnamese) --- Localization/StringsConvertor/input/vi.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/vi.lproj/app.json b/Localization/StringsConvertor/input/vi.lproj/app.json index f4b71f861..58650a088 100644 --- a/Localization/StringsConvertor/input/vi.lproj/app.json +++ b/Localization/StringsConvertor/input/vi.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Tìm máy chủ", - "search_servers_or_enter_url": "Tìm một máy chủ hoặc nhập URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Đang tìm máy chủ hoạt động...", From aa12be24016a654f61c6f5fa5afc54f140bf4801 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:44 +0200 Subject: [PATCH 554/571] New translations app.json (Thai) --- Localization/StringsConvertor/input/th.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/th.lproj/app.json b/Localization/StringsConvertor/input/th.lproj/app.json index b1a0968a1..97a00b41a 100644 --- a/Localization/StringsConvertor/input/th.lproj/app.json +++ b/Localization/StringsConvertor/input/th.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "ค้นหาเซิร์ฟเวอร์", - "search_servers_or_enter_url": "ค้นหาชุมชนหรือป้อน URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน...", From 22eb5b2093a51c8ba2545a1a9c0607095211d0c7 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:45 +0200 Subject: [PATCH 555/571] New translations app.json (Chinese Simplified) --- Localization/StringsConvertor/input/zh-Hans.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index 3bc65e32c..3693d30d7 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "查找或加入你自己的服务器...", - "search_servers_or_enter_url": "搜索服务器或输入 URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "正在查找可用的服务器...", From 3fb8517bdcbcd2e5faef0feb15cb12d83fd03344 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:45 +0200 Subject: [PATCH 556/571] New translations app.json (Russian) --- Localization/StringsConvertor/input/ru.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ru.lproj/app.json b/Localization/StringsConvertor/input/ru.lproj/app.json index 4a14a5425..3ead02562 100644 --- a/Localization/StringsConvertor/input/ru.lproj/app.json +++ b/Localization/StringsConvertor/input/ru.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Найдите сервер или присоединитесь к своему...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Ищем доступные сервера...", From cb234bf09ceecf03cddbc96e1c342b4ac278f2b6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 19:57:46 +0200 Subject: [PATCH 557/571] New translations app.json (Finnish) --- Localization/StringsConvertor/input/fi.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/fi.lproj/app.json b/Localization/StringsConvertor/input/fi.lproj/app.json index 37c3fa3e8..7dc8f17c4 100644 --- a/Localization/StringsConvertor/input/fi.lproj/app.json +++ b/Localization/StringsConvertor/input/fi.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Etsi palvelin tai liity omaan...", - "search_servers_or_enter_url": "Search communities or enter URL" + "search_servers_or_enter_url": "Search servers or enter URL" }, "empty_state": { "finding_servers": "Etsistään saatavilla olevia palvelimia...", From b5cc0bc04d4907732c74820032592a4cea254a47 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 21:06:11 +0200 Subject: [PATCH 558/571] New translations app.json (Catalan) --- Localization/StringsConvertor/input/ca.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ca.lproj/app.json b/Localization/StringsConvertor/input/ca.lproj/app.json index ecac00836..2f300fd3d 100644 --- a/Localization/StringsConvertor/input/ca.lproj/app.json +++ b/Localization/StringsConvertor/input/ca.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca servidors", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "Cerca servidors o introdueix l'enllaç" }, "empty_state": { "finding_servers": "Cercant els servidors disponibles...", From a5b2aa6e269e2ed91f41649b6ebb61490b784f22 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 21:06:12 +0200 Subject: [PATCH 559/571] New translations app.json (Italian) --- Localization/StringsConvertor/input/it.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/it.lproj/app.json b/Localization/StringsConvertor/input/it.lproj/app.json index 6ee8665c1..9543837b5 100644 --- a/Localization/StringsConvertor/input/it.lproj/app.json +++ b/Localization/StringsConvertor/input/it.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Cerca comunità", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "Cerca i server o inserisci l'URL" }, "empty_state": { "finding_servers": "Ricerca server disponibili...", From ea2b5b37a72dca8a0464706a64a86c6a2f428a7e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 21:06:13 +0200 Subject: [PATCH 560/571] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ar.lproj/app.json b/Localization/StringsConvertor/input/ar.lproj/app.json index b231ea31c..6fce051fb 100644 --- a/Localization/StringsConvertor/input/ar.lproj/app.json +++ b/Localization/StringsConvertor/input/ar.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "اِبحَث عن خادِم أو انضم إلى آخر خاص بك...", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "اِبحَث فِي الخَوادِم أو أدخِل رابِط" }, "empty_state": { "finding_servers": "يجري إيجاد خوادم متوفِّرَة...", From 7cd10eff8842e4d795e3cd64a2349eca55dbed99 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 21:06:14 +0200 Subject: [PATCH 561/571] New translations app.json (Spanish, Argentina) --- .../StringsConvertor/input/es-AR.lproj/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/es-AR.lproj/app.json b/Localization/StringsConvertor/input/es-AR.lproj/app.json index dc2bf67e2..9ccf1f998 100644 --- a/Localization/StringsConvertor/input/es-AR.lproj/app.json +++ b/Localization/StringsConvertor/input/es-AR.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Buscar servidores", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "Buscar servidores o introducir dirección web" }, "empty_state": { "finding_servers": "Buscando servidores disponibles…", @@ -343,7 +343,7 @@ "title": "Principal", "navigation_bar_state": { "offline": "Desconectado", - "new_posts": "Ver nuevos mensajes", + "new_posts": "Ver nuevos msjs", "published": "¡Enviado!", "Publishing": "Enviando mensaje…", "accessibility": { @@ -354,7 +354,7 @@ }, "suggestion_account": { "title": "Encontrá cuentas para seguir", - "follow_explain": "Cuando sigás a alguien, verás sus mensajes en tu línea temporal principal." + "follow_explain": "Cuando sigás una cuenta, verás sus mensajes en tu línea temporal principal." }, "compose": { "title": { @@ -370,10 +370,10 @@ "compose_action": "Enviar", "replying_to_user": "respondiendo a %s", "attachment": { - "photo": "foto", + "photo": "imagen", "video": "video", "attachment_broken": "Este archivo de %s está roto\ny no se puede subir a Mastodon.", - "description_photo": "Describí la foto para personas con dificultades visuales…", + "description_photo": "Describí la imagen para personas con dificultades visuales…", "description_video": "Describí el video para personas con dificultades visuales…" }, "poll": { @@ -396,7 +396,7 @@ "direct": "Sólo a las cuentas que menciono" }, "auto_complete": { - "space_to_add": "Espacio para agregar" + "space_to_add": "Tocá la tecla «Espacio» para agregar" }, "accessibility": { "append_attachment": "Agregar archivo adjunto", From c7f8d6b97365661ec038beeca36d0c890056b20a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 22:21:34 +0200 Subject: [PATCH 562/571] New translations app.json (Russian) --- Localization/StringsConvertor/input/ru.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ru.lproj/app.json b/Localization/StringsConvertor/input/ru.lproj/app.json index 3ead02562..8a26f718d 100644 --- a/Localization/StringsConvertor/input/ru.lproj/app.json +++ b/Localization/StringsConvertor/input/ru.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Найдите сервер или присоединитесь к своему...", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "Поиск по серверам или ссылке" }, "empty_state": { "finding_servers": "Ищем доступные сервера...", From 803689d67af268f35986bfee3a074be63453625b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 23:32:05 +0200 Subject: [PATCH 563/571] New translations app.json (Swedish) --- .../StringsConvertor/input/sv.lproj/app.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Localization/StringsConvertor/input/sv.lproj/app.json b/Localization/StringsConvertor/input/sv.lproj/app.json index 93bbda08a..802c731ce 100644 --- a/Localization/StringsConvertor/input/sv.lproj/app.json +++ b/Localization/StringsConvertor/input/sv.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "Sök gemenskaper", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "Sök servrar eller ange URL" }, "empty_state": { "finding_servers": "Söker tillgängliga servrar...", @@ -462,22 +462,22 @@ } }, "follower": { - "title": "follower", + "title": "följare", "footer": "Följare från andra servrar visas inte." }, "following": { - "title": "following", + "title": "följer", "footer": "Följda på andra servrar visas inte." }, "familiarFollowers": { - "title": "Followers you familiar", - "followed_by_names": "Followed by %s" + "title": "Följare du liknar", + "followed_by_names": "Följs av %s" }, "favorited_by": { - "title": "Favorited By" + "title": "Favoriserad av" }, "reblogged_by": { - "title": "Reblogged By" + "title": "Ompostat av" }, "search": { "title": "Sök", From ffc3ba6a0dbcf4f044da1163f75215c3003a22f6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 22 May 2022 23:32:06 +0200 Subject: [PATCH 564/571] New translations Localizable.stringsdict (Swedish) --- .../StringsConvertor/input/sv.lproj/Localizable.stringsdict | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict index 0d6ddd579..27ef9fb53 100644 --- a/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/sv.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Följs av %1$@ och en annan gemensam other - Followed by %1$@, and %ld mutuals + Följs av %1$@ och %ld gemensamma plural.count.metric_formatted.post From 58028fd47acc1eed8ca2fde2ccf52c9c45e159d4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 23 May 2022 00:32:25 +0200 Subject: [PATCH 565/571] New translations app.json (Chinese Traditional) --- Localization/StringsConvertor/input/zh-Hant.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json index f82cd3ef4..cf910c43a 100644 --- a/Localization/StringsConvertor/input/zh-Hant.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hant.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "搜尋伺服器", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "搜尋伺服器或輸入網址" }, "empty_state": { "finding_servers": "尋找可用的伺服器...", From e1c670a7ede3d91d31a6a1889ccc484d46d0bfa5 Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 23 May 2022 11:03:34 +0800 Subject: [PATCH 566/571] chore: update i18n resources --- .../MastodonLocalization/Generated/Strings.swift | 2 +- .../Resources/ar.lproj/Localizable.strings | 2 +- .../Resources/ar.lproj/Localizable.stringsdict | 12 ++++++------ .../Resources/ca.lproj/Localizable.strings | 2 +- .../Resources/ckb.lproj/Localizable.strings | 2 +- .../Resources/de.lproj/Localizable.strings | 2 +- .../Resources/en.lproj/Localizable.strings | 2 +- .../Resources/es.lproj/Localizable.strings | 2 +- .../Resources/eu.lproj/Localizable.strings | 2 +- .../Resources/fi.lproj/Localizable.strings | 2 +- .../Resources/fr.lproj/Localizable.strings | 2 +- .../Resources/gd.lproj/Localizable.strings | 2 +- .../Resources/gl.lproj/Localizable.strings | 2 +- .../Resources/it.lproj/Localizable.strings | 2 +- .../Resources/ja.lproj/Localizable.strings | 2 +- .../Resources/kab.lproj/Localizable.strings | 2 +- .../Resources/ku.lproj/Localizable.strings | 14 +++++++------- .../Resources/nl.lproj/Localizable.strings | 2 +- .../Resources/ru.lproj/Localizable.strings | 2 +- .../Resources/sv.lproj/Localizable.strings | 14 +++++++------- .../Resources/sv.lproj/Localizable.stringsdict | 4 ++-- .../Resources/th.lproj/Localizable.strings | 2 +- .../Resources/tr.lproj/Localizable.strings | 2 +- .../Resources/vi.lproj/Localizable.strings | 2 +- .../Resources/zh-Hans.lproj/Localizable.strings | 2 +- .../Resources/zh-Hant.lproj/Localizable.strings | 2 +- 26 files changed, 44 insertions(+), 44 deletions(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift index bc621b295..957071a21 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift +++ b/MastodonSDK/Sources/MastodonLocalization/Generated/Strings.swift @@ -1063,7 +1063,7 @@ public enum L10n { public enum Input { /// Search servers public static let placeholder = L10n.tr("Localizable", "Scene.ServerPicker.Input.Placeholder") - /// Search communities or enter URL + /// Search servers or enter URL public static let searchServersOrEnterUrl = L10n.tr("Localizable", "Scene.ServerPicker.Input.SearchServersOrEnterUrl") } public enum Label { diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings index ec7957667..6cf6275b5 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.strings @@ -374,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "يجري إيجاد خوادم متوفِّرَة..."; "Scene.ServerPicker.EmptyState.NoResults" = "لا توجد نتائج"; "Scene.ServerPicker.Input.Placeholder" = "اِبحَث عن خادِم أو انضم إلى آخر خاص بك..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "اِبحث عَن مُجتَمَعَات أو أدخِل عُنوانَ URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "اِبحَث فِي الخَوادِم أو أدخِل رابِط"; "Scene.ServerPicker.Label.Category" = "الفئة"; "Scene.ServerPicker.Label.Language" = "اللُّغة"; "Scene.ServerPicker.Label.Users" = "مُستَخدِم"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict index 52145a165..197897e8e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ar.lproj/Localizable.stringsdict @@ -104,17 +104,17 @@ NSStringFormatValueTypeKey ld zero - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ لَا أحَد one - Followed by %1$@, and another mutual + مُتابَعٌ مِن قِبَلِ %1$@، وشَخصٌ آخَرُ مُتبادَل two - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، وشَخصانِ آخَرَانِ مُتبادَلَان few - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرينَ مُتبادَلين many - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرينَ مُتبادَلين other - Followed by %1$@, and %ld mutuals + مُتابَعٌ مِن قِبَلِ %1$@، و%ld آخَرَ مُتبادَل plural.count.metric_formatted.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings index 27dd54294..578e60d34 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ca.lproj/Localizable.strings @@ -374,7 +374,7 @@ carregat a Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Cercant els servidors disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "No hi ha resultats"; "Scene.ServerPicker.Input.Placeholder" = "Cerca servidors"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca comunitats o introdueix l'URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca servidors o introdueix l'enllaç"; "Scene.ServerPicker.Label.Category" = "CATEGORIA"; "Scene.ServerPicker.Label.Language" = "LLENGUATGE"; "Scene.ServerPicker.Label.Users" = "USUARIS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings index 93d15649f..628059868 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ckb.lproj/Localizable.strings @@ -373,7 +373,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "ڕاژەکار دەدۆزرێتەوە..."; "Scene.ServerPicker.EmptyState.NoResults" = "ئەنجام نییە"; "Scene.ServerPicker.Input.Placeholder" = "بگەڕێ"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "بەش"; "Scene.ServerPicker.Label.Language" = "زمان"; "Scene.ServerPicker.Label.Users" = "بەکارهێنەر"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings index f0468f315..d5e8be0a2 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/de.lproj/Localizable.strings @@ -374,7 +374,7 @@ kann nicht auf Mastodon hochgeladen werden."; "Scene.ServerPicker.EmptyState.FindingServers" = "Verfügbare Server werden gesucht..."; "Scene.ServerPicker.EmptyState.NoResults" = "Keine Ergebnisse"; "Scene.ServerPicker.Input.Placeholder" = "Nach Server suchen oder URL eingeben"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Nach Server suchen oder URL eingeben"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORIE"; "Scene.ServerPicker.Label.Language" = "SPRACHE"; "Scene.ServerPicker.Label.Users" = "BENUTZER"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings index db1baf9b4..4ce7015d7 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/en.lproj/Localizable.strings @@ -374,7 +374,7 @@ uploaded to Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Finding available servers..."; "Scene.ServerPicker.EmptyState.NoResults" = "No results"; "Scene.ServerPicker.Input.Placeholder" = "Search servers"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORY"; "Scene.ServerPicker.Label.Language" = "LANGUAGE"; "Scene.ServerPicker.Label.Users" = "USERS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings index 2842ce4ca..4a883ff45 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/es.lproj/Localizable.strings @@ -375,7 +375,7 @@ pulsa en el enlace para confirmar tu cuenta."; "Scene.ServerPicker.EmptyState.FindingServers" = "Encontrando servidores disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sin resultados"; "Scene.ServerPicker.Input.Placeholder" = "Encuentra un servidor o únete al tuyo propio..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "USUARIOS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings index 425ad78cd..67e1966c9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/eu.lproj/Localizable.strings @@ -374,7 +374,7 @@ Mastodonera igo."; "Scene.ServerPicker.EmptyState.FindingServers" = "Erabilgarri dauden zerbitzariak bilatzen..."; "Scene.ServerPicker.EmptyState.NoResults" = "Emaitzarik ez"; "Scene.ServerPicker.Input.Placeholder" = "Bilatu zerbitzari bat edo sortu zurea..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORIA"; "Scene.ServerPicker.Label.Language" = "HIZKUNTZA"; "Scene.ServerPicker.Label.Users" = "ERABILTZAILEAK"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings index c4433845f..1fb8fbc46 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fi.lproj/Localizable.strings @@ -374,7 +374,7 @@ uploaded to Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Etsistään saatavilla olevia palvelimia..."; "Scene.ServerPicker.EmptyState.NoResults" = "Ei hakutuloksia"; "Scene.ServerPicker.Input.Placeholder" = "Etsi palvelin tai liity omaan..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORIA"; "Scene.ServerPicker.Label.Language" = "KIELI"; "Scene.ServerPicker.Label.Users" = "TILIÄ"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings index 41afb2394..1706ad363 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/fr.lproj/Localizable.strings @@ -374,7 +374,7 @@ téléversé sur Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Recherche des serveurs disponibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Aucun résultat"; "Scene.ServerPicker.Input.Placeholder" = "Trouvez un serveur ou rejoignez le vôtre..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Rechercher parmi les communautés ou entrer une URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "CATÉGORIE"; "Scene.ServerPicker.Label.Language" = "LANGUE"; "Scene.ServerPicker.Label.Users" = "UTILISATEUR·RICE·S"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings index 8d75b1614..9638d561a 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gd.lproj/Localizable.strings @@ -375,7 +375,7 @@ thoir gnogag air a’ chunntas a dhearbhadh a’ chunntais agad."; "Scene.ServerPicker.EmptyState.FindingServers" = "A’ lorg nam frithealaichean ri am faighinn…"; "Scene.ServerPicker.EmptyState.NoResults" = "Gun toradh"; "Scene.ServerPicker.Input.Placeholder" = "Lorg frithealaiche no gabh pàirt san fhear agad fhèin…"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "ROINN-SEÒRSA"; "Scene.ServerPicker.Label.Language" = "CÀNAN"; "Scene.ServerPicker.Label.Users" = "CLEACHDAICHEAN"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings index 2e27d2b4f..d5ddb239d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/gl.lproj/Localizable.strings @@ -374,7 +374,7 @@ ser subido a Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Buscando servidores dispoñibles..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sen resultados"; "Scene.ServerPicker.Input.Placeholder" = "Buscar comunidades"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Busca comunidades ou escribe URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORÍA"; "Scene.ServerPicker.Label.Language" = "IDIOMA"; "Scene.ServerPicker.Label.Users" = "USUARIAS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings index 161361b85..6e4e5589f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/it.lproj/Localizable.strings @@ -374,7 +374,7 @@ caricato su Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Ricerca server disponibili..."; "Scene.ServerPicker.EmptyState.NoResults" = "Nessun risultato"; "Scene.ServerPicker.Input.Placeholder" = "Cerca comunità"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca comunità o inserisci l'URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Cerca i server o inserisci l'URL"; "Scene.ServerPicker.Label.Category" = "CATEGORIA"; "Scene.ServerPicker.Label.Language" = "LINGUA"; "Scene.ServerPicker.Label.Users" = "UTENTI"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings index c15d31843..ea59763b1 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ja.lproj/Localizable.strings @@ -369,7 +369,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "利用可能なサーバーの検索..."; "Scene.ServerPicker.EmptyState.NoResults" = "なし"; "Scene.ServerPicker.Input.Placeholder" = "サーバーを探す"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "カテゴリー"; "Scene.ServerPicker.Label.Language" = "言語"; "Scene.ServerPicker.Label.Users" = "ユーザー"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings index 769dbb32d..fc7c720ae 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/kab.lproj/Localizable.strings @@ -374,7 +374,7 @@ Ad d-yettwasali ɣef Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Tifin n yiqeddacen yellan..."; "Scene.ServerPicker.EmptyState.NoResults" = "Ulac igemmaḍ"; "Scene.ServerPicker.Input.Placeholder" = "Nadi timɣiwnin"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "TAGGAYT"; "Scene.ServerPicker.Label.Language" = "TUTLAYT"; "Scene.ServerPicker.Label.Users" = "ISEQDACEN"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings index 45c84179d..472bc9403 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ku.lproj/Localizable.strings @@ -209,14 +209,14 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Discovery.Tabs.Hashtags" = "Hashtag"; "Scene.Discovery.Tabs.News" = "Nûçe"; "Scene.Discovery.Tabs.Posts" = "Şandî"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Ji aliyêm%@ hatiye şopandin"; +"Scene.Familiarfollowers.Title" = "Şopînerên ku tu wan nas dikî"; "Scene.Favorite.Title" = "Bijarteyên te"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "Hatiye hezkirin ji aliyê"; "Scene.Follower.Footer" = "Şopîner ji rajekerên din nayê dîtin."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "şopîner"; "Scene.Following.Footer" = "Şopandin ji rajekerên din nayê dîtin."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "dişopîne"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Ji bo şemitandina jor û dîsa li cihê berê vegerî bitikîne"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Bişkoka Logo"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Şandiyên nû bibîne"; @@ -260,7 +260,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.Profile.SegmentedControl.Posts" = "Şandî"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Şandî û bersiv"; "Scene.Profile.SegmentedControl.Replies" = "Bersiv"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "Ji nû ve hatiye nivîsandin ji aliyê"; "Scene.Register.Error.Item.Agreement" = "Peyman"; "Scene.Register.Error.Item.Email" = "E-name"; "Scene.Register.Error.Item.Locale" = "Zimanê navrûyê"; @@ -375,7 +375,7 @@ girêdanê bitikne da ku ajimêra xwe bidî piştrastkirin."; "Scene.ServerPicker.EmptyState.FindingServers" = "Peydakirina rajekarên berdest..."; "Scene.ServerPicker.EmptyState.NoResults" = "Encam tune"; "Scene.ServerPicker.Input.Placeholder" = "Li rajekaran bigere"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Li civakan bigere an jî girêdanê binivîse"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "BEŞ"; "Scene.ServerPicker.Label.Language" = "ZIMAN"; "Scene.ServerPicker.Label.Users" = "BIKARHÊNER"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings index 4b92061a3..cddb4be04 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/nl.lproj/Localizable.strings @@ -369,7 +369,7 @@ klik op de link om uw account te bevestigen."; "Scene.ServerPicker.EmptyState.FindingServers" = "Beschikbare servers zoeken..."; "Scene.ServerPicker.EmptyState.NoResults" = "Geen resultaten"; "Scene.ServerPicker.Input.Placeholder" = "Zoek uw server of sluit u bij een nieuwe server aan..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "CATEGORIE"; "Scene.ServerPicker.Label.Language" = "TAAL"; "Scene.ServerPicker.Label.Users" = "GEBRUIKERS"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings index faac1e6a8..a9438e23d 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/ru.lproj/Localizable.strings @@ -385,7 +385,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "Ищем доступные сервера..."; "Scene.ServerPicker.EmptyState.NoResults" = "Нет результатов"; "Scene.ServerPicker.Input.Placeholder" = "Найдите сервер или присоединитесь к своему..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Поиск по серверам или ссылке"; "Scene.ServerPicker.Label.Category" = "КАТЕГОРИЯ"; "Scene.ServerPicker.Label.Language" = "ЯЗЫК"; "Scene.ServerPicker.Label.Users" = "ПОЛЬЗОВАТЕЛИ"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings index c9f5892ed..7c9f2890f 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.strings @@ -208,14 +208,14 @@ laddas upp till Mastodon."; "Scene.Discovery.Tabs.Hashtags" = "Hashtaggar"; "Scene.Discovery.Tabs.News" = "Nyheter"; "Scene.Discovery.Tabs.Posts" = "Inlägg"; -"Scene.Familiarfollowers.FollowedByNames" = "Followed by %@"; -"Scene.Familiarfollowers.Title" = "Followers you familiar"; +"Scene.Familiarfollowers.FollowedByNames" = "Följs av %@"; +"Scene.Familiarfollowers.Title" = "Följare du liknar"; "Scene.Favorite.Title" = "Dina favoriter"; -"Scene.FavoritedBy.Title" = "Favorited By"; +"Scene.FavoritedBy.Title" = "Favoriserad av"; "Scene.Follower.Footer" = "Följare från andra servrar visas inte."; -"Scene.Follower.Title" = "follower"; +"Scene.Follower.Title" = "följare"; "Scene.Following.Footer" = "Följda på andra servrar visas inte."; -"Scene.Following.Title" = "following"; +"Scene.Following.Title" = "följer"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoHint" = "Tryck för att bläddra till toppen och tryck igen för föregående plats"; "Scene.HomeTimeline.NavigationBarState.Accessibility.LogoLabel" = "Logo-knapp"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Nya inlägg"; @@ -259,7 +259,7 @@ laddas upp till Mastodon."; "Scene.Profile.SegmentedControl.Posts" = "Inlägg"; "Scene.Profile.SegmentedControl.PostsAndReplies" = "Inlägg och svar"; "Scene.Profile.SegmentedControl.Replies" = "Svar"; -"Scene.RebloggedBy.Title" = "Reblogged By"; +"Scene.RebloggedBy.Title" = "Ompostat av"; "Scene.Register.Error.Item.Agreement" = "Avtal"; "Scene.Register.Error.Item.Email" = "E-post"; "Scene.Register.Error.Item.Locale" = "Språk"; @@ -374,7 +374,7 @@ laddas upp till Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Söker tillgängliga servrar..."; "Scene.ServerPicker.EmptyState.NoResults" = "Inga resultat"; "Scene.ServerPicker.Input.Placeholder" = "Sök gemenskaper"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Sök gemenskaper eller ange URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Sök servrar eller ange URL"; "Scene.ServerPicker.Label.Category" = "KATEGORI"; "Scene.ServerPicker.Label.Language" = "SPRÅK"; "Scene.ServerPicker.Label.Users" = "ANVÄNDARE"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict index 0d6ddd579..27ef9fb53 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/sv.lproj/Localizable.stringsdict @@ -72,9 +72,9 @@ NSStringFormatValueTypeKey ld one - Followed by %1$@, and another mutual + Följs av %1$@ och en annan gemensam other - Followed by %1$@, and %ld mutuals + Följs av %1$@ och %ld gemensamma plural.count.metric_formatted.post diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings index 70e29222e..9ae1abc81 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/th.lproj/Localizable.strings @@ -374,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "กำลังค้นหาเซิร์ฟเวอร์ที่พร้อมใช้งาน..."; "Scene.ServerPicker.EmptyState.NoResults" = "ไม่มีผลลัพธ์"; "Scene.ServerPicker.Input.Placeholder" = "ค้นหาเซิร์ฟเวอร์"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "ค้นหาชุมชนหรือป้อน URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "หมวดหมู่"; "Scene.ServerPicker.Label.Language" = "ภาษา"; "Scene.ServerPicker.Label.Users" = "ผู้ใช้"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings index f5a8ce8cf..a9fb6935e 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/tr.lproj/Localizable.strings @@ -373,7 +373,7 @@ yüklenemiyor."; "Scene.ServerPicker.EmptyState.FindingServers" = "Mevcut sunucular aranıyor..."; "Scene.ServerPicker.EmptyState.NoResults" = "Sonuç yok"; "Scene.ServerPicker.Input.Placeholder" = "Toplulukları ara"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search communities or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "KATEGORİ"; "Scene.ServerPicker.Label.Language" = "DİL"; "Scene.ServerPicker.Label.Users" = "KULLANICILAR"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings index 1b78a22b6..9978b2ea9 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/vi.lproj/Localizable.strings @@ -374,7 +374,7 @@ tải lên Mastodon."; "Scene.ServerPicker.EmptyState.FindingServers" = "Đang tìm máy chủ hoạt động..."; "Scene.ServerPicker.EmptyState.NoResults" = "Không có kết quả"; "Scene.ServerPicker.Input.Placeholder" = "Tìm máy chủ"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Tìm một máy chủ hoặc nhập URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "PHÂN LOẠI"; "Scene.ServerPicker.Label.Language" = "NGÔN NGỮ"; "Scene.ServerPicker.Label.Users" = "NGƯỜI DÙNG"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index bd45a50c8..3af7a0672 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -374,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "正在查找可用的服务器..."; "Scene.ServerPicker.EmptyState.NoResults" = "无结果"; "Scene.ServerPicker.Input.Placeholder" = "查找或加入你自己的服务器..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜索服务器或输入 URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; "Scene.ServerPicker.Label.Category" = "类别"; "Scene.ServerPicker.Label.Language" = "语言"; "Scene.ServerPicker.Label.Users" = "用户"; diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings index 6a76fa3f4..479dded34 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hant.lproj/Localizable.strings @@ -369,7 +369,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "尋找可用的伺服器..."; "Scene.ServerPicker.EmptyState.NoResults" = "沒有結果"; "Scene.ServerPicker.Input.Placeholder" = "搜尋伺服器"; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜尋社群或輸入 URL 地址"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜尋伺服器或輸入網址"; "Scene.ServerPicker.Label.Category" = "分類"; "Scene.ServerPicker.Label.Language" = "語言"; "Scene.ServerPicker.Label.Users" = "使用者"; From 250de39972c5b34d61d06ef723f2be8054a7561e Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 23 May 2022 11:17:26 +0800 Subject: [PATCH 567/571] chore: update search textfield and sign up button text --- .../PickServerServerSectionTableHeaderView.swift | 12 +++++++----- .../Onboarding/Welcome/WelcomeViewController.swift | 5 +++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Mastodon/Scene/Onboarding/PickServer/View/PickServerServerSectionTableHeaderView.swift b/Mastodon/Scene/Onboarding/PickServer/View/PickServerServerSectionTableHeaderView.swift index 894cbdbdf..4e757cd1a 100644 --- a/Mastodon/Scene/Onboarding/PickServer/View/PickServerServerSectionTableHeaderView.swift +++ b/Mastodon/Scene/Onboarding/PickServer/View/PickServerServerSectionTableHeaderView.swift @@ -96,11 +96,13 @@ final class PickServerServerSectionTableHeaderView: UIView { textField.tintColor = Asset.Colors.Label.primary.color textField.textColor = Asset.Colors.Label.primary.color textField.adjustsFontForContentSizeCategory = true - textField.attributedPlaceholder = - NSAttributedString( - string: L10n.Scene.ServerPicker.Input.placeholder, - attributes: [.font: UIFont.systemFont(ofSize: 15, weight: .regular), - .foregroundColor: Asset.Colors.Label.secondary.color.withAlphaComponent(0.6)]) + textField.attributedPlaceholder = NSAttributedString( + string: L10n.Scene.ServerPicker.Input.searchServersOrEnterUrl, + attributes: [ + .font: UIFont.systemFont(ofSize: 15, weight: .regular), + .foregroundColor: Asset.Colors.Label.secondary.color.withAlphaComponent(0.6) + ] + ) textField.clearButtonMode = .whileEditing textField.autocapitalizationType = .none textField.autocorrectionType = .no diff --git a/Mastodon/Scene/Onboarding/Welcome/WelcomeViewController.swift b/Mastodon/Scene/Onboarding/Welcome/WelcomeViewController.swift index 2389947a1..c64dd469f 100644 --- a/Mastodon/Scene/Onboarding/Welcome/WelcomeViewController.swift +++ b/Mastodon/Scene/Onboarding/Welcome/WelcomeViewController.swift @@ -50,7 +50,8 @@ final class WelcomeViewController: UIViewController, NeedsDependency { private(set) lazy var signUpButton: PrimaryActionButton = { let button = PrimaryActionButton() button.adjustsBackgroundImageWhenUserInterfaceStyleChanges = false - button.setTitle(L10n.Scene.Welcome.getStarted, for: .normal) + button.titleLabel?.font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 17, weight: .semibold)) + button.setTitle(L10n.Common.Controls.Actions.signUp, for: .normal) let backgroundImageColor: UIColor = .white let backgroundImageHighlightedColor: UIColor = UIColor(white: 0.8, alpha: 1.0) button.setBackgroundImage(.placeholder(color: backgroundImageColor), for: .normal) @@ -63,7 +64,7 @@ final class WelcomeViewController: UIViewController, NeedsDependency { private(set) lazy var signInButton: PrimaryActionButton = { let button = PrimaryActionButton() button.adjustsBackgroundImageWhenUserInterfaceStyleChanges = false - button.titleLabel?.font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 15, weight: .semibold)) + button.titleLabel?.font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 17, weight: .semibold)) button.setTitle(L10n.Scene.Welcome.logIn, for: .normal) let backgroundImageColor = Asset.Scene.Welcome.signInButtonBackground.color let backgroundImageHighlightedColor = Asset.Scene.Welcome.signInButtonBackground.color.withAlphaComponent(0.8) From 5dda128c6967d47c40652a9a4df4d664269d62d3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 23 May 2022 05:18:57 +0200 Subject: [PATCH 568/571] New translations app.json (Chinese Simplified) --- Localization/StringsConvertor/input/zh-Hans.lproj/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json index 3693d30d7..3bc65e32c 100644 --- a/Localization/StringsConvertor/input/zh-Hans.lproj/app.json +++ b/Localization/StringsConvertor/input/zh-Hans.lproj/app.json @@ -241,7 +241,7 @@ }, "input": { "placeholder": "查找或加入你自己的服务器...", - "search_servers_or_enter_url": "Search servers or enter URL" + "search_servers_or_enter_url": "搜索服务器或输入 URL" }, "empty_state": { "finding_servers": "正在查找可用的服务器...", From 28781345511e03ee3b42e775c204469551cc6b37 Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 23 May 2022 12:09:44 +0800 Subject: [PATCH 569/571] chore: update timestamp style. Only display time ago style in one week --- .../Sources/MastodonUI/Extension/Date.swift | 31 ++++++++++++++++--- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/MastodonSDK/Sources/MastodonUI/Extension/Date.swift b/MastodonSDK/Sources/MastodonUI/Extension/Date.swift index 89d31dc91..549dd550b 100644 --- a/MastodonSDK/Sources/MastodonUI/Extension/Date.swift +++ b/MastodonSDK/Sources/MastodonUI/Extension/Date.swift @@ -11,6 +11,8 @@ import MastodonLocalization extension Date { + static let calendar = Calendar(identifier: .gregorian) + public static let relativeTimestampFormatter: RelativeDateTimeFormatter = { let formatter = RelativeDateTimeFormatter() formatter.dateTimeStyle = .numeric @@ -18,8 +20,15 @@ extension Date { return formatter }() + public static let abbreviatedDateFormatter: DateFormatter = { + let formatter = DateFormatter() + formatter.dateStyle = .medium // e.g. Nov 23, 1937 + formatter.timeStyle = .none // none + return formatter + }() + public var localizedSlowedTimeAgoSinceNow: String { - return self.localizedTimeAgo(since: Date(), isSlowed: true, isAbbreviated: true) + return self.localizedTimeAgo(since: Date(), isSlowed: true, isAbbreviated: false) } public var localizedTimeAgoSinceNow: String { @@ -36,7 +45,21 @@ extension Date { if isAbbreviated { return latestDate.localizedShortTimeAgo(since: earlierDate) } else { - return Date.relativeTimestampFormatter.localizedString(for: earlierDate, relativeTo: latestDate) + if earlierDate.timeIntervalSince(latestDate) < -(7 * 24 * 60 * 60) { + let currentYear = Date.calendar.dateComponents([.year], from: Date()) + let earlierDateYear = Date.calendar.dateComponents([.year], from: earlierDate) + if #available(iOS 15.0, *) { + if currentYear.year! > earlierDateYear.year! { + return earlierDate.formatted(.dateTime.year().month(.abbreviated).day()) + } else { + return earlierDate.formatted(.dateTime.month(.abbreviated).day()) + } + } else { + return Date.abbreviatedDateFormatter.string(from: earlierDate) + } + } else { + return Date.relativeTimestampFormatter.localizedString(for: earlierDate, relativeTo: latestDate) + } } } } @@ -49,7 +72,7 @@ extension Date { let earlierDate = date < self ? date : self let latestDate = earlierDate == date ? self : date - let components = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute, .second], from: earlierDate, to: latestDate) + let components = Date.calendar.dateComponents([.year, .month, .day, .hour, .minute, .second], from: earlierDate, to: latestDate) if components.year! > 0 { return L10n.Date.Year.Ago.abbr(components.year!) @@ -73,7 +96,7 @@ extension Date { let earlierDate = date < self ? date : self let latestDate = earlierDate == date ? self : date - let components = Calendar.current.dateComponents([.year, .month, .day, .hour, .minute, .second], from: earlierDate, to: latestDate) + let components = Calendar(identifier: .gregorian).dateComponents([.year, .month, .day, .hour, .minute, .second], from: earlierDate, to: latestDate) if components.year! > 0 { return L10n.Date.Year.left(components.year!) From b2215996772eba69657a00690b44cf6ec679313b Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 23 May 2022 12:10:55 +0800 Subject: [PATCH 570/571] chore: update i18n resources --- .../Resources/zh-Hans.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings index 3af7a0672..bd45a50c8 100644 --- a/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings +++ b/MastodonSDK/Sources/MastodonLocalization/Resources/zh-Hans.lproj/Localizable.strings @@ -374,7 +374,7 @@ "Scene.ServerPicker.EmptyState.FindingServers" = "正在查找可用的服务器..."; "Scene.ServerPicker.EmptyState.NoResults" = "无结果"; "Scene.ServerPicker.Input.Placeholder" = "查找或加入你自己的服务器..."; -"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "Search servers or enter URL"; +"Scene.ServerPicker.Input.SearchServersOrEnterUrl" = "搜索服务器或输入 URL"; "Scene.ServerPicker.Label.Category" = "类别"; "Scene.ServerPicker.Label.Language" = "语言"; "Scene.ServerPicker.Label.Users" = "用户"; From 052979fa932a75dde2816a6e2271952f2ce9d72a Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 23 May 2022 12:11:17 +0800 Subject: [PATCH 571/571] chore: update version to 1.4.2 (133) --- AppShared/Info.plist | 2 +- Mastodon.xcodeproj/project.pbxproj | 48 +++++++++++++++--------------- Mastodon/Info.plist | 2 +- MastodonIntent/Info.plist | 2 +- MastodonTests/Info.plist | 2 +- MastodonUITests/Info.plist | 2 +- NotificationService/Info.plist | 2 +- ShareActionExtension/Info.plist | 2 +- 8 files changed, 31 insertions(+), 31 deletions(-) diff --git a/AppShared/Info.plist b/AppShared/Info.plist index c9a926ac5..bc0be73ac 100644 --- a/AppShared/Info.plist +++ b/AppShared/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 5077a935e..2187fa0c5 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4839,7 +4839,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4869,7 +4869,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4977,11 +4977,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 132; + DYLIB_CURRENT_VERSION = 133; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5008,11 +5008,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 132; + DYLIB_CURRENT_VERSION = 133; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5103,7 +5103,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5171,11 +5171,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 132; + DYLIB_CURRENT_VERSION = 133; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5200,7 +5200,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5223,7 +5223,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5247,7 +5247,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5271,7 +5271,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5295,7 +5295,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5319,7 +5319,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5343,7 +5343,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5430,7 +5430,7 @@ CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5497,11 +5497,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 5Z4GVSS33P; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 132; + DYLIB_CURRENT_VERSION = 133; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = AppShared/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -5525,7 +5525,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5548,7 +5548,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5572,7 +5572,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5596,7 +5596,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5619,7 +5619,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 132; + CURRENT_PROJECT_VERSION = 133; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/Mastodon/Info.plist b/Mastodon/Info.plist index 85015ddf4..66fdfcaaf 100644 --- a/Mastodon/Info.plist +++ b/Mastodon/Info.plist @@ -43,7 +43,7 @@ CFBundleVersion - 132 + 133 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/MastodonIntent/Info.plist b/MastodonIntent/Info.plist index 56d632944..1a6ccd5fb 100644 --- a/MastodonIntent/Info.plist +++ b/MastodonIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 NSExtension NSExtensionAttributes diff --git a/MastodonTests/Info.plist b/MastodonTests/Info.plist index c9a926ac5..bc0be73ac 100644 --- a/MastodonTests/Info.plist +++ b/MastodonTests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 diff --git a/MastodonUITests/Info.plist b/MastodonUITests/Info.plist index c9a926ac5..bc0be73ac 100644 --- a/MastodonUITests/Info.plist +++ b/MastodonUITests/Info.plist @@ -17,6 +17,6 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 diff --git a/NotificationService/Info.plist b/NotificationService/Info.plist index b01a76d93..31a95bf2b 100644 --- a/NotificationService/Info.plist +++ b/NotificationService/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 NSExtension NSExtensionPointIdentifier diff --git a/ShareActionExtension/Info.plist b/ShareActionExtension/Info.plist index 1fde80fa2..7df1564a3 100644 --- a/ShareActionExtension/Info.plist +++ b/ShareActionExtension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString 1.4.2 CFBundleVersion - 132 + 133 NSExtension NSExtensionAttributes