From 6264015cd230e14ed70eaecc50afcba567048f36 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:01:08 +0200 Subject: [PATCH 01/71] 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 e3410be12..18b757707 100644 --- a/Localization/StringsConvertor/input/es_AR/app.json +++ b/Localization/StringsConvertor/input/es_AR/app.json @@ -13,7 +13,7 @@ }, "vote_failure": { "title": "Error al votar", - "poll_ended": "La encuesta ha terminado" + "poll_ended": "La encuesta finalizó" }, "discard_post_content": { "title": "Descartar borrador", From d9fb752b855cca172f04c74cd2cbda03bbf0613e Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:01:09 +0200 Subject: [PATCH 02/71] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es_AR/Localizable.stringsdict | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict index d1c258f4b..b1f92cc79 100644 --- a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict @@ -5,7 +5,7 @@ a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + El límite de entrada excede %#@character_count@ caracteres character_count NSStringFormatSpecTypeKey @@ -13,15 +13,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@ + El límite de entrada permite %#@character_count@ caracteres character_count NSStringFormatSpecTypeKey @@ -29,9 +29,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 - 1 post + 1 mensaje other - %ld posts + %ld mensajes plural.count.favorite @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 following + siguiendo a 1 other - %ld following + siguiendo a %ld plural.count.follower @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 seguidor other - %ld followers + %ld seguidores date.year.left @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + 1 año restante other - %ld years left + %ld años restantes date.month.left @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + 1 mes restante other - %ld months left + %ld meses restantes date.day.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + 1 día restante other - %ld days left + %ld días restantes date.hour.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + 1 hora restante other - %ld hours left + %ld horas restantes date.minute.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + 1 minuto restante other - %ld minutes left + %ld minutos restantes date.second.left @@ -269,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 second left + 1 segundo restante other - %ld seconds left + %ld segundos restantes From ad8fe9cc1e3ed6893bac0da180fff3ca732010cf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:01:10 +0200 Subject: [PATCH 03/71] New translations Intents.strings (Spanish, Argentina) --- .../Intents/input/es_AR/Intents.strings | 50 +++++++++---------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings b/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings index e19069797..64c0376c0 100644 --- a/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/es_AR/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Enviar a Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Contenido del texto"; -"CsR7G2" = "Post"; +"CsR7G2" = "Enviar"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "¿Qué contenido enviar?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Error al enviar mensaje"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Motivo del error"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Enviar mensaje con contenido de texto"; -"RxSqsb" = "Post"; +"RxSqsb" = "Enviar"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Enviar ${content} a Mastodon"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Enviar"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Visibilidad"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Visibilidad del mensaje"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con \"Público\"."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con \"Sólo para seguidores\"."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, público"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, sólo para seguidores"; -"dUyuGg" = "Post"; +"dUyuGg" = "Enviar"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Público"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Sólo para seguidores"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Error al enviar mensaje. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "El mensaje se envió exitosamente."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Sólo para confirmar, ¿querías que este mensaje sea PÚBLICO?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Sólo para confirmar, ¿querías que este mensaje sea SÓLO PARA SEGUIDORES?"; -"rM6dvp" = "URL"; +"rM6dvp" = "Dirección web"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "El mensaje se envió exitosamente. "; From af4b679b353b4249dbdcf2d1cc82bc505e3cbabc Mon Sep 17 00:00:00 2001 From: CMK Date: Mon, 9 Aug 2021 20:37:33 +0800 Subject: [PATCH 04/71] chore: update i18n template for "%ld time ago" --- Localization/Localizable.stringsdict | 132 +++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/Localization/Localizable.stringsdict b/Localization/Localizable.stringsdict index cfa87b017..44fb608bc 100644 --- a/Localization/Localizable.stringsdict +++ b/Localization/Localizable.stringsdict @@ -376,5 +376,137 @@ %ld seconds left + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + zero + 0y ago + 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 + zero + 0M ago + 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 + zero + 0d ago + 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 + zero + 0h ago + 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 + zero + 0m ago + 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 + zero + 0s ago + one + 1s ago + few + %lds ago + many + %lds ago + other + %lds ago + + From 3a21f111da0419d2828dafe4761006730f648075 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:44 +0200 Subject: [PATCH 05/71] New translations app.json (Romanian) --- Localization/StringsConvertor/input/ro_RO/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ro_RO/app.json b/Localization/StringsConvertor/input/ro_RO/app.json index b63492065..45ca41c87 100644 --- a/Localization/StringsConvertor/input/ro_RO/app.json +++ b/Localization/StringsConvertor/input/ro_RO/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From b1e72f868fa9c0e4e472d8069bc7b828c065fb1a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:45 +0200 Subject: [PATCH 06/71] New translations Localizable.stringsdict (Hindi) --- .../input/hi_IN/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict b/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict index 42c07cec9..c7c84d074 100644 --- a/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/hi_IN/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 cdcaeed33c7ef687d0bf446aaa4596aa9dcbfc6f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:46 +0200 Subject: [PATCH 07/71] New translations Localizable.stringsdict (Japanese) --- .../input/ja_JP/Localizable.stringsdict | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict index 82230ebcd..bebde18a5 100644 --- a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict @@ -240,5 +240,89 @@ %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 5523e994cb7a2c5b37bfb34c48dc0a6001f06a21 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:47 +0200 Subject: [PATCH 08/71] New translations Localizable.stringsdict (Portuguese) --- .../input/pt_PT/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict index 42c07cec9..c7c84d074 100644 --- a/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt_PT/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 54fc341d2cb7714a3c35be09da22941bc7971bb0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:48 +0200 Subject: [PATCH 09/71] New translations Localizable.stringsdict (Russian) --- .../input/ru_RU/Localizable.stringsdict | 120 ++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict index 0b48ac969..85ca434a2 100644 --- a/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ru_RU/Localizable.stringsdict @@ -342,5 +342,125 @@ %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 d5c1dfdcb1bdb6bd9a6eacf08e0363e9b00c9b1f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:49 +0200 Subject: [PATCH 10/71] New translations Localizable.stringsdict (Chinese Simplified) --- .../input/zh_CN/Localizable.stringsdict | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict index bb8064914..b7c1398f7 100644 --- a/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh_CN/Localizable.stringsdict @@ -240,5 +240,89 @@ 剩余 %ld 秒 + 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 589565d4982b87f953f7c3887c7a6fe0c04ed716 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:50 +0200 Subject: [PATCH 11/71] New translations Localizable.stringsdict (Portuguese, Brazilian) --- .../input/pt_BR/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict b/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict index 42c07cec9..c7c84d074 100644 --- a/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/pt_BR/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 d39aa9ddc281d0bdfd6aa913e4cc37c7add74cef Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:51 +0200 Subject: [PATCH 12/71] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es_AR/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict index b1f92cc79..62ffdcbfd 100644 --- a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict @@ -274,5 +274,101 @@ %ld segundos restantes + 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 935ec1e3b1a0c9865290d4d864e003551f6f4f90 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:52 +0200 Subject: [PATCH 13/71] New translations Localizable.stringsdict (Welsh) --- .../input/cy_GB/Localizable.stringsdict | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) diff --git a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict index ac93b644b..537064efb 100644 --- a/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/cy_GB/Localizable.stringsdict @@ -410,5 +410,149 @@ %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 303bc65fc86feab385e46413bce666b0936e33ea Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:53 +0200 Subject: [PATCH 14/71] New translations Localizable.stringsdict (Arabic) --- .../input/ar_SA/Localizable.stringsdict | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) diff --git a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict index ac93b644b..537064efb 100644 --- a/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ar_SA/Localizable.stringsdict @@ -410,5 +410,149 @@ %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 1f8aa68776314749d509f285cdd8abecafed8956 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:53 +0200 Subject: [PATCH 15/71] New translations Localizable.stringsdict (Korean) --- .../input/ko_KR/Localizable.stringsdict | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict index 2a55b670b..4b19bab17 100644 --- a/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ko_KR/Localizable.stringsdict @@ -240,5 +240,89 @@ %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 62a8fbf60b7645f8e3dd304cc6988a58c80bbdcf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:54 +0200 Subject: [PATCH 16/71] New translations Localizable.stringsdict (Catalan) --- .../input/ca_ES/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict index 012a0d4c8..5c232edcc 100644 --- a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict @@ -274,5 +274,101 @@ %ld segons restants + 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 8bf41ae592637cbc1bf492e22e70b7ecc6e6de51 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:55 +0200 Subject: [PATCH 17/71] New translations Localizable.stringsdict (Romanian) --- .../input/ro_RO/Localizable.stringsdict | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) diff --git a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict b/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict index c263567d2..f623187e7 100644 --- a/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ro_RO/Localizable.stringsdict @@ -308,5 +308,113 @@ %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 4fc16314623fb6fb1a70da145848eea70d27a2de Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:57 +0200 Subject: [PATCH 18/71] New translations Localizable.stringsdict (Scottish Gaelic) --- .../input/gd_GB/Localizable.stringsdict | 120 ++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict index 214befaad..bba1d1674 100644 --- a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict @@ -342,5 +342,125 @@ %ld seconds left + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + 1y ago + two + %ldy 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 + two + %ldM 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 + two + %ldd 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 + two + %ldh 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 + two + %ldm 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 + two + %lds ago + few + %lds ago + other + %lds ago + + From 3439dcba3f14b7e313b394c72ced8ce25de2d927 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:58 +0200 Subject: [PATCH 19/71] New translations Localizable.stringsdict (English) --- .../input/en_US/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict b/Localization/StringsConvertor/input/en_US/Localizable.stringsdict index 42c07cec9..c7c84d074 100644 --- a/Localization/StringsConvertor/input/en_US/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/en_US/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 30c117009d0f6a84956ec4b8f177ac13577df495 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 14:59:59 +0200 Subject: [PATCH 20/71] New translations Localizable.stringsdict (Chinese Traditional) --- .../input/zh_TW/Localizable.stringsdict | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict index 82230ebcd..bebde18a5 100644 --- a/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/zh_TW/Localizable.stringsdict @@ -240,5 +240,89 @@ %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 57a6ced5f6314f057ae50a3d9c82adfb1d751767 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:00 +0200 Subject: [PATCH 21/71] New translations Localizable.stringsdict (German) --- .../input/de_DE/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict index e0e798625..22977c98d 100644 --- a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 9dcbb4b96344d1b723eab15061ad8ff1a75cf0e0 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:01 +0200 Subject: [PATCH 22/71] New translations Localizable.stringsdict (Spanish) --- .../input/es_ES/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict index 9097a22c4..21036aac5 100644 --- a/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_ES/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 bd19af4260b4fbcf22f73ec682d202684c44f4a2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:06 +0200 Subject: [PATCH 23/71] New translations app.json (Portuguese) --- Localization/StringsConvertor/input/pt_PT/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/pt_PT/app.json b/Localization/StringsConvertor/input/pt_PT/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/pt_PT/app.json +++ b/Localization/StringsConvertor/input/pt_PT/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From 4adc254780ab92096c6d84a8f656dc1240433603 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:08 +0200 Subject: [PATCH 24/71] New translations app.json (Arabic) --- Localization/StringsConvertor/input/ar_SA/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ar_SA/app.json b/Localization/StringsConvertor/input/ar_SA/app.json index e370035cb..dad1465f9 100644 --- a/Localization/StringsConvertor/input/ar_SA/app.json +++ b/Localization/StringsConvertor/input/ar_SA/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "لا توجد هناك منشورات", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From 37be6ae85bc46bdd07f11ddefdd21ac77f4f1f1f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:11 +0200 Subject: [PATCH 25/71] New translations app.json (Korean) --- Localization/StringsConvertor/input/ko_KR/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/ko_KR/app.json b/Localization/StringsConvertor/input/ko_KR/app.json index 91fd4f147..56dc04f21 100644 --- a/Localization/StringsConvertor/input/ko_KR/app.json +++ b/Localization/StringsConvertor/input/ko_KR/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "게시물이 없습니다", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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의 계정은 정지된 상태입니다." } From 0491e48f4bcd7731efa82f975bf95f19aaab086c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:14 +0200 Subject: [PATCH 26/71] New translations Localizable.stringsdict (French) --- .../input/fr_FR/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict b/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict index 56e176d1e..d6fb911f3 100644 --- a/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/fr_FR/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 025a4ce59e8abcd6814a9e1fbb176cebf839ae3c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:16 +0200 Subject: [PATCH 27/71] New translations app.json (Chinese Traditional) --- Localization/StringsConvertor/input/zh_TW/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/zh_TW/app.json b/Localization/StringsConvertor/input/zh_TW/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/zh_TW/app.json +++ b/Localization/StringsConvertor/input/zh_TW/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From 9b829fbdcdc6890e26ad269d5a523622488b5c2a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:17 +0200 Subject: [PATCH 28/71] New translations app.json (English) --- Localization/StringsConvertor/input/en_US/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/en_US/app.json b/Localization/StringsConvertor/input/en_US/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/en_US/app.json +++ b/Localization/StringsConvertor/input/en_US/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From f05c0d66340d140a97f1dc7bd219177547c1acd5 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:18 +0200 Subject: [PATCH 29/71] New translations app.json (Portuguese, Brazilian) --- Localization/StringsConvertor/input/pt_BR/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/pt_BR/app.json b/Localization/StringsConvertor/input/pt_BR/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/pt_BR/app.json +++ b/Localization/StringsConvertor/input/pt_BR/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From e71c538f9e5f025fe9886597793df973798af01b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:20 +0200 Subject: [PATCH 30/71] New translations app.json (Hindi) --- Localization/StringsConvertor/input/hi_IN/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/hi_IN/app.json b/Localization/StringsConvertor/input/hi_IN/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/hi_IN/app.json +++ b/Localization/StringsConvertor/input/hi_IN/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From bdb15d8bdffecd65b50655ad39740a5c44087fbf Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:21 +0200 Subject: [PATCH 31/71] New translations app.json (Welsh) --- Localization/StringsConvertor/input/cy_GB/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/cy_GB/app.json b/Localization/StringsConvertor/input/cy_GB/app.json index 3d99c77da..d7ba2147e 100644 --- a/Localization/StringsConvertor/input/cy_GB/app.json +++ b/Localization/StringsConvertor/input/cy_GB/app.json @@ -179,10 +179,10 @@ }, "header": { "no_status_found": "No Post Found", - "blocking_warning": "You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them.", - "user_blocking_warning": "You can’t view %s’s profile\n until you unblock them.\nYour profile looks like this to them.", - "blocked_warning": "You can’t view this user’s profile\n until they unblock you.", - "user_blocked_warning": "You can’t view %s’s profile\n until they unblock you.", + "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." } From 38dd56a0bfae06853032983ed60b11f1bbbedf06 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 15:00:22 +0200 Subject: [PATCH 32/71] New translations Localizable.stringsdict (Dutch) --- .../input/nl_NL/Localizable.stringsdict | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict b/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict index e69582f04..1726606b4 100644 --- a/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/nl_NL/Localizable.stringsdict @@ -274,5 +274,101 @@ %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 f60161b2f021d3a8aefd8f162d2531ab220493be Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 16:18:54 +0200 Subject: [PATCH 33/71] New translations Localizable.stringsdict (Spanish, Argentina) --- .../input/es_AR/Localizable.stringsdict | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict index 62ffdcbfd..f98962ccb 100644 --- a/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/es_AR/Localizable.stringsdict @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + hace 1 año other - %ldy ago + hace %ld años date.month.ago.abbr @@ -301,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1M ago + hace 1 mes other - %ldM ago + hace %ld meses date.day.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + hace 1 día other - %ldd ago + hace %ld días date.hour.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + hace 1 hora other - %ldh ago + hace %ld horas date.minute.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + hace 1 minuto other - %ldm ago + hace %ld minutos date.second.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + hace 1 segundo other - %lds ago + hace %ld segundos From 39e2bbad9e3dd9bda2ccfe0cb2f64e267f0fa5dc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 16:18:55 +0200 Subject: [PATCH 34/71] New translations Localizable.stringsdict (Catalan) --- .../input/ca_ES/Localizable.stringsdict | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict index 5c232edcc..b76b0a921 100644 --- a/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ca_ES/Localizable.stringsdict @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + fa 1a other - %ldy ago + fa %ldy anys date.month.ago.abbr @@ -301,9 +301,9 @@ NSStringFormatValueTypeKey ld one - 1M ago + fa 1M other - %ldM ago + fa %ldM mesos date.day.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + fa 1d other - %ldd ago + fa %ldd dies date.hour.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + fa 1h other - %ldh ago + fa %ldh hores date.minute.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + fa 1m other - %ldm ago + fa %ldm minuts date.second.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + fa 1s other - %lds ago + fa %lds seg From 3ac643b12faf5fd274de7fb37aee3cb90b3dcf77 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 17:15:47 +0200 Subject: [PATCH 35/71] New translations Localizable.stringsdict (German) --- .../input/de_DE/Localizable.stringsdict | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict index 22977c98d..0ef4f96a6 100644 --- a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict @@ -13,9 +13,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 Zeichen other - %ld characters + %ld Zeichen a11y.plural.count.input_limit_remains @@ -29,9 +29,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 Zeichen other - %ld characters + %ld Zeichen plural.count.metric_formatted.post @@ -301,7 +301,7 @@ NSStringFormatValueTypeKey ld one - 1M ago + vor 1 M other %ldM ago From 7a9ba6d6dc7b011726dbd9d3b0dd22a1591a6e85 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 18:17:24 +0200 Subject: [PATCH 36/71] New translations app.json (German) --- .../StringsConvertor/input/de_DE/app.json | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index c955e12a5..e4547202d 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -6,7 +6,7 @@ "please_try_again_later": "Bitte versuche es später nochmal." }, "sign_up_failure": { - "title": "Anmeldefehler" + "title": "Registrierungsfehler" }, "server_error": { "title": "Serverfehler" @@ -16,15 +16,15 @@ "poll_ended": "Die Umfrage ist beendet" }, "discard_post_content": { - "title": "Entwurf Verwerfen", - "message": "Bestätige um den Beitrag zu verwerfen." + "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 hinzugefügt werden." + "more_than_one_video": "Es kann nicht mehr als ein Video angehängt werden." } }, "edit_profile_failure": { @@ -37,7 +37,7 @@ "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 Folgenden von dieser Domain werden entfernt.", + "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": { @@ -57,7 +57,7 @@ "actions": { "back": "Zurück", "next": "Weiter", - "previous": "Zurück", + "previous": "Vorheriges", "open": "Öffnen", "add": "Hinzufügen", "remove": "Entfernen", @@ -158,7 +158,7 @@ "block_user": "%s blockieren", "block_domain": "%s blockieren", "unblock": "Blockierung aufheben", - "unblock_user": "@%s entblocken", + "unblock_user": "Blockierung von %s aufheben", "blocked": "Blockiert", "mute": "Stummschalten", "mute_user": "%s stummschalten", @@ -180,9 +180,9 @@ "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\n solange du diesen Benutzer nicht entsperrst.\nDein Profil sieht für diesen Benutzer auch so aus.", - "blocked_warning": "Das Profil dieses Benutzers\n kann nicht angezeigt werden, bis er dich entsperrt.", - "user_blocked_warning": "Du kannst das Profil von %s nicht sehen\n bis der Benutzer dich entsperrt.", + "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." } @@ -201,7 +201,7 @@ "all_accessiblity_description": "Kategorie: Alle", "academia": "Wissenschaft", "activism": "Aktivismus", - "food": "Kochen", + "food": "Essen", "furry": "Furry", "games": "Spiele", "general": "Allgemein", @@ -225,7 +225,7 @@ }, "empty_state": { "finding_servers": "Verfügbare Server werden gesucht...", - "bad_network": "Da ist etwas schief gelaufen. Bitte versuche es erneut oder überprüfe deine Internetverbindung.", + "bad_network": "Beim Laden der Daten ist etwas schief gelaufen. Überprüfe deine Internetverbindung.", "no_results": "Keine Ergebnisse" } }, From 6717ead8ecc1e82fd46ecd532dcda6a243223417 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 18:17:25 +0200 Subject: [PATCH 37/71] New translations Localizable.stringsdict (German) --- .../input/de_DE/Localizable.stringsdict | 62 +++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict index 0ef4f96a6..e89bdb074 100644 --- a/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/de_DE/Localizable.stringsdict @@ -5,7 +5,7 @@ a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + Eingabelimit überschritten %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -21,7 +21,7 @@ a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + Eingabelimit eingehalten %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -61,9 +61,9 @@ NSStringFormatValueTypeKey ld one - 1 post + 1 Beitrag other - %ld posts + %ld Beiträge plural.count.favorite @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 following + 1 folgt other - %ld following + %ld folgen plural.count.follower @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 Follower other - %ld followers + %ld Follower date.year.left @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + noch 1 Jahr übrig other - %ld years left + noch %ld Jahre übrig date.month.left @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + noch 1 Monat übrig other - %ld months left + noch %ld Monate übrig date.day.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + noch 1 Tag übrig other - %ld days left + noch %ld Tage übrig date.hour.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + noch 1 Stunde übrig other - %ld hours left + noch %ld Stunden übrig date.minute.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + noch 1 Minute übrig other - %ld minutes left + noch %ld Minuten übrig date.second.left @@ -269,9 +269,9 @@ NSStringFormatValueTypeKey ld one - 1 second left + noch 1 Sekunde übrig other - %ld seconds left + noch %ld Sekunden übrig date.year.ago.abbr @@ -285,9 +285,9 @@ NSStringFormatValueTypeKey ld one - 1y ago + vor 1 Jahr other - %ldy ago + vor %ld Jahren date.month.ago.abbr @@ -303,7 +303,7 @@ one vor 1 M other - %ldM ago + vor %ld Monaten date.day.ago.abbr @@ -317,9 +317,9 @@ NSStringFormatValueTypeKey ld one - 1d ago + vor 1 Tag other - %ldd ago + vor %ld Tagen date.hour.ago.abbr @@ -333,9 +333,9 @@ NSStringFormatValueTypeKey ld one - 1h ago + vor 1 Stunde other - %ldh ago + vor %ld Stunden date.minute.ago.abbr @@ -349,9 +349,9 @@ NSStringFormatValueTypeKey ld one - 1m ago + vor 1 Minute other - %ldm ago + vor %ld Minuten date.second.ago.abbr @@ -365,9 +365,9 @@ NSStringFormatValueTypeKey ld one - 1s ago + vor 1 Sekunde other - %lds ago + vor %ld Sekuden From 3caa0f0380041343c803c2f8edcd061c209bdf70 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 18:17:26 +0200 Subject: [PATCH 38/71] New translations Intents.strings (German) --- .../Intents/input/de_DE/Intents.strings | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings b/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings index e19069797..db8062fbc 100644 --- a/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/de_DE/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Auf Mastodon schreiben"; -"751xkl" = "Text Content"; +"751xkl" = "Textinhalt"; "CsR7G2" = "Post"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Welcher Inhalt soll gepostet werden?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Posten fehlgeschlagen"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Fehlerursache"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Beitrag mit Textinhalt posten"; -"RxSqsb" = "Post"; +"RxSqsb" = "Beitrag"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Schreibe ${content} auf Mastodon"; "ZKJSNu" = "Post"; -"ZS1XaK" = "${content}"; +"ZS1XaK" = "Inhalt: ${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Sichtbarkeit"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Sichtbarkeit des Beitrags"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Es gibt ${count} Optionen, die zu ''öffentlich\" passen."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Es gibt ${count} Optionen, die zu ''nur für Follower\" passen."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, öffentlich"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, nur für Follower"; "dUyuGg" = "Post"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Öffentlich"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Nur für Follower"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Senden fehlgeschlagen. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Beitrag wurde erfolgreich gesendet."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Nur zur Bestätigung, du wolltest \"Öffentlich\"?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Nur zur Bestätigung, du wolltest \"Nur für Follower\"?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Beitrag wurde erfolgreich gesendet. "; From 70a382122056f1eaf5d63d064677569fff26b45d Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 19:22:30 +0200 Subject: [PATCH 39/71] New translations app.json (German) --- Localization/StringsConvertor/input/de_DE/app.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Localization/StringsConvertor/input/de_DE/app.json b/Localization/StringsConvertor/input/de_DE/app.json index e4547202d..4e83609dc 100644 --- a/Localization/StringsConvertor/input/de_DE/app.json +++ b/Localization/StringsConvertor/input/de_DE/app.json @@ -277,7 +277,7 @@ "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", + "email_invalid": "Dies ist keine gültige E-Mail-Adresse", "password_too_short": "Passwort ist zu kurz (mindestens 8 Zeichen erforderlich)" } } @@ -294,7 +294,7 @@ }, "confirm_email": { "title": "Noch eine letzte Sache.", - "subtitle": "Wir haben gerade eine E-Mail an %s gesendet,\ntippe auf den Link, um Dein Konto zu bestätigen.", + "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", "dont_receive_email": "Ich habe keine E-Mail erhalten." @@ -321,8 +321,8 @@ } }, "suggestion_account": { - "title": "Entdecke Benutzer zum Folgen", - "follow_explain": "Wenn du jemandem folgst, siehst du deren Beiträge dann in deinem Home-Feed." + "title": "Finde Personen zum Folgen", + "follow_explain": "Wenn du jemandem folgst, dann siehst du deren Beiträge in deinem Home-Feed." }, "compose": { "title": { From 0f53d6a0109347509394c96410db8c97793bbddb Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 20:20:46 +0200 Subject: [PATCH 40/71] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd_GB/app.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index f3be64be0..ae56b6d66 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -364,7 +364,7 @@ "direct": "Daoine air an dug mi iomradh a-mhàin" }, "auto_complete": { - "space_to_add": "Space to add" + "space_to_add": "Brùth air Space gus a chur ris" }, "accessibility": { "append_attachment": "Cuir ceanglachan ris", @@ -469,7 +469,7 @@ }, "thread": { "back_title": "Post", - "title": "Post o %s" + "title": "Post le %s" }, "settings": { "title": "Roghainnean", From 2f7f71d5a0750939a00f25887c4c7725234a24db Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 21:25:39 +0200 Subject: [PATCH 41/71] New translations app.json (Scottish Gaelic) --- Localization/StringsConvertor/input/gd_GB/app.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/gd_GB/app.json b/Localization/StringsConvertor/input/gd_GB/app.json index ae56b6d66..723f45b47 100644 --- a/Localization/StringsConvertor/input/gd_GB/app.json +++ b/Localization/StringsConvertor/input/gd_GB/app.json @@ -13,7 +13,7 @@ }, "vote_failure": { "title": "Dh’fhàillig leis a’ bhòt", - "poll_ended": "The poll has ended" + "poll_ended": "Thàinig an cunntas-bheachd gu crìoch" }, "discard_post_content": { "title": "Tilg air falbh an dreachd", @@ -455,12 +455,12 @@ "Mentions": "Iomraidhean" }, "action": { - "follow": "followed you", - "favourite": "favorited your post", - "reblog": "reblogged your post", + "follow": "– ’s iad ’gad leantainn a-nis", + "favourite": "– ’s iad air am post agad a chur ris na h-annsachdan aca", + "reblog": "– ’s iad air am post agad a bhrosnachadh", "poll": "Thàinig an cunntas-bheachd agad gu crìoch", - "mention": "mentioned you", - "follow_request": "requested to follow you" + "mention": "– ’s iad air iomradh a thoirt ort", + "follow_request": "– ’s iad air leantainn iarraidh ort" }, "keyobard": { "show_everything": "Seall a h-uile càil", From 12d866057627f4264989085ba458f6caa59298a6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 21:25:41 +0200 Subject: [PATCH 42/71] New translations Localizable.stringsdict (Scottish Gaelic) --- .../input/gd_GB/Localizable.stringsdict | 140 +++++++++--------- 1 file changed, 70 insertions(+), 70 deletions(-) diff --git a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict index bba1d1674..63a998c6e 100644 --- a/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/gd_GB/Localizable.stringsdict @@ -5,7 +5,7 @@ a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + Tha d’ ion-chur %#@character_count@ ro fhada character_count NSStringFormatSpecTypeKey @@ -13,19 +13,19 @@ NSStringFormatValueTypeKey ld one - 1 character + %ld charactar two - %ld characters + %ld charactar few - %ld characters + %ld caractaran other - %ld characters + %ld caractar a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + Tha %#@character_count@ air fhàgail dhut character_count NSStringFormatSpecTypeKey @@ -33,13 +33,13 @@ NSStringFormatValueTypeKey ld one - 1 character + %ld charactar two - %ld characters + %ld charactar few - %ld characters + %ld caractaran other - %ld characters + %ld caractar plural.count.metric_formatted.post @@ -73,13 +73,13 @@ NSStringFormatValueTypeKey ld one - 1 post + %ld phost two - %ld posts + %ld phost few - %ld posts + %ld postaichean other - %ld posts + %ld post plural.count.favorite @@ -193,13 +193,13 @@ NSStringFormatValueTypeKey ld one - 1 following + A’ leantainn %ld two - %ld following + A’ leantainn %ld few - %ld following + A’ leantainn %ld other - %ld following + A’ leantainn %ld plural.count.follower @@ -213,13 +213,13 @@ NSStringFormatValueTypeKey ld one - 1 follower + Tha %ld a’ leantainn air two - %ld followers + Tha %ld a’ leantainn air few - %ld followers + Tha %ld a’ leantainn air other - %ld followers + Tha %ld a’ leantainn air date.year.left @@ -233,13 +233,13 @@ NSStringFormatValueTypeKey ld one - 1 year left + %ld bhliadhna air fhàgail two - %ld years left + %ld bhliadhna air fhàgail few - %ld years left + %ld bliadhnaichean air fhàgail other - %ld years left + %ld bliadhna air fhàgail date.month.left @@ -253,13 +253,13 @@ NSStringFormatValueTypeKey ld one - 1 months left + %ld mhìos air fhàgail two - %ld months left + %ld mhìos air fhàgail few - %ld months left + %ld mìosan air fhàgail other - %ld months left + %ld mìos air fhàgail date.day.left @@ -273,13 +273,13 @@ NSStringFormatValueTypeKey ld one - 1 day left + %ld latha air fhàgail two - %ld days left + %ld latha air fhàgail few - %ld days left + %ld làithean air fhàgail other - %ld days left + %ld latha air fhàgail date.hour.left @@ -293,13 +293,13 @@ NSStringFormatValueTypeKey ld one - 1 hour left + %ld uair a thìde air fhàgail two - %ld hours left + %ld uair a thìde air fhàgail few - %ld hours left + %ld uairean a thìde air fhàgail other - %ld hours left + %ld uair a thìde air fhàgail date.minute.left @@ -313,13 +313,13 @@ NSStringFormatValueTypeKey ld one - 1 minute left + %ld mhionaid air fhàgail two - %ld minutes left + %ld mhionaid air fhàgail few - %ld minutes left + %ld mionaidean air fhàgail other - %ld minutes left + %ld mionaid air fhàgail date.second.left @@ -333,13 +333,13 @@ NSStringFormatValueTypeKey ld one - 1 second left + %ld diog air fhàgail two - %ld seconds left + %ld dhiog air fhàgail few - %ld seconds left + %ld diogan air fhàgail other - %ld seconds left + %ld diog air fhàgail date.year.ago.abbr @@ -353,13 +353,13 @@ NSStringFormatValueTypeKey ld one - 1y ago + %ld bhl. air ais two - %ldy ago + %ld bhl. air ais few - %ldy ago + %ld bl. air ais other - %ldy ago + %ld bl. air ais date.month.ago.abbr @@ -373,13 +373,13 @@ NSStringFormatValueTypeKey ld one - 1M ago + %ld mhì. air ais two - %ldM ago + %ld mhì. air ais few - %ldM ago + %ld mì. air ais other - %ldM ago + %ld mì. air ais date.day.ago.abbr @@ -393,13 +393,13 @@ NSStringFormatValueTypeKey ld one - 1d ago + %ld là air ais two - %ldd ago + %ld là air ais few - %ldd ago + %ld là. air ais other - %ldd ago + %ld là air ais date.hour.ago.abbr @@ -413,13 +413,13 @@ NSStringFormatValueTypeKey ld one - 1h ago + %ldu air ais two - %ldh ago + %ldu air ais few - %ldh ago + %ldu air ais other - %ldh ago + %ldu air ais date.minute.ago.abbr @@ -433,13 +433,13 @@ NSStringFormatValueTypeKey ld one - 1m ago + %ldm air ais two - %ldm ago + %ldm air ais few - %ldm ago + %ldm air ais other - %ldm ago + %ldm air ais date.second.ago.abbr @@ -453,13 +453,13 @@ NSStringFormatValueTypeKey ld one - 1s ago + %ldd air ais two - %lds ago + %ldd air ais few - %lds ago + %ldd air ais other - %lds ago + %ldd air ais From 178aecc327514a306cc8407aa773a8b67504cc98 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 9 Aug 2021 21:25:41 +0200 Subject: [PATCH 43/71] New translations Intents.strings (Scottish Gaelic) --- .../Intents/input/gd_GB/Intents.strings | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings b/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings index e19069797..46f4be66a 100644 --- a/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings +++ b/Localization/StringsConvertor/Intents/input/gd_GB/Intents.strings @@ -1,51 +1,51 @@ "16wxgf" = "Post on Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Susbaint teacsa"; "CsR7G2" = "Post"; "HZSGTr" = "What content to post?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Dh’fhàillig leis a’ phostadh"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Adhbhar an fhàilligidh"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Cuir post le susbaint teacsa"; "RxSqsb" = "Post"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Postaich ${content} air Mastodon"; "ZKJSNu" = "Post"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Faicsinneachd"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Faicsinneachd a’ phuist"; "apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; "apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, poblach"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, luchd-leantainn a-mhàin"; "dUyuGg" = "Post"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Poblach"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Luchd-leantainn a-mhàin"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Fhàillig leis a’ phostadh. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Chaidh am post a chur."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "A bheil “Poblach” fainear dhut le cinnt?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "A bheil “Luchd-leantainn a-mhàin” fainear dhut le cinnt?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Chaidh am post a chur. "; From 72b9d1c471f4d8f6622b4d48d07b1082f4d6c062 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 04:24:14 +0200 Subject: [PATCH 44/71] New translations app.json (Japanese) --- .../StringsConvertor/input/ja_JP/app.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index 3df4e56c9..8bf3b28e8 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -16,12 +16,12 @@ "poll_ended": "投票は終了しました" }, "discard_post_content": { - "title": "トゥートを破棄しますか?", + "title": "投稿を破棄しますか?", "message": "この操作は取り消しできません。下書きは失われます。" }, "publish_post_failure": { "title": "失敗", - "message": "トゥートに失敗しました。\nインターネットに接続されているか確認してください。", + "message": "投稿に失敗しました。\nインターネットに接続されているか確認してください。", "attachments_message": { "video_attach_with_photo": "すでに画像が含まれている投稿に、動画を添付することができません。", "more_than_one_video": "複数の動画を添付することはできません。" @@ -45,7 +45,7 @@ "message": "写真を保存するには、フォトライブラリのアクセス許可を有効にしてください。" }, "delete_post": { - "title": "このトゥートを消去しますか?", + "title": "この投稿を消去しますか?", "delete": "消去" }, "clean_cache": { @@ -79,7 +79,7 @@ "preview": "プレビュー", "share": "共有", "share_user": "%sを共有", - "share_post": "トゥートを共有", + "share_post": "投稿を共有", "open_in_safari": "Safariで開く", "find_people": "フォローする人を見つける", "manually_search": "手動で検索する", @@ -105,12 +105,12 @@ "open_settings": "設定を開く" }, "timeline": { - "previous_status": "前のトゥート", + "previous_status": "前の投稿", "next_status": "次の投稿", "open_status": "投稿を開く", "open_author_profile": "プロフィールを見る", "open_reblogger_profile": "リブロガーのプロフィールを開く", - "reply_status": "トゥートにリプライ", + "reply_status": "投稿に返信", "toggle_reblog": "ブーストを切り替える", "toggle_favorite": "いいねを切り替える", "toggle_content_warning": "閲覧注意を切り替える", @@ -124,7 +124,7 @@ "status": { "user_reblogged": "%sがブースト", "user_replied_to": "%sがリプライ", - "show_post": "トゥートを見る", + "show_post": "投稿を見る", "show_user_profile": "プロフィールを見る", "content_warning": "コンテンツ警告", "media_content_warning": "どこかをタップして表示", @@ -173,12 +173,12 @@ "now": "今" }, "loader": { - "load_missing_posts": "不足しているトゥートを読み込む", + "load_missing_posts": "不足している投稿を読み込む", "loading_missing_posts": "読込中...", "show_more_replies": "リプライをもっとみる" }, "header": { - "no_status_found": "トゥートが見つかりません", + "no_status_found": "投稿が見つかりません", "blocking_warning": "ブロックを解除するまでこのユーザーをみることはできません。\nそういうことです。", "user_blocking_warning": "%sがブロックを解除しない限りプロフィールをみることはできません。\nそういうことです。", "blocked_warning": "ブロックされているようです...", @@ -361,7 +361,7 @@ "public": "パブリック", "unlisted": "非表示", "private": "フォロワーのみ", - "direct": "メンションしてる人のみ" + "direct": "ダイレクト" }, "auto_complete": { "space_to_add": "スペースを追加" From 688a124539d920bc184f32513a2e665f9ed13406 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:21 +0200 Subject: [PATCH 45/71] New translations app.json (Japanese) --- .../StringsConvertor/input/ja_JP/app.json | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index 8bf3b28e8..f0cff76a3 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -101,7 +101,7 @@ "common": { "switch_to_tab": "%sに切り替え", "compose_new_post": "新しい投稿を作成", - "show_favorites": "いいねを表示", + "show_favorites": "お気に入りを表示", "open_settings": "設定を開く" }, "timeline": { @@ -109,10 +109,10 @@ "next_status": "次の投稿", "open_status": "投稿を開く", "open_author_profile": "プロフィールを見る", - "open_reblogger_profile": "リブロガーのプロフィールを開く", + "open_reblogger_profile": "ブーストした人のプロフィールを開く", "reply_status": "投稿に返信", "toggle_reblog": "ブーストを切り替える", - "toggle_favorite": "いいねを切り替える", + "toggle_favorite": "お気に入り登録を切り替える", "toggle_content_warning": "閲覧注意を切り替える", "preview_image": "画像をプレビュー" }, @@ -136,8 +136,8 @@ "reply": "リプライ", "reblog": "ブースト", "unreblog": "ブーストを戻す", - "favorite": "いいね", - "unfavorite": "いいねと取り消す", + "favorite": "お気に入り", + "unfavorite": "お気に入り登録を取り消す", "menu": "メニュー" }, "tag": { @@ -315,9 +315,9 @@ "title": "ホーム", "navigation_bar_state": { "offline": "オフライン", - "new_posts": "新しいトゥートを見る", - "published": "トゥートしました!", - "Publishing": "トゥートちう..." + "new_posts": "新しい投稿を見る", + "published": "投稿しました!", + "Publishing": "投稿中..." } }, "suggestion_account": { @@ -326,7 +326,7 @@ }, "compose": { "title": { - "new_post": "新しいトゥート", + "new_post": "新しい投稿", "new_reply": "新しいリプライ" }, "media_selection": { @@ -335,7 +335,7 @@ "browse": "ブラウズ" }, "content_input_placeholder": "気になることを入力またはペースト", - "compose_action": "トゥート", + "compose_action": "投稿", "replying_to_user": "%sにリプライ", "attachment": { "photo": "写真", @@ -376,8 +376,8 @@ "post_visibility_menu": "投稿の表示メニュー" }, "keyboard": { - "discard_post": "トゥートを破棄", - "publish_post": "トゥート", + "discard_post": "投稿を破棄", + "publish_post": "投稿する", "toggle_poll": "投票を切り替える", "toggle_content_warning": "閲覧注意を切り替える", "append_attachment_entry": "アタッチメントを追加 - %s", @@ -386,7 +386,7 @@ }, "profile": { "dashboard": { - "posts": "トゥート", + "posts": "投稿", "following": "フォロー中", "followers": "フォロワー" }, @@ -398,7 +398,7 @@ } }, "segmented_control": { - "posts": "トゥート", + "posts": "投稿", "replies": "リプライ", "media": "メディア" }, @@ -437,7 +437,7 @@ "all": "すべて", "people": "人々", "hashtags": "ハッシュタグ", - "posts": "トゥート" + "posts": "投稿" }, "empty_state": { "no_results": "なし" @@ -447,7 +447,7 @@ } }, "favorite": { - "title": "あなたのいいね" + "title": "お気に入り" }, "notification": { "title": { @@ -456,8 +456,8 @@ }, "action": { "follow": "フォローされました", - "favourite": "あなたがいいねしたトゥート", - "reblog": "あなたの投稿をリブログしました。", + "favourite": "がお気に入りに登録", + "reblog": "がブーストしました", "poll": "投票が終了しました", "mention": "メンションされました", "follow_request": "フォローリクエスト" @@ -468,8 +468,8 @@ } }, "thread": { - "back_title": "トゥート", - "title": "%sのトゥート" + "back_title": "投稿", + "title": "%sの投稿" }, "settings": { "title": "設定", @@ -482,7 +482,7 @@ }, "notifications": { "title": "通知", - "favorites": "いいね", + "favorites": "お気に入り登録", "follows": "フォロー", "boosts": "ブースト", "mentions": "メンション", @@ -524,7 +524,7 @@ "title": "%sを報告", "step1": "ステップ 1/2", "step2": "ステップ 2/2", - "content1": "他に報告したいトゥートはありますか?", + "content1": "他に報告したい投稿はありますか?", "content2": "この報告についてモデレーターに言いたいことはありますか?", "send": "報告を送信", "skip_to_send": "コメントなしで送信", From 76f3710041c1ac1fc85736965a760d438c0b8bfc Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:22 +0200 Subject: [PATCH 46/71] New translations ios-infoPlist.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json b/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json index a7390cb56..269fb9076 100644 --- a/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json +++ b/Localization/StringsConvertor/input/ja_JP/ios-infoPlist.json @@ -1,6 +1,6 @@ { "NSCameraUsageDescription": "投稿用の写真撮影に使用します", "NSPhotoLibraryAddUsageDescription": "写真をフォトライブラリーに保存するときに使用します", - "NewPostShortcutItemTitle": "トゥートする", + "NewPostShortcutItemTitle": "新規投稿", "SearchShortcutItemTitle": "検索" } From 7ab742819c1b35d7472f1c69ae8906f2c39b780a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:23 +0200 Subject: [PATCH 47/71] New translations Localizable.stringsdict (Japanese) --- .../input/ja_JP/Localizable.stringsdict | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict index bebde18a5..e3699b6ba 100644 --- a/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict +++ b/Localization/StringsConvertor/input/ja_JP/Localizable.stringsdict @@ -41,7 +41,7 @@ NSStringFormatValueTypeKey ld other - posts + 投稿 plural.count.post @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld favorites + %ld お気に入り plural.count.reblog @@ -83,7 +83,7 @@ NSStringFormatValueTypeKey ld other - %ld reblogs + %ld ブースト plural.count.vote @@ -139,7 +139,7 @@ NSStringFormatValueTypeKey ld other - %ld following + %ld フォロー plural.count.follower @@ -153,7 +153,7 @@ NSStringFormatValueTypeKey ld other - %ld followers + %ld フォロワー date.year.left @@ -251,7 +251,7 @@ NSStringFormatValueTypeKey ld other - %ldy ago + %ld 年前 date.month.ago.abbr From 3fc7846d0dce4f47646f16d59a387a5227c6afa4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:24 +0200 Subject: [PATCH 48/71] New translations app.json (Thai) --- .../StringsConvertor/input/th_TH/app.json | 541 ++++++++++++++++++ 1 file changed, 541 insertions(+) create mode 100644 Localization/StringsConvertor/input/th_TH/app.json diff --git a/Localization/StringsConvertor/input/th_TH/app.json b/Localization/StringsConvertor/input/th_TH/app.json new file mode 100644 index 000000000..d7ba2147e --- /dev/null +++ b/Localization/StringsConvertor/input/th_TH/app.json @@ -0,0 +1,541 @@ +{ + "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": "Are you sure you want to delete this post?", + "delete": "Delete" + }, + "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", + "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", + "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", + "media_content_warning": "Tap anywhere to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + } + }, + "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." + }, + "server_picker": { + "title": "Pick a server,\nany server.", + "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": "Find a server or join your own..." + }, + "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": "Tell us about you.", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "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 rules are set by the admins of %s.", + "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": "We just sent an email to %s,\ntap the link to confirm your account.", + "button": { + "open_email_app": "Open Email App", + "dont_receive_email": "I never got an email" + }, + "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..." + } + }, + "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", + "media": "Media" + }, + "relationship_action_alert": { + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_unblock_usre": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + } + }, + "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" + } + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "action": { + "follow": "followed you", + "favourite": "favorited your post", + "reblog": "reblogged your post", + "poll": "Your poll has ended", + "mention": "mentioned you", + "follow_request": "requested to follow you" + }, + "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" + }, + "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" + }, + "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 %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?", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments" + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + } + } +} \ No newline at end of file From 8674f1b39e7c795ba85690510d44f20a5c0f719f Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:25 +0200 Subject: [PATCH 49/71] New translations ios-infoPlist.json (Thai) --- .../StringsConvertor/input/th_TH/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/th_TH/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/th_TH/ios-infoPlist.json b/Localization/StringsConvertor/input/th_TH/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/th_TH/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 0ac04618c8b705192b52e7c36a0f93d9fabd85c2 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:26 +0200 Subject: [PATCH 50/71] New translations Localizable.stringsdict (Thai) --- .../input/th_TH/Localizable.stringsdict | 328 ++++++++++++++++++ 1 file changed, 328 insertions(+) create mode 100644 Localization/StringsConvertor/input/th_TH/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict b/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict new file mode 100644 index 000000000..bebde18a5 --- /dev/null +++ b/Localization/StringsConvertor/input/th_TH/Localizable.stringsdict @@ -0,0 +1,328 @@ + + + + + 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 + posts + + + 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 favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld reblogs + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld votes + + + 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 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 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 a8247b2019701818ce58e8db65a4ef7e32bccea4 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 05:25:27 +0200 Subject: [PATCH 51/71] New translations Intents.strings (Thai) --- .../Intents/input/th_TH/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/th_TH/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings b/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings new file mode 100644 index 000000000..e19069797 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/th_TH/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post"; + +"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"; + +"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 33c91f286abe73a95967d7b4573d57c76a0b275b Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:16 +0200 Subject: [PATCH 52/71] New translations app.json (Danish) --- .../StringsConvertor/input/da_DK/app.json | 541 ++++++++++++++++++ 1 file changed, 541 insertions(+) create mode 100644 Localization/StringsConvertor/input/da_DK/app.json diff --git a/Localization/StringsConvertor/input/da_DK/app.json b/Localization/StringsConvertor/input/da_DK/app.json new file mode 100644 index 000000000..d7ba2147e --- /dev/null +++ b/Localization/StringsConvertor/input/da_DK/app.json @@ -0,0 +1,541 @@ +{ + "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": "Are you sure you want to delete this post?", + "delete": "Delete" + }, + "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", + "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", + "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", + "media_content_warning": "Tap anywhere to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + } + }, + "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." + }, + "server_picker": { + "title": "Pick a server,\nany server.", + "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": "Find a server or join your own..." + }, + "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": "Tell us about you.", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "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 rules are set by the admins of %s.", + "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": "We just sent an email to %s,\ntap the link to confirm your account.", + "button": { + "open_email_app": "Open Email App", + "dont_receive_email": "I never got an email" + }, + "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..." + } + }, + "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", + "media": "Media" + }, + "relationship_action_alert": { + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_unblock_usre": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + } + }, + "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" + } + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "action": { + "follow": "followed you", + "favourite": "favorited your post", + "reblog": "reblogged your post", + "poll": "Your poll has ended", + "mention": "mentioned you", + "follow_request": "requested to follow you" + }, + "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" + }, + "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" + }, + "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 %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?", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments" + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + } + } +} \ No newline at end of file From 77802f73c4c02719dcfffb466ead3359f373edb3 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:17 +0200 Subject: [PATCH 53/71] New translations app.json (Japanese) --- Localization/StringsConvertor/input/ja_JP/app.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Localization/StringsConvertor/input/ja_JP/app.json b/Localization/StringsConvertor/input/ja_JP/app.json index f0cff76a3..3d8e7a53f 100644 --- a/Localization/StringsConvertor/input/ja_JP/app.json +++ b/Localization/StringsConvertor/input/ja_JP/app.json @@ -387,7 +387,7 @@ "profile": { "dashboard": { "posts": "投稿", - "following": "フォロー中", + "following": "フォロー", "followers": "フォロワー" }, "fields": { From 36834af3c4678aaf889cd1db3280bf9e88919f79 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:18 +0200 Subject: [PATCH 54/71] New translations ios-infoPlist.json (Danish) --- .../StringsConvertor/input/da_DK/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/da_DK/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/da_DK/ios-infoPlist.json b/Localization/StringsConvertor/input/da_DK/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/da_DK/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 72ed22e4f13cda944b20967d596c1652d73a5d0a Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:19 +0200 Subject: [PATCH 55/71] New translations Localizable.stringsdict (Danish) --- .../input/da_DK/Localizable.stringsdict | 374 ++++++++++++++++++ 1 file changed, 374 insertions(+) create mode 100644 Localization/StringsConvertor/input/da_DK/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict b/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict new file mode 100644 index 000000000..c7c84d074 --- /dev/null +++ b/Localization/StringsConvertor/input/da_DK/Localizable.stringsdict @@ -0,0 +1,374 @@ + + + + + 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.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.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 867b5ea8468fe2c8fcbe5253016d146d8918c029 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:20 +0200 Subject: [PATCH 56/71] New translations Intents.strings (Danish) --- .../Intents/input/da_DK/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/da_DK/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings b/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings new file mode 100644 index 000000000..e19069797 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/da_DK/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post"; + +"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"; + +"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 d9072f019b0e976d409d3fa1011ec4ba9b19be45 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:21 +0200 Subject: [PATCH 57/71] New translations app.json (Indonesian) --- .../StringsConvertor/input/id_ID/app.json | 541 ++++++++++++++++++ 1 file changed, 541 insertions(+) create mode 100644 Localization/StringsConvertor/input/id_ID/app.json diff --git a/Localization/StringsConvertor/input/id_ID/app.json b/Localization/StringsConvertor/input/id_ID/app.json new file mode 100644 index 000000000..d7ba2147e --- /dev/null +++ b/Localization/StringsConvertor/input/id_ID/app.json @@ -0,0 +1,541 @@ +{ + "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": "Are you sure you want to delete this post?", + "delete": "Delete" + }, + "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", + "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", + "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", + "media_content_warning": "Tap anywhere to reveal", + "poll": { + "vote": "Vote", + "closed": "Closed" + }, + "actions": { + "reply": "Reply", + "reblog": "Reblog", + "unreblog": "Undo reblog", + "favorite": "Favorite", + "unfavorite": "Unfavorite", + "menu": "Menu" + }, + "tag": { + "url": "URL", + "mention": "Mention", + "link": "Link", + "hashtag": "Hashtag", + "email": "Email", + "emoji": "Emoji" + } + }, + "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." + }, + "server_picker": { + "title": "Pick a server,\nany server.", + "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": "Find a server or join your own..." + }, + "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": "Tell us about you.", + "input": { + "avatar": { + "delete": "Delete" + }, + "username": { + "placeholder": "username", + "duplicate_prompt": "This username is taken." + }, + "display_name": { + "placeholder": "display name" + }, + "email": { + "placeholder": "email" + }, + "password": { + "placeholder": "password", + "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 rules are set by the admins of %s.", + "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": "We just sent an email to %s,\ntap the link to confirm your account.", + "button": { + "open_email_app": "Open Email App", + "dont_receive_email": "I never got an email" + }, + "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..." + } + }, + "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", + "media": "Media" + }, + "relationship_action_alert": { + "confirm_unmute_user": { + "title": "Unmute Account", + "message": "Confirm to unmute %s" + }, + "confirm_unblock_usre": { + "title": "Unblock Account", + "message": "Confirm to unblock %s" + } + } + }, + "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" + } + }, + "favorite": { + "title": "Your Favorites" + }, + "notification": { + "title": { + "Everything": "Everything", + "Mentions": "Mentions" + }, + "action": { + "follow": "followed you", + "favourite": "favorited your post", + "reblog": "reblogged your post", + "poll": "Your poll has ended", + "mention": "mentioned you", + "follow_request": "requested to follow you" + }, + "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" + }, + "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" + }, + "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 %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?", + "send": "Send Report", + "skip_to_send": "Send without comment", + "text_placeholder": "Type or paste additional comments" + }, + "preview": { + "keyboard": { + "close_preview": "Close Preview", + "show_next": "Show Next", + "show_previous": "Show Previous" + } + } + } +} \ No newline at end of file From c3d771524d013196d9408331cc349c2279661634 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:22 +0200 Subject: [PATCH 58/71] New translations ios-infoPlist.json (Indonesian) --- .../StringsConvertor/input/id_ID/ios-infoPlist.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Localization/StringsConvertor/input/id_ID/ios-infoPlist.json diff --git a/Localization/StringsConvertor/input/id_ID/ios-infoPlist.json b/Localization/StringsConvertor/input/id_ID/ios-infoPlist.json new file mode 100644 index 000000000..c6db73de0 --- /dev/null +++ b/Localization/StringsConvertor/input/id_ID/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 1b76ab805661227fde68705f50cb5a4d5795d634 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:23 +0200 Subject: [PATCH 59/71] New translations Localizable.stringsdict (Indonesian) --- .../input/id_ID/Localizable.stringsdict | 328 ++++++++++++++++++ 1 file changed, 328 insertions(+) create mode 100644 Localization/StringsConvertor/input/id_ID/Localizable.stringsdict diff --git a/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict b/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict new file mode 100644 index 000000000..bebde18a5 --- /dev/null +++ b/Localization/StringsConvertor/input/id_ID/Localizable.stringsdict @@ -0,0 +1,328 @@ + + + + + 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 + posts + + + 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 favorites + + + plural.count.reblog + + NSStringLocalizedFormatKey + %#@reblog_count@ + reblog_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld reblogs + + + plural.count.vote + + NSStringLocalizedFormatKey + %#@vote_count@ + vote_count + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + other + %ld votes + + + 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 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 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 a9dbf858d105b0ed33ca35494eb7a6a2b4365def Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 10 Aug 2021 07:32:23 +0200 Subject: [PATCH 60/71] New translations Intents.strings (Indonesian) --- .../Intents/input/id_ID/Intents.strings | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Localization/StringsConvertor/Intents/input/id_ID/Intents.strings diff --git a/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings b/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings new file mode 100644 index 000000000..e19069797 --- /dev/null +++ b/Localization/StringsConvertor/Intents/input/id_ID/Intents.strings @@ -0,0 +1,51 @@ +"16wxgf" = "Post on Mastodon"; + +"751xkl" = "Text Content"; + +"CsR7G2" = "Post"; + +"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"; + +"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 d330e16da55be8de67c671aac93cb2637184f401 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 14:32:29 +0800 Subject: [PATCH 61/71] feat: add stringsdict for intents --- Mastodon.xcodeproj/project.pbxproj | 6 +++ .../xcschemes/xcschememanagement.plist | 8 +-- MastodonIntent/Intents.stringsdict | 54 +++++++++++++++++++ 3 files changed, 64 insertions(+), 4 deletions(-) create mode 100644 MastodonIntent/Intents.stringsdict diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 5622470ef..1649d4fe9 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -420,6 +420,8 @@ DBA1DB80268F84F80052DB59 /* NotificationType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA1DB7F268F84F80052DB59 /* NotificationType.swift */; }; DBA465932696B495002B41DB /* APIService+WebFinger.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA465922696B495002B41DB /* APIService+WebFinger.swift */; }; DBA465952696E387002B41DB /* AppPreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA465942696E387002B41DB /* AppPreference.swift */; }; + DBA4B0F126C24EC80077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F026C24EC80077136E /* Intents.stringsdict */; }; + DBA4B0F226C24EC80077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F026C24EC80077136E /* Intents.stringsdict */; }; DBA5E7A3263AD0A3004598BB /* PhotoLibraryService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A2263AD0A3004598BB /* PhotoLibraryService.swift */; }; DBA5E7A5263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A4263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift */; }; DBA5E7A9263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A8263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift */; }; @@ -1192,6 +1194,7 @@ DBA4B0ED26C153B10077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = nl; path = nl.lproj/Localizable.stringsdict; sourceTree = ""; }; DBA4B0EE26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; DBA4B0EF26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = ""; }; + DBA4B0F026C24EC80077136E /* Intents.stringsdict */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; path = Intents.stringsdict; sourceTree = ""; }; DBA5E7A2263AD0A3004598BB /* PhotoLibraryService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhotoLibraryService.swift; sourceTree = ""; }; DBA5E7A4263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewModel.swift; sourceTree = ""; }; DBA5E7A8263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewController.swift; sourceTree = ""; }; @@ -2633,6 +2636,7 @@ isa = PBXGroup; children = ( DB0009A926AEE5DC009B9D2D /* Intents.intentdefinition */, + DBA4B0F026C24EC80077136E /* Intents.stringsdict */, DB8FABD626AEC864008E5AF4 /* MastodonIntent.entitlements */, DB8FABC926AEC7B2008E5AF4 /* IntentHandler.swift */, DBB8AB4526AECDE200F6D281 /* SendPostIntentHandler.swift */, @@ -3401,6 +3405,7 @@ DB3D100D25BAA75E00EAA174 /* Localizable.strings in Resources */, DB427DDF25BAA00100D1B89D /* Assets.xcassets in Resources */, DB427DDD25BAA00100D1B89D /* Main.storyboard in Resources */, + DBA4B0F126C24EC80077136E /* Intents.stringsdict in Resources */, DB118A8225E4B6E600FAB162 /* Preview Assets.xcassets in Resources */, DB2B3ABC25E37E15007045F9 /* InfoPlist.strings in Resources */, DB68A05D25E9055900CFDF14 /* Settings.bundle in Resources */, @@ -3446,6 +3451,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + DBA4B0F226C24EC80077136E /* Intents.stringsdict in Resources */, DBB8AB4F26AED13F00F6D281 /* Assets.xcassets in Resources */, DBB8AB5126AED14600F6D281 /* Localizable.strings in Resources */, DBB8AB5026AED14400F6D281 /* Localizable.stringsdict in Resources */, diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index aa31690df..0071ec899 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -7,12 +7,12 @@ AppShared.xcscheme_^#shared#^_ orderHint - 33 + 32 CoreDataStack.xcscheme_^#shared#^_ orderHint - 34 + 35 Mastodon - ASDK.xcscheme_^#shared#^_ @@ -87,7 +87,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 32 + 34 MastodonIntents.xcscheme_^#shared#^_ @@ -107,7 +107,7 @@ ShareActionExtension.xcscheme_^#shared#^_ orderHint - 35 + 33 SuppressBuildableAutocreation diff --git a/MastodonIntent/Intents.stringsdict b/MastodonIntent/Intents.stringsdict new file mode 100644 index 000000000..5a39d5e64 --- /dev/null +++ b/MastodonIntent/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 + + + + From 053c5948cbc367561afa7fc4d833340cff3f9d8f Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 14:44:47 +0800 Subject: [PATCH 62/71] chore: update i18n resources --- Mastodon/Generated/Strings.swift | 44 +++++- .../Resources/ar.lproj/Localizable.strings | 8 +- .../ar.lproj/Localizable.stringsdict | 144 ++++++++++++++++++ .../ca.lproj/Localizable.stringsdict | 96 ++++++++++++ .../Resources/de.lproj/Localizable.strings | 34 ++--- .../de.lproj/Localizable.stringsdict | 144 +++++++++++++++--- .../Resources/en.lproj/Localizable.strings | 8 +- .../en.lproj/Localizable.stringsdict | 96 ++++++++++++ .../es-419.lproj/Localizable.strings | 2 +- .../es-419.lproj/Localizable.stringsdict | 144 +++++++++++++++--- .../es.lproj/Localizable.stringsdict | 96 ++++++++++++ .../fr.lproj/Localizable.stringsdict | 96 ++++++++++++ Mastodon/Resources/ja.lproj/InfoPlist.strings | 2 +- .../Resources/ja.lproj/Localizable.strings | 66 ++++---- .../ja.lproj/Localizable.stringsdict | 94 +++++++++++- .../nl.lproj/Localizable.stringsdict | 96 ++++++++++++ .../zh-Hans.lproj/Localizable.stringsdict | 84 ++++++++++ MastodonIntent/de.lproj/Intents.strings | 44 +++--- MastodonIntent/es-419.lproj/Intents.strings | 50 +++--- 19 files changed, 1184 insertions(+), 164 deletions(-) diff --git a/Mastodon/Generated/Strings.swift b/Mastodon/Generated/Strings.swift index 1356cfacf..698b36a35 100644 --- a/Mastodon/Generated/Strings.swift +++ b/Mastodon/Generated/Strings.swift @@ -327,19 +327,19 @@ internal enum L10n { /// Filtered internal static let filtered = L10n.tr("Localizable", "Common.Controls.Timeline.Filtered") internal enum Header { - /// You can’t view this user’s profile\n until they unblock you. + /// You can’t view this user’s profile\nuntil they unblock you. internal static let blockedWarning = L10n.tr("Localizable", "Common.Controls.Timeline.Header.BlockedWarning") - /// You can’t view this user's profile\n until you unblock them.\nYour profile looks like this to them. + /// You can’t view this user's profile\nuntil you unblock them.\nYour profile looks like this to them. internal static let blockingWarning = L10n.tr("Localizable", "Common.Controls.Timeline.Header.BlockingWarning") /// No Post Found internal static let noStatusFound = L10n.tr("Localizable", "Common.Controls.Timeline.Header.NoStatusFound") /// This user has been suspended. internal static let suspendedWarning = L10n.tr("Localizable", "Common.Controls.Timeline.Header.SuspendedWarning") - /// You can’t view %@’s profile\n until they unblock you. + /// You can’t view %@’s profile\nuntil they unblock you. internal static func userBlockedWarning(_ p1: Any) -> String { return L10n.tr("Localizable", "Common.Controls.Timeline.Header.UserBlockedWarning", String(describing: p1)) } - /// You can’t view %@’s profile\n until you unblock them.\nYour profile looks like this to them. + /// You can’t view %@’s profile\nuntil you unblock them.\nYour profile looks like this to them. internal static func userBlockingWarning(_ p1: Any) -> String { return L10n.tr("Localizable", "Common.Controls.Timeline.Header.UserBlockingWarning", String(describing: p1)) } @@ -986,36 +986,72 @@ internal enum L10n { internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.day.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_day_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.day.ago.abbr", p1) + } + } } internal enum Hour { /// Plural format key: "%#@count_hour_left@" internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.hour.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_hour_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.hour.ago.abbr", p1) + } + } } internal enum Minute { /// Plural format key: "%#@count_minute_left@" internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.minute.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_minute_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.minute.ago.abbr", p1) + } + } } internal enum Month { /// Plural format key: "%#@count_month_left@" internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.month.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_month_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.month.ago.abbr", p1) + } + } } internal enum Second { /// Plural format key: "%#@count_second_left@" internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.second.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_second_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.second.ago.abbr", p1) + } + } } internal enum Year { /// Plural format key: "%#@count_year_left@" internal static func `left`(_ p1: Int) -> String { return L10n.tr("Localizable", "date.year.left", p1) } + internal enum Ago { + /// Plural format key: "%#@count_year_ago_abbr@" + internal static func abbr(_ p1: Int) -> String { + return L10n.tr("Localizable", "date.year.ago.abbr", p1) + } + } } } diff --git a/Mastodon/Resources/ar.lproj/Localizable.strings b/Mastodon/Resources/ar.lproj/Localizable.strings index 39702487b..3702fa1b7 100644 --- a/Mastodon/Resources/ar.lproj/Localizable.strings +++ b/Mastodon/Resources/ar.lproj/Localizable.strings @@ -117,16 +117,16 @@ Please check your internet connection."; "Common.Controls.Tabs.Search" = "بحث"; "Common.Controls.Timeline.Filtered" = "Filtered"; "Common.Controls.Timeline.Header.BlockedWarning" = "You can’t view this user’s profile - until they unblock you."; +until they unblock you."; "Common.Controls.Timeline.Header.BlockingWarning" = "You can’t view this user's profile - until you unblock them. +until you unblock them. Your profile looks like this to them."; "Common.Controls.Timeline.Header.NoStatusFound" = "لا توجد هناك منشورات"; "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."; +until they unblock you."; "Common.Controls.Timeline.Header.UserBlockingWarning" = "You can’t view %@’s profile - until you unblock them. +until you unblock them. Your profile looks like this to them."; "Common.Controls.Timeline.Header.UserSuspendedWarning" = "%@’s account has been suspended."; "Common.Controls.Timeline.Loader.LoadMissingPosts" = "Load missing posts"; diff --git a/Mastodon/Resources/ar.lproj/Localizable.stringsdict b/Mastodon/Resources/ar.lproj/Localizable.stringsdict index ac93b644b..537064efb 100644 --- a/Mastodon/Resources/ar.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/ar.lproj/Localizable.stringsdict @@ -410,5 +410,149 @@ %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/Mastodon/Resources/ca.lproj/Localizable.stringsdict b/Mastodon/Resources/ca.lproj/Localizable.stringsdict index 012a0d4c8..b76b0a921 100644 --- a/Mastodon/Resources/ca.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/ca.lproj/Localizable.stringsdict @@ -274,5 +274,101 @@ %ld segons restants + date.year.ago.abbr + + NSStringLocalizedFormatKey + %#@count_year_ago_abbr@ + count_year_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1a + other + fa %ldy anys + + + date.month.ago.abbr + + NSStringLocalizedFormatKey + %#@count_month_ago_abbr@ + count_month_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1M + other + fa %ldM mesos + + + date.day.ago.abbr + + NSStringLocalizedFormatKey + %#@count_day_ago_abbr@ + count_day_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1d + other + fa %ldd dies + + + date.hour.ago.abbr + + NSStringLocalizedFormatKey + %#@count_hour_ago_abbr@ + count_hour_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1h + other + fa %ldh hores + + + date.minute.ago.abbr + + NSStringLocalizedFormatKey + %#@count_minute_ago_abbr@ + count_minute_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1m + other + fa %ldm minuts + + + date.second.ago.abbr + + NSStringLocalizedFormatKey + %#@count_second_ago_abbr@ + count_second_ago_abbr + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + ld + one + fa 1s + other + fa %lds seg + + diff --git a/Mastodon/Resources/de.lproj/Localizable.strings b/Mastodon/Resources/de.lproj/Localizable.strings index 179c19f88..1f79dbe78 100644 --- a/Mastodon/Resources/de.lproj/Localizable.strings +++ b/Mastodon/Resources/de.lproj/Localizable.strings @@ -1,16 +1,16 @@ "Common.Alerts.BlockDomain.BlockEntireDomain" = "Domain blockieren"; -"Common.Alerts.BlockDomain.Title" = "Bist du dir wirklich sicher, dass du die ganze Domain %@ 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 Folgenden von dieser Domain werden entfernt."; +"Common.Alerts.BlockDomain.Title" = "Bist du dir wirklich sicher, dass du die ganze Domain %@ 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."; "Common.Alerts.CleanCache.Message" = "%@ erfolgreich aus dem Cache gelöscht."; "Common.Alerts.CleanCache.Title" = "Zwischenspeicher leeren"; "Common.Alerts.Common.PleaseTryAgain" = "Bitte versuche es erneut."; "Common.Alerts.Common.PleaseTryAgainLater" = "Bitte versuche es später nochmal."; "Common.Alerts.DeletePost.Delete" = "Löschen"; "Common.Alerts.DeletePost.Title" = "Bist du dir sicher, dass du diesen Beitrag löschen möchtest?"; -"Common.Alerts.DiscardPostContent.Message" = "Bestätige um den Beitrag zu verwerfen."; -"Common.Alerts.DiscardPostContent.Title" = "Entwurf Verwerfen"; +"Common.Alerts.DiscardPostContent.Message" = "Bestätige, um den Beitrag zu verwerfen."; +"Common.Alerts.DiscardPostContent.Title" = "Entwurf verwerfen"; "Common.Alerts.EditProfileFailure.Message" = "Profil kann nicht bearbeitet werden. Bitte versuche es erneut."; "Common.Alerts.EditProfileFailure.Title" = "Fehler beim Bearbeiten des Profils"; -"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "Es kann nicht mehr als ein Video hinzugefügt werden."; +"Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "Es kann nicht mehr als ein Video angehängt werden."; "Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "Es kann kein Video an einen Beitrag, der bereits Bilder enthält, angehängt werden."; "Common.Alerts.PublishPostFailure.Message" = "Fehler beim Veröffentlichen des Beitrags. Bitte überprüfe deine Internetverbindung."; @@ -21,7 +21,7 @@ Bitte überprüfe deine Internetverbindung."; "Common.Alerts.SignOut.Confirm" = "Abmelden"; "Common.Alerts.SignOut.Message" = "Bist du sicher, dass du dich abmelden möchten?"; "Common.Alerts.SignOut.Title" = "Abmelden"; -"Common.Alerts.SignUpFailure.Title" = "Anmeldefehler"; +"Common.Alerts.SignUpFailure.Title" = "Registrierungsfehler"; "Common.Alerts.VoteFailure.PollEnded" = "Die Umfrage ist beendet"; "Common.Alerts.VoteFailure.Title" = "Fehler bei Abstimmung"; "Common.Controls.Actions.Add" = "Hinzufügen"; @@ -42,7 +42,7 @@ Bitte überprüfe deine Internetverbindung."; "Common.Controls.Actions.Open" = "Öffnen"; "Common.Controls.Actions.OpenInSafari" = "In Safari öffnen"; "Common.Controls.Actions.Preview" = "Vorschau"; -"Common.Controls.Actions.Previous" = "Zurück"; +"Common.Controls.Actions.Previous" = "Vorheriges"; "Common.Controls.Actions.Remove" = "Entfernen"; "Common.Controls.Actions.Reply" = "Antworten"; "Common.Controls.Actions.ReportUser" = "%@ melden"; @@ -72,7 +72,7 @@ Bitte überprüfe deine Internetverbindung."; "Common.Controls.Friendship.Pending" = "In Warteschlange"; "Common.Controls.Friendship.Request" = "Anfragen"; "Common.Controls.Friendship.Unblock" = "Blockierung aufheben"; -"Common.Controls.Friendship.UnblockUser" = "@%@ entblocken"; +"Common.Controls.Friendship.UnblockUser" = "Blockierung von %@ aufheben"; "Common.Controls.Friendship.Unmute" = "Nicht mehr stummschalten"; "Common.Controls.Friendship.UnmuteUser" = "%@ nicht mehr stummschalten"; "Common.Controls.Keyboard.Common.ComposeNewPost" = "Neuen Beitrag verfassen"; @@ -117,16 +117,16 @@ Bitte überprüfe deine Internetverbindung."; "Common.Controls.Tabs.Search" = "Suche"; "Common.Controls.Timeline.Filtered" = "Gefiltert"; "Common.Controls.Timeline.Header.BlockedWarning" = "Das Profil dieses Benutzers - kann nicht angezeigt werden, bis er dich entsperrt."; +kann nicht angezeigt werden, bis er dich entsperrt."; "Common.Controls.Timeline.Header.BlockingWarning" = "Du kannst das Profil dieses Benutzers nicht sehen solange du den Benutzer nicht entsperrst. Dein Profil sieht für diesen Benutzer auch so aus."; "Common.Controls.Timeline.Header.NoStatusFound" = "Kein Beitrag gefunden"; "Common.Controls.Timeline.Header.SuspendedWarning" = "Dieser Nutzer wurde gesperrt."; -"Common.Controls.Timeline.Header.UserBlockedWarning" = "Du kannst das Profil von %@ nicht sehen - bis der Benutzer dich entsperrt."; +"Common.Controls.Timeline.Header.UserBlockedWarning" = "Du kannst das Profil von %@ nicht sehen +bis der Benutzer dich entsperrt."; "Common.Controls.Timeline.Header.UserBlockingWarning" = "Du kannst %@s Profil nicht sehen - solange du diesen Benutzer nicht entsperrst. +solange du diesen Benutzer nicht entsperrst. Dein Profil sieht für diesen Benutzer auch so aus."; "Common.Controls.Timeline.Header.UserSuspendedWarning" = "Das Konto von %@ wurde gesperrt."; "Common.Controls.Timeline.Loader.LoadMissingPosts" = "Fehlende Beiträge laden"; @@ -184,7 +184,7 @@ kann nicht auf Mastodon hochgeladen werden."; "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 auf den Link, um Dein Konto zu bestätigen."; +tippe darin auf den Link, um Dein Konto zu bestätigen."; "Scene.ConfirmEmail.Title" = "Noch eine letzte Sache."; "Scene.Favorite.Title" = "Deine Favoriten"; "Scene.HomeTimeline.NavigationBarState.NewPosts" = "Neue Beiträge anzeigen"; @@ -234,7 +234,7 @@ tippe auf den Link, um Dein Konto zu bestätigen."; "Scene.Register.Error.Reason.TooLong" = "%@ ist zu lang"; "Scene.Register.Error.Reason.TooShort" = "%@ ist zu kurz"; "Scene.Register.Error.Reason.Unreachable" = "%@ scheint nicht zu existieren"; -"Scene.Register.Error.Special.EmailInvalid" = "Dies ist keine gültige E-Mail Adresse"; +"Scene.Register.Error.Special.EmailInvalid" = "Dies ist keine gültige E-Mail-Adresse"; "Scene.Register.Error.Special.PasswordTooShort" = "Passwort ist zu kurz (mindestens 8 Zeichen erforderlich)"; "Scene.Register.Error.Special.UsernameInvalid" = "Benutzername kann nur alphanumerische Zeichen und Unterstriche enthalten"; "Scene.Register.Error.Special.UsernameTooLong" = "Benutzername ist zu lang (darf nicht länger als 30 Zeichen sein)"; @@ -277,7 +277,7 @@ tippe auf den Link, um Dein Konto zu bestätigen."; "Scene.ServerPicker.Button.Category.All" = "Alle"; "Scene.ServerPicker.Button.Category.AllAccessiblityDescription" = "Kategorie: Alle"; "Scene.ServerPicker.Button.Category.Art" = "Kunst"; -"Scene.ServerPicker.Button.Category.Food" = "Kochen"; +"Scene.ServerPicker.Button.Category.Food" = "Essen"; "Scene.ServerPicker.Button.Category.Furry" = "Furry"; "Scene.ServerPicker.Button.Category.Games" = "Spiele"; "Scene.ServerPicker.Button.Category.General" = "Allgemein"; @@ -288,7 +288,7 @@ tippe auf den Link, um Dein Konto zu bestätigen."; "Scene.ServerPicker.Button.Category.Tech" = "Technologie"; "Scene.ServerPicker.Button.SeeLess" = "Weniger anzeigen"; "Scene.ServerPicker.Button.SeeMore" = "Mehr anzeigen"; -"Scene.ServerPicker.EmptyState.BadNetwork" = "Da ist etwas schief gelaufen. Bitte versuche es erneut oder überprüfe deine Internetverbindung."; +"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..."; @@ -332,8 +332,8 @@ beliebigen Server."; "Scene.Settings.Section.SpicyZone.Signout" = "Abmelden"; "Scene.Settings.Section.SpicyZone.Title" = "Der Gefährliche Bereich"; "Scene.Settings.Title" = "Einstellungen"; -"Scene.SuggestionAccount.FollowExplain" = "Wenn du jemandem folgst, siehst du deren Beiträge dann in deinem Home-Feed."; -"Scene.SuggestionAccount.Title" = "Entdecke Benutzer zum Folgen"; +"Scene.SuggestionAccount.FollowExplain" = "Wenn du jemandem folgst, dann siehst du deren Beiträge in deinem Home-Feed."; +"Scene.SuggestionAccount.Title" = "Finde Personen zum Folgen"; "Scene.Thread.BackTitle" = "Beitrag"; "Scene.Thread.Title" = "Beitrag von %@"; "Scene.Welcome.Slogan" = "Soziale Netzwerke wieder in deinen Händen."; \ No newline at end of file diff --git a/Mastodon/Resources/de.lproj/Localizable.stringsdict b/Mastodon/Resources/de.lproj/Localizable.stringsdict index e0e798625..e89bdb074 100644 --- a/Mastodon/Resources/de.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/de.lproj/Localizable.stringsdict @@ -5,7 +5,7 @@ a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + Eingabelimit überschritten %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -13,15 +13,15 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 Zeichen other - %ld characters + %ld Zeichen a11y.plural.count.input_limit_remains NSStringLocalizedFormatKey - Input limit remains %#@character_count@ + Eingabelimit eingehalten %#@character_count@ character_count NSStringFormatSpecTypeKey @@ -29,9 +29,9 @@ NSStringFormatValueTypeKey ld one - 1 character + 1 Zeichen other - %ld characters + %ld Zeichen plural.count.metric_formatted.post @@ -61,9 +61,9 @@ NSStringFormatValueTypeKey ld one - 1 post + 1 Beitrag other - %ld posts + %ld Beiträge plural.count.favorite @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 following + 1 folgt other - %ld following + %ld folgen plural.count.follower @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 Follower other - %ld followers + %ld Follower date.year.left @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + noch 1 Jahr übrig other - %ld years left + noch %ld Jahre übrig date.month.left @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + noch 1 Monat übrig other - %ld months left + noch %ld Monate übrig date.day.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + noch 1 Tag übrig other - %ld days left + noch %ld Tage übrig date.hour.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + noch 1 Stunde übrig other - %ld hours left + noch %ld Stunden übrig date.minute.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + noch 1 Minute übrig other - %ld minutes left + noch %ld Minuten übrig date.second.left @@ -269,9 +269,105 @@ NSStringFormatValueTypeKey ld one - 1 second left + noch 1 Sekunde übrig other - %ld seconds left + 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/Mastodon/Resources/en.lproj/Localizable.strings b/Mastodon/Resources/en.lproj/Localizable.strings index be3e63ad5..4ebc5aa15 100644 --- a/Mastodon/Resources/en.lproj/Localizable.strings +++ b/Mastodon/Resources/en.lproj/Localizable.strings @@ -117,16 +117,16 @@ Please check your internet connection."; "Common.Controls.Tabs.Search" = "Search"; "Common.Controls.Timeline.Filtered" = "Filtered"; "Common.Controls.Timeline.Header.BlockedWarning" = "You can’t view this user’s profile - until they unblock you."; +until they unblock you."; "Common.Controls.Timeline.Header.BlockingWarning" = "You can’t view this user's profile - until you unblock them. +until you unblock them. Your profile looks like this to them."; "Common.Controls.Timeline.Header.NoStatusFound" = "No Post Found"; "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."; +until they unblock you."; "Common.Controls.Timeline.Header.UserBlockingWarning" = "You can’t view %@’s profile - until you unblock them. +until you unblock them. Your profile looks like this to them."; "Common.Controls.Timeline.Header.UserSuspendedWarning" = "%@’s account has been suspended."; "Common.Controls.Timeline.Loader.LoadMissingPosts" = "Load missing posts"; diff --git a/Mastodon/Resources/en.lproj/Localizable.stringsdict b/Mastodon/Resources/en.lproj/Localizable.stringsdict index 42c07cec9..c7c84d074 100644 --- a/Mastodon/Resources/en.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/en.lproj/Localizable.stringsdict @@ -274,5 +274,101 @@ %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/Mastodon/Resources/es-419.lproj/Localizable.strings b/Mastodon/Resources/es-419.lproj/Localizable.strings index a5a12a4f2..7fcae8325 100644 --- a/Mastodon/Resources/es-419.lproj/Localizable.strings +++ b/Mastodon/Resources/es-419.lproj/Localizable.strings @@ -22,7 +22,7 @@ Por favor, revisá tu conexión a Internet."; "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 ha terminado"; +"Common.Alerts.VoteFailure.PollEnded" = "La encuesta finalizó"; "Common.Alerts.VoteFailure.Title" = "Error al votar"; "Common.Controls.Actions.Add" = "Agregar"; "Common.Controls.Actions.Back" = "Volver"; diff --git a/Mastodon/Resources/es-419.lproj/Localizable.stringsdict b/Mastodon/Resources/es-419.lproj/Localizable.stringsdict index d1c258f4b..f98962ccb 100644 --- a/Mastodon/Resources/es-419.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/es-419.lproj/Localizable.stringsdict @@ -5,7 +5,7 @@ a11y.plural.count.input_limit_exceeds NSStringLocalizedFormatKey - Input limit exceeds %#@character_count@ + El límite de entrada excede %#@character_count@ caracteres character_count NSStringFormatSpecTypeKey @@ -13,15 +13,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@ + El límite de entrada permite %#@character_count@ caracteres character_count NSStringFormatSpecTypeKey @@ -29,9 +29,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 - 1 post + 1 mensaje other - %ld posts + %ld mensajes plural.count.favorite @@ -157,9 +157,9 @@ NSStringFormatValueTypeKey ld one - 1 following + siguiendo a 1 other - %ld following + siguiendo a %ld plural.count.follower @@ -173,9 +173,9 @@ NSStringFormatValueTypeKey ld one - 1 follower + 1 seguidor other - %ld followers + %ld seguidores date.year.left @@ -189,9 +189,9 @@ NSStringFormatValueTypeKey ld one - 1 year left + 1 año restante other - %ld years left + %ld años restantes date.month.left @@ -205,9 +205,9 @@ NSStringFormatValueTypeKey ld one - 1 months left + 1 mes restante other - %ld months left + %ld meses restantes date.day.left @@ -221,9 +221,9 @@ NSStringFormatValueTypeKey ld one - 1 day left + 1 día restante other - %ld days left + %ld días restantes date.hour.left @@ -237,9 +237,9 @@ NSStringFormatValueTypeKey ld one - 1 hour left + 1 hora restante other - %ld hours left + %ld horas restantes date.minute.left @@ -253,9 +253,9 @@ NSStringFormatValueTypeKey ld one - 1 minute left + 1 minuto restante other - %ld minutes left + %ld minutos restantes date.second.left @@ -269,9 +269,105 @@ NSStringFormatValueTypeKey ld one - 1 second left + 1 segundo restante other - %ld seconds left + %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/Mastodon/Resources/es.lproj/Localizable.stringsdict b/Mastodon/Resources/es.lproj/Localizable.stringsdict index 9097a22c4..21036aac5 100644 --- a/Mastodon/Resources/es.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/es.lproj/Localizable.stringsdict @@ -274,5 +274,101 @@ %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/Mastodon/Resources/fr.lproj/Localizable.stringsdict b/Mastodon/Resources/fr.lproj/Localizable.stringsdict index 56e176d1e..d6fb911f3 100644 --- a/Mastodon/Resources/fr.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/fr.lproj/Localizable.stringsdict @@ -274,5 +274,101 @@ %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/Mastodon/Resources/ja.lproj/InfoPlist.strings b/Mastodon/Resources/ja.lproj/InfoPlist.strings index b923598c6..467c1d476 100644 --- a/Mastodon/Resources/ja.lproj/InfoPlist.strings +++ b/Mastodon/Resources/ja.lproj/InfoPlist.strings @@ -1,4 +1,4 @@ "NSCameraUsageDescription" = "投稿用の写真撮影に使用します"; "NSPhotoLibraryAddUsageDescription" = "写真をフォトライブラリーに保存するときに使用します"; -"NewPostShortcutItemTitle" = "トゥートする"; +"NewPostShortcutItemTitle" = "新規投稿"; "SearchShortcutItemTitle" = "検索"; \ No newline at end of file diff --git a/Mastodon/Resources/ja.lproj/Localizable.strings b/Mastodon/Resources/ja.lproj/Localizable.strings index cee195ced..779c9c7e1 100644 --- a/Mastodon/Resources/ja.lproj/Localizable.strings +++ b/Mastodon/Resources/ja.lproj/Localizable.strings @@ -5,14 +5,14 @@ "Common.Alerts.Common.PleaseTryAgain" = "もう一度お試しください。"; "Common.Alerts.Common.PleaseTryAgainLater" = "後でもう一度お試しください。"; "Common.Alerts.DeletePost.Delete" = "消去"; -"Common.Alerts.DeletePost.Title" = "このトゥートを消去しますか?"; +"Common.Alerts.DeletePost.Title" = "この投稿を消去しますか?"; "Common.Alerts.DiscardPostContent.Message" = "この操作は取り消しできません。下書きは失われます。"; -"Common.Alerts.DiscardPostContent.Title" = "トゥートを破棄しますか?"; +"Common.Alerts.DiscardPostContent.Title" = "投稿を破棄しますか?"; "Common.Alerts.EditProfileFailure.Message" = "プロフィールを編集できません。もう一度お試しください。"; "Common.Alerts.EditProfileFailure.Title" = "プロフィールを編集できませんでした"; "Common.Alerts.PublishPostFailure.AttachmentsMessage.MoreThanOneVideo" = "複数の動画を添付することはできません。"; "Common.Alerts.PublishPostFailure.AttachmentsMessage.VideoAttachWithPhoto" = "すでに画像が含まれている投稿に、動画を添付することができません。"; -"Common.Alerts.PublishPostFailure.Message" = "トゥートに失敗しました。 +"Common.Alerts.PublishPostFailure.Message" = "投稿に失敗しました。 インターネットに接続されているか確認してください。"; "Common.Alerts.PublishPostFailure.Title" = "失敗"; "Common.Alerts.SavePhotoFailure.Message" = "写真を保存するには、フォトライブラリのアクセス許可を有効にしてください。"; @@ -51,7 +51,7 @@ "Common.Controls.Actions.SeeMore" = "もっと見る"; "Common.Controls.Actions.Settings" = "設定"; "Common.Controls.Actions.Share" = "共有"; -"Common.Controls.Actions.SharePost" = "トゥートを共有"; +"Common.Controls.Actions.SharePost" = "投稿を共有"; "Common.Controls.Actions.ShareUser" = "%@を共有"; "Common.Controls.Actions.SignIn" = "サインイン"; "Common.Controls.Actions.SignUp" = "サインアップ"; @@ -77,31 +77,31 @@ "Common.Controls.Friendship.UnmuteUser" = "%@のミュートを解除"; "Common.Controls.Keyboard.Common.ComposeNewPost" = "新しい投稿を作成"; "Common.Controls.Keyboard.Common.OpenSettings" = "設定を開く"; -"Common.Controls.Keyboard.Common.ShowFavorites" = "いいねを表示"; +"Common.Controls.Keyboard.Common.ShowFavorites" = "お気に入りを表示"; "Common.Controls.Keyboard.Common.SwitchToTab" = "%@に切り替え"; "Common.Controls.Keyboard.SegmentedControl.NextSection" = "次のセクション"; "Common.Controls.Keyboard.SegmentedControl.PreviousSection" = "前のセクション"; "Common.Controls.Keyboard.Timeline.NextStatus" = "次の投稿"; "Common.Controls.Keyboard.Timeline.OpenAuthorProfile" = "プロフィールを見る"; -"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "リブロガーのプロフィールを開く"; +"Common.Controls.Keyboard.Timeline.OpenRebloggerProfile" = "ブーストした人のプロフィールを開く"; "Common.Controls.Keyboard.Timeline.OpenStatus" = "投稿を開く"; "Common.Controls.Keyboard.Timeline.PreviewImage" = "画像をプレビュー"; -"Common.Controls.Keyboard.Timeline.PreviousStatus" = "前のトゥート"; -"Common.Controls.Keyboard.Timeline.ReplyStatus" = "トゥートにリプライ"; +"Common.Controls.Keyboard.Timeline.PreviousStatus" = "前の投稿"; +"Common.Controls.Keyboard.Timeline.ReplyStatus" = "投稿に返信"; "Common.Controls.Keyboard.Timeline.ToggleContentWarning" = "閲覧注意を切り替える"; -"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "いいねを切り替える"; +"Common.Controls.Keyboard.Timeline.ToggleFavorite" = "お気に入り登録を切り替える"; "Common.Controls.Keyboard.Timeline.ToggleReblog" = "ブーストを切り替える"; -"Common.Controls.Status.Actions.Favorite" = "いいね"; +"Common.Controls.Status.Actions.Favorite" = "お気に入り"; "Common.Controls.Status.Actions.Menu" = "メニュー"; "Common.Controls.Status.Actions.Reblog" = "ブースト"; "Common.Controls.Status.Actions.Reply" = "リプライ"; -"Common.Controls.Status.Actions.Unfavorite" = "いいねと取り消す"; +"Common.Controls.Status.Actions.Unfavorite" = "お気に入り登録を取り消す"; "Common.Controls.Status.Actions.Unreblog" = "ブーストを戻す"; "Common.Controls.Status.ContentWarning" = "コンテンツ警告"; "Common.Controls.Status.MediaContentWarning" = "どこかをタップして表示"; "Common.Controls.Status.Poll.Closed" = "クローズド"; "Common.Controls.Status.Poll.Vote" = "投票"; -"Common.Controls.Status.ShowPost" = "トゥートを見る"; +"Common.Controls.Status.ShowPost" = "投稿を見る"; "Common.Controls.Status.ShowUserProfile" = "プロフィールを見る"; "Common.Controls.Status.Tag.Email" = "メール"; "Common.Controls.Status.Tag.Emoji" = "絵文字"; @@ -119,13 +119,13 @@ "Common.Controls.Timeline.Header.BlockedWarning" = "ブロックされているようです..."; "Common.Controls.Timeline.Header.BlockingWarning" = "ブロックを解除するまでこのユーザーをみることはできません。 そういうことです。"; -"Common.Controls.Timeline.Header.NoStatusFound" = "トゥートが見つかりません"; +"Common.Controls.Timeline.Header.NoStatusFound" = "投稿が見つかりません"; "Common.Controls.Timeline.Header.SuspendedWarning" = "このユーザーは停止されています。"; "Common.Controls.Timeline.Header.UserBlockedWarning" = "%@がブロックを解除しない限りプロフィールをみることはできません。"; "Common.Controls.Timeline.Header.UserBlockingWarning" = "%@がブロックを解除しない限りプロフィールをみることはできません。 そういうことです。"; "Common.Controls.Timeline.Header.UserSuspendedWarning" = "%@のアカウントは停止されました。"; -"Common.Controls.Timeline.Loader.LoadMissingPosts" = "不足しているトゥートを読み込む"; +"Common.Controls.Timeline.Loader.LoadMissingPosts" = "不足している投稿を読み込む"; "Common.Controls.Timeline.Loader.LoadingMissingPosts" = "読込中..."; "Common.Controls.Timeline.Loader.ShowMoreReplies" = "リプライをもっとみる"; "Common.Controls.Timeline.Timestamp.Now" = "今"; @@ -142,12 +142,12 @@ "Scene.Compose.Attachment.Photo" = "写真"; "Scene.Compose.Attachment.Video" = "動画"; "Scene.Compose.AutoComplete.SpaceToAdd" = "スペースを追加"; -"Scene.Compose.ComposeAction" = "トゥート"; +"Scene.Compose.ComposeAction" = "投稿"; "Scene.Compose.ContentInputPlaceholder" = "気になることを入力またはペースト"; "Scene.Compose.ContentWarning.Placeholder" = "ここに正確な警告を書いてください..."; "Scene.Compose.Keyboard.AppendAttachmentEntry" = "アタッチメントを追加 - %@"; -"Scene.Compose.Keyboard.DiscardPost" = "トゥートを破棄"; -"Scene.Compose.Keyboard.PublishPost" = "トゥート"; +"Scene.Compose.Keyboard.DiscardPost" = "投稿を破棄"; +"Scene.Compose.Keyboard.PublishPost" = "投稿する"; "Scene.Compose.Keyboard.SelectVisibilityEntry" = "公開設定を選択 - %@"; "Scene.Compose.Keyboard.ToggleContentWarning" = "閲覧注意を切り替える"; "Scene.Compose.Keyboard.TogglePoll" = "投票を切り替える"; @@ -163,9 +163,9 @@ "Scene.Compose.Poll.ThirtyMinutes" = "30分"; "Scene.Compose.Poll.ThreeDays" = "3日"; "Scene.Compose.ReplyingToUser" = "%@にリプライ"; -"Scene.Compose.Title.NewPost" = "新しいトゥート"; +"Scene.Compose.Title.NewPost" = "新しい投稿"; "Scene.Compose.Title.NewReply" = "新しいリプライ"; -"Scene.Compose.Visibility.Direct" = "メンションしてる人のみ"; +"Scene.Compose.Visibility.Direct" = "ダイレクト"; "Scene.Compose.Visibility.Private" = "フォロワーのみ"; "Scene.Compose.Visibility.Public" = "パブリック"; "Scene.Compose.Visibility.Unlisted" = "非表示"; @@ -180,18 +180,18 @@ "Scene.ConfirmEmail.OpenEmailApp.Title" = "インボックスをチェック"; "Scene.ConfirmEmail.Subtitle" = "先程 %@ にメールを送信しました。リンクをタップしてアカウントを確認してください。"; "Scene.ConfirmEmail.Title" = "さいごにもうひとつ。"; -"Scene.Favorite.Title" = "あなたのいいね"; -"Scene.HomeTimeline.NavigationBarState.NewPosts" = "新しいトゥートを見る"; +"Scene.Favorite.Title" = "お気に入り"; +"Scene.HomeTimeline.NavigationBarState.NewPosts" = "新しい投稿を見る"; "Scene.HomeTimeline.NavigationBarState.Offline" = "オフライン"; -"Scene.HomeTimeline.NavigationBarState.Published" = "トゥートしました!"; -"Scene.HomeTimeline.NavigationBarState.Publishing" = "トゥートちう..."; +"Scene.HomeTimeline.NavigationBarState.Published" = "投稿しました!"; +"Scene.HomeTimeline.NavigationBarState.Publishing" = "投稿中..."; "Scene.HomeTimeline.Title" = "ホーム"; -"Scene.Notification.Action.Favourite" = "あなたがいいねしたトゥート"; +"Scene.Notification.Action.Favourite" = "がお気に入りに登録"; "Scene.Notification.Action.Follow" = "フォローされました"; "Scene.Notification.Action.FollowRequest" = "フォローリクエスト"; "Scene.Notification.Action.Mention" = "メンションされました"; "Scene.Notification.Action.Poll" = "投票が終了しました"; -"Scene.Notification.Action.Reblog" = "あなたの投稿をリブログしました。"; +"Scene.Notification.Action.Reblog" = "がブーストしました"; "Scene.Notification.Keyobard.ShowEverything" = "すべて見る"; "Scene.Notification.Keyobard.ShowMentions" = "メンションを見る"; "Scene.Notification.Title.Everything" = "すべて"; @@ -200,8 +200,8 @@ "Scene.Preview.Keyboard.ShowNext" = "次を見る"; "Scene.Preview.Keyboard.ShowPrevious" = "前を見る"; "Scene.Profile.Dashboard.Followers" = "フォロワー"; -"Scene.Profile.Dashboard.Following" = "フォロー中"; -"Scene.Profile.Dashboard.Posts" = "トゥート"; +"Scene.Profile.Dashboard.Following" = "フォロー"; +"Scene.Profile.Dashboard.Posts" = "投稿"; "Scene.Profile.Fields.AddRow" = "行追加"; "Scene.Profile.Fields.Placeholder.Content" = "コンテンツ"; "Scene.Profile.Fields.Placeholder.Label" = "ラベル"; @@ -210,7 +210,7 @@ "Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Message" = "%@をミュートしますか?"; "Scene.Profile.RelationshipActionAlert.ConfirmUnmuteUser.Title" = "ミュートを解除"; "Scene.Profile.SegmentedControl.Media" = "メディア"; -"Scene.Profile.SegmentedControl.Posts" = "トゥート"; +"Scene.Profile.SegmentedControl.Posts" = "投稿"; "Scene.Profile.SegmentedControl.Replies" = "リプライ"; "Scene.Register.Error.Item.Agreement" = "契約"; "Scene.Register.Error.Item.Email" = "メール"; @@ -241,7 +241,7 @@ "Scene.Register.Input.Username.DuplicatePrompt" = "このユーザー名は使用されています"; "Scene.Register.Input.Username.Placeholder" = "ユーザー名"; "Scene.Register.Title" = "あなたのことを教えてください"; -"Scene.Report.Content1" = "他に報告したいトゥートはありますか?"; +"Scene.Report.Content1" = "他に報告したい投稿はありますか?"; "Scene.Report.Content2" = "この報告についてモデレーターに言いたいことはありますか?"; "Scene.Report.Send" = "報告を送信"; "Scene.Report.SkipToSend" = "コメントなしで送信"; @@ -264,7 +264,7 @@ "Scene.Search.Searching.Segment.All" = "すべて"; "Scene.Search.Searching.Segment.Hashtags" = "ハッシュタグ"; "Scene.Search.Searching.Segment.People" = "人々"; -"Scene.Search.Searching.Segment.Posts" = "トゥート"; +"Scene.Search.Searching.Segment.Posts" = "投稿"; "Scene.Search.Title" = "検索"; "Scene.ServerPicker.Button.Category.Academia" = "アカデミア"; "Scene.ServerPicker.Button.Category.Activism" = "アクティビズム"; @@ -307,7 +307,7 @@ "Scene.Settings.Section.BoringZone.Terms" = "利用規約"; "Scene.Settings.Section.BoringZone.Title" = "アプリについて"; "Scene.Settings.Section.Notifications.Boosts" = "ブースト"; -"Scene.Settings.Section.Notifications.Favorites" = "いいね"; +"Scene.Settings.Section.Notifications.Favorites" = "お気に入り登録"; "Scene.Settings.Section.Notifications.Follows" = "フォロー"; "Scene.Settings.Section.Notifications.Mentions" = "メンション"; "Scene.Settings.Section.Notifications.Title" = "通知"; @@ -327,7 +327,7 @@ "Scene.Settings.Title" = "設定"; "Scene.SuggestionAccount.FollowExplain" = "誰かをフォローすると、その人の投稿がタイムラインに表示されるようになります。"; "Scene.SuggestionAccount.Title" = "フォローする人を探す"; -"Scene.Thread.BackTitle" = "トゥート"; -"Scene.Thread.Title" = "%@のトゥート"; +"Scene.Thread.BackTitle" = "投稿"; +"Scene.Thread.Title" = "%@の投稿"; "Scene.Welcome.Slogan" = "Social networking back in your hands."; \ No newline at end of file diff --git a/Mastodon/Resources/ja.lproj/Localizable.stringsdict b/Mastodon/Resources/ja.lproj/Localizable.stringsdict index 82230ebcd..e3699b6ba 100644 --- a/Mastodon/Resources/ja.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/ja.lproj/Localizable.stringsdict @@ -41,7 +41,7 @@ NSStringFormatValueTypeKey ld other - posts + 投稿 plural.count.post @@ -69,7 +69,7 @@ NSStringFormatValueTypeKey ld other - %ld favorites + %ld お気に入り plural.count.reblog @@ -83,7 +83,7 @@ NSStringFormatValueTypeKey ld other - %ld reblogs + %ld ブースト plural.count.vote @@ -139,7 +139,7 @@ NSStringFormatValueTypeKey ld other - %ld following + %ld フォロー plural.count.follower @@ -153,7 +153,7 @@ NSStringFormatValueTypeKey ld other - %ld followers + %ld フォロワー date.year.left @@ -240,5 +240,89 @@ %ld seconds left + 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 + %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/Mastodon/Resources/nl.lproj/Localizable.stringsdict b/Mastodon/Resources/nl.lproj/Localizable.stringsdict index e69582f04..1726606b4 100644 --- a/Mastodon/Resources/nl.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/nl.lproj/Localizable.stringsdict @@ -274,5 +274,101 @@ %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/Mastodon/Resources/zh-Hans.lproj/Localizable.stringsdict b/Mastodon/Resources/zh-Hans.lproj/Localizable.stringsdict index bb8064914..b7c1398f7 100644 --- a/Mastodon/Resources/zh-Hans.lproj/Localizable.stringsdict +++ b/Mastodon/Resources/zh-Hans.lproj/Localizable.stringsdict @@ -240,5 +240,89 @@ 剩余 %ld 秒 + 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/MastodonIntent/de.lproj/Intents.strings b/MastodonIntent/de.lproj/Intents.strings index e19069797..db8062fbc 100644 --- a/MastodonIntent/de.lproj/Intents.strings +++ b/MastodonIntent/de.lproj/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Auf Mastodon schreiben"; -"751xkl" = "Text Content"; +"751xkl" = "Textinhalt"; "CsR7G2" = "Post"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "Welcher Inhalt soll gepostet werden?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Posten fehlgeschlagen"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Fehlerursache"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Beitrag mit Textinhalt posten"; -"RxSqsb" = "Post"; +"RxSqsb" = "Beitrag"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Schreibe ${content} auf Mastodon"; "ZKJSNu" = "Post"; -"ZS1XaK" = "${content}"; +"ZS1XaK" = "Inhalt: ${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Sichtbarkeit"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Sichtbarkeit des Beitrags"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Es gibt ${count} Optionen, die zu ''öffentlich\" passen."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Es gibt ${count} Optionen, die zu ''nur für Follower\" passen."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, öffentlich"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, nur für Follower"; "dUyuGg" = "Post"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Öffentlich"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Nur für Follower"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Senden fehlgeschlagen. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "Beitrag wurde erfolgreich gesendet."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Nur zur Bestätigung, du wolltest \"Öffentlich\"?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Nur zur Bestätigung, du wolltest \"Nur für Follower\"?"; "rM6dvp" = "URL"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "Beitrag wurde erfolgreich gesendet. "; diff --git a/MastodonIntent/es-419.lproj/Intents.strings b/MastodonIntent/es-419.lproj/Intents.strings index e19069797..64c0376c0 100644 --- a/MastodonIntent/es-419.lproj/Intents.strings +++ b/MastodonIntent/es-419.lproj/Intents.strings @@ -1,51 +1,51 @@ -"16wxgf" = "Post on Mastodon"; +"16wxgf" = "Enviar a Mastodon"; -"751xkl" = "Text Content"; +"751xkl" = "Contenido del texto"; -"CsR7G2" = "Post"; +"CsR7G2" = "Enviar"; -"HZSGTr" = "What content to post?"; +"HZSGTr" = "¿Qué contenido enviar?"; -"HdGikU" = "Posting failed"; +"HdGikU" = "Error al enviar mensaje"; -"KDNTJ4" = "Failure Reason"; +"KDNTJ4" = "Motivo del error"; -"RHxKOw" = "Send Post with text content"; +"RHxKOw" = "Enviar mensaje con contenido de texto"; -"RxSqsb" = "Post"; +"RxSqsb" = "Enviar"; -"WCIR3D" = "Post ${content} on Mastodon"; +"WCIR3D" = "Enviar ${content} a Mastodon"; -"ZKJSNu" = "Post"; +"ZKJSNu" = "Enviar"; "ZS1XaK" = "${content}"; -"ZbSjzC" = "Visibility"; +"ZbSjzC" = "Visibilidad"; -"Zo4jgJ" = "Post Visibility"; +"Zo4jgJ" = "Visibilidad del mensaje"; -"apSxMG-dYQ5NN" = "There are ${count} options matching ‘Public’."; +"apSxMG-dYQ5NN" = "Hay ${count} opciones que coinciden con \"Público\"."; -"apSxMG-ehFLjY" = "There are ${count} options matching ‘Followers Only’."; +"apSxMG-ehFLjY" = "Hay ${count} opciones que coinciden con \"Sólo para seguidores\"."; -"ayoYEb-dYQ5NN" = "${content}, Public"; +"ayoYEb-dYQ5NN" = "${content}, público"; -"ayoYEb-ehFLjY" = "${content}, Followers Only"; +"ayoYEb-ehFLjY" = "${content}, sólo para seguidores"; -"dUyuGg" = "Post"; +"dUyuGg" = "Enviar"; -"dYQ5NN" = "Public"; +"dYQ5NN" = "Público"; -"ehFLjY" = "Followers Only"; +"ehFLjY" = "Sólo para seguidores"; -"gfePDu" = "Posting failed. ${failureReason}"; +"gfePDu" = "Error al enviar mensaje. ${failureReason}"; -"k7dbKQ" = "Post was sent successfully."; +"k7dbKQ" = "El mensaje se envió exitosamente."; -"oGiqmY-dYQ5NN" = "Just to confirm, you wanted ‘Public’?"; +"oGiqmY-dYQ5NN" = "Sólo para confirmar, ¿querías que este mensaje sea PÚBLICO?"; -"oGiqmY-ehFLjY" = "Just to confirm, you wanted ‘Followers Only’?"; +"oGiqmY-ehFLjY" = "Sólo para confirmar, ¿querías que este mensaje sea SÓLO PARA SEGUIDORES?"; -"rM6dvp" = "URL"; +"rM6dvp" = "Dirección web"; -"ryJLwG" = "Post was sent successfully. "; +"ryJLwG" = "El mensaje se envió exitosamente. "; From 429736800bbf0a924faeaa532b7a34f179552946 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 14:59:44 +0800 Subject: [PATCH 63/71] chore: add smoke UI tests --- .../xcshareddata/xcschemes/Mastodon.xcscheme | 8 ++- .../xcschemes/xcschememanagement.plist | 8 +-- Mastodon/Mastodon.xctestplan | 71 ++++++++++++++++++- MastodonUITests/MastodonUITests.swift | 4 +- 4 files changed, 82 insertions(+), 9 deletions(-) diff --git a/Mastodon.xcodeproj/xcshareddata/xcschemes/Mastodon.xcscheme b/Mastodon.xcodeproj/xcshareddata/xcschemes/Mastodon.xcscheme index 70507b96c..de059787b 100644 --- a/Mastodon.xcodeproj/xcshareddata/xcschemes/Mastodon.xcscheme +++ b/Mastodon.xcodeproj/xcshareddata/xcschemes/Mastodon.xcscheme @@ -1,7 +1,7 @@ + version = "1.7"> @@ -27,6 +27,12 @@ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + + diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index aa31690df..fc6bfd208 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -7,12 +7,12 @@ AppShared.xcscheme_^#shared#^_ orderHint - 33 + 35 CoreDataStack.xcscheme_^#shared#^_ orderHint - 34 + 32 Mastodon - ASDK.xcscheme_^#shared#^_ @@ -87,7 +87,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 32 + 34 MastodonIntents.xcscheme_^#shared#^_ @@ -107,7 +107,7 @@ ShareActionExtension.xcscheme_^#shared#^_ orderHint - 35 + 33 SuppressBuildableAutocreation diff --git a/Mastodon/Mastodon.xctestplan b/Mastodon/Mastodon.xctestplan index b7693b556..bb3dcf385 100644 --- a/Mastodon/Mastodon.xctestplan +++ b/Mastodon/Mastodon.xctestplan @@ -2,9 +2,72 @@ "configurations" : [ { "id" : "63D68260-F74D-4CA6-ADBC-B1263DD6BE55", - "name" : "Configuration 1", + "name" : "English", "options" : { - + "language" : "en" + } + }, + { + "id" : "06DB4A21-6DDF-454F-ABEE-E77DD7AAA146", + "name" : "Arabic", + "options" : { + "language" : "ar" + } + }, + { + "id" : "D95412BD-821C-4FE5-9DA6-8D77C0972B72", + "name" : "Catalan", + "options" : { + "language" : "ca" + } + }, + { + "id" : "EE9219EA-2011-48B5-A475-309C99F91D6D", + "name" : "Chinese, Simplified", + "options" : { + "language" : "zh-Hans" + } + }, + { + "id" : "6FBBAF31-D445-482E-B67B-271F8216AEB6", + "name" : "Dutch", + "options" : { + "language" : "nl" + } + }, + { + "id" : "45A93B8D-54C5-4906-8AC6-5B6FE561CA25", + "name" : "French", + "options" : { + "language" : "fr" + } + }, + { + "id" : "8344111A-3025-4CA0-838C-AF94EBA4D4BE", + "name" : "German", + "options" : { + "language" : "de" + } + }, + { + "id" : "4EE64E47-F9E5-4189-8571-20D29941F854", + "name" : "Japanese", + "options" : { + "language" : "ja" + } + }, + { + "id" : "746F1EBA-E12B-40C4-85C6-A14DC61A180B", + "name" : "Spanish", + "options" : { + "language" : "es" + } + }, + { + "id" : "EDA29FF5-1F0E-451A-863D-0899CE07CB09", + "name" : "Spanish (Latin America)", + "options" : { + "language" : "es-419" } } ], @@ -13,6 +76,7 @@ }, "testTargets" : [ { + "enabled" : false, "target" : { "containerPath" : "container:Mastodon.xcodeproj", "identifier" : "DB427DE725BAA00100D1B89D", @@ -20,6 +84,9 @@ } }, { + "skippedTests" : [ + "MastodonUITests\/testLaunchPerformance()" + ], "target" : { "containerPath" : "container:Mastodon.xcodeproj", "identifier" : "DB427DF225BAA00100D1B89D", diff --git a/MastodonUITests/MastodonUITests.swift b/MastodonUITests/MastodonUITests.swift index dbfca415e..df1f6b907 100644 --- a/MastodonUITests/MastodonUITests.swift +++ b/MastodonUITests/MastodonUITests.swift @@ -21,8 +21,8 @@ class MastodonUITests: XCTestCase { override func tearDownWithError() throws { // Put teardown code here. This method is called after the invocation of each test method in the class. } - - func testExample() throws { + + func testSmoke() throws { // UI tests must launch the application that they test. let app = XCUIApplication() app.launch() From e354e4b59775119c9aa87047de6fcb325fc504e4 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 15:00:21 +0800 Subject: [PATCH 64/71] chore: update version to 1.0.6 (57) --- Mastodon.xcodeproj/project.pbxproj | 64 +++++++++++++++--------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 5622470ef..ba9198001 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4558,7 +4558,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4566,7 +4566,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -4585,7 +4585,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4593,7 +4593,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -4848,7 +4848,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4856,7 +4856,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.MastodonIntent; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4872,7 +4872,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4880,7 +4880,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.MastodonIntent; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4896,7 +4896,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4904,7 +4904,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.MastodonIntent; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4920,7 +4920,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4928,7 +4928,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.MastodonIntent; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4944,7 +4944,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4952,7 +4952,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.ShareActionExtension; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4968,7 +4968,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4976,7 +4976,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.ShareActionExtension; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -4992,7 +4992,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5000,7 +5000,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.ShareActionExtension; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -5016,7 +5016,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5024,7 +5024,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.ShareActionExtension; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -5106,7 +5106,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5114,7 +5114,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -5220,7 +5220,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5228,7 +5228,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.NotificationService; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -5340,7 +5340,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5348,7 +5348,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -5454,7 +5454,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5462,7 +5462,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.NotificationService; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -5508,7 +5508,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5516,7 +5516,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.NotificationService; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; @@ -5531,7 +5531,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 56; + CURRENT_PROJECT_VERSION = 57; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5539,7 +5539,7 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; PRODUCT_BUNDLE_IDENTIFIER = org.joinmastodon.app.NotificationService; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; From f3a03c4011bd3f149b839aa7406a593a8c8a682b Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 15:40:44 +0800 Subject: [PATCH 65/71] chore: update intents strings --- Mastodon.xcodeproj/project.pbxproj | 4 ++-- .../xcschemes/xcschememanagement.plist | 8 ++++---- MastodonIntent/Base.lproj/Intents.intentdefinition | 10 ++++------ MastodonIntent/en.lproj/Intents.strings | 4 ++-- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 1649d4fe9..10c0bf17e 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -922,7 +922,6 @@ CD92E0F10BDE4FE7C4B999F2 /* Pods_MastodonTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MastodonTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; D7D7CF93E262178800077512 /* Pods-Mastodon-AppShared.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mastodon-AppShared.debug.xcconfig"; path = "Target Support Files/Pods-Mastodon-AppShared/Pods-Mastodon-AppShared.debug.xcconfig"; sourceTree = ""; }; DB0009A826AEE5DC009B9D2D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.intentdefinition; name = Base; path = Base.lproj/Intents.intentdefinition; sourceTree = ""; }; - DB0009AB26AEE5E3009B9D2D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Intents.strings; sourceTree = ""; }; DB0009AD26AEE5E4009B9D2D /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Intents.strings; sourceTree = ""; }; DB0140CE25C42AEE00F9F3CF /* OSLog.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OSLog.swift; sourceTree = ""; }; DB023294267F0AB800031745 /* ASMetaEditableTextNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ASMetaEditableTextNode.swift; sourceTree = ""; }; @@ -1195,6 +1194,7 @@ DBA4B0EE26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; DBA4B0EF26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = ""; }; DBA4B0F026C24EC80077136E /* Intents.stringsdict */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; path = Intents.stringsdict; sourceTree = ""; }; + DBA4B0F526C2621D0077136E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Intents.strings; sourceTree = ""; }; DBA5E7A2263AD0A3004598BB /* PhotoLibraryService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhotoLibraryService.swift; sourceTree = ""; }; DBA5E7A4263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewModel.swift; sourceTree = ""; }; DBA5E7A8263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewController.swift; sourceTree = ""; }; @@ -4343,7 +4343,6 @@ isa = PBXVariantGroup; children = ( DB0009A826AEE5DC009B9D2D /* Base */, - DB0009AB26AEE5E3009B9D2D /* en */, DB0009AD26AEE5E4009B9D2D /* ar */, E9AABD3D26B64B8C00E237DA /* ja */, DBA4B0D326BD10AC0077136E /* zh-Hans */, @@ -4353,6 +4352,7 @@ DBA4B0E326BD11D10077136E /* es-419 */, DBA4B0E826C153820077136E /* de */, DBA4B0EC26C153B10077136E /* nl */, + DBA4B0F526C2621D0077136E /* en */, ); name = Intents.intentdefinition; sourceTree = ""; diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 0071ec899..22e216ce0 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -7,12 +7,12 @@ AppShared.xcscheme_^#shared#^_ orderHint - 32 + 35 CoreDataStack.xcscheme_^#shared#^_ orderHint - 35 + 33 Mastodon - ASDK.xcscheme_^#shared#^_ @@ -87,7 +87,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 34 + 32 MastodonIntents.xcscheme_^#shared#^_ @@ -107,7 +107,7 @@ ShareActionExtension.xcscheme_^#shared#^_ orderHint - 33 + 34 SuppressBuildableAutocreation diff --git a/MastodonIntent/Base.lproj/Intents.intentdefinition b/MastodonIntent/Base.lproj/Intents.intentdefinition index df98e3ab2..6ccb0318c 100644 --- a/MastodonIntent/Base.lproj/Intents.intentdefinition +++ b/MastodonIntent/Base.lproj/Intents.intentdefinition @@ -53,7 +53,7 @@ INIntentDefinitionNamespace BvMBE4 INIntentDefinitionSystemVersion - 20G71 + 20G80 INIntentDefinitionToolsBuildVersion 12E507 INIntentDefinitionToolsVersion @@ -85,8 +85,6 @@ Post ${content} on Mastodon INIntentParameterCombinationTitleID WCIR3D - INIntentParameterCombinationUpdatesLinked - INIntentName @@ -102,7 +100,7 @@ INIntentParameterCombinationSupportsBackgroundExecution INIntentParameterCombinationTitle - Post + Post on Mastodon INIntentParameterCombinationTitleID CsR7G2 @@ -117,7 +115,7 @@ INIntentParameterCombinationSupportsBackgroundExecution INIntentParameterCombinationTitle - Post + Post on Mastodon INIntentParameterCombinationTitleID dUyuGg @@ -247,7 +245,7 @@ INIntentResponseCodeConciseFormatStringID k7dbKQ INIntentResponseCodeFormatString - Post was sent successfully. + Post was sent successfully. INIntentResponseCodeFormatStringID ryJLwG INIntentResponseCodeName diff --git a/MastodonIntent/en.lproj/Intents.strings b/MastodonIntent/en.lproj/Intents.strings index e19069797..6877490ba 100644 --- a/MastodonIntent/en.lproj/Intents.strings +++ b/MastodonIntent/en.lproj/Intents.strings @@ -2,7 +2,7 @@ "751xkl" = "Text Content"; -"CsR7G2" = "Post"; +"CsR7G2" = "Post on Mastodon"; "HZSGTr" = "What content to post?"; @@ -32,7 +32,7 @@ "ayoYEb-ehFLjY" = "${content}, Followers Only"; -"dUyuGg" = "Post"; +"dUyuGg" = "Post on Mastodon"; "dYQ5NN" = "Public"; From 0e9165f9e8c2848eedbf9bb0e6f12e2b0e16e41d Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 16:02:51 +0800 Subject: [PATCH 66/71] chore: add intents strings dict to Crowdin configuration. --- .../Intents.stringsdict | 0 Mastodon.xcodeproj/project.pbxproj | 20 ++++--- MastodonIntent/en.lproj/Intents.stringsdict | 54 +++++++++++++++++++ crowdin.yml | 12 ++++- 4 files changed, 79 insertions(+), 7 deletions(-) rename {MastodonIntent => Localization}/Intents.stringsdict (100%) create mode 100644 MastodonIntent/en.lproj/Intents.stringsdict diff --git a/MastodonIntent/Intents.stringsdict b/Localization/Intents.stringsdict similarity index 100% rename from MastodonIntent/Intents.stringsdict rename to Localization/Intents.stringsdict diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index 10c0bf17e..e92678855 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -420,8 +420,8 @@ DBA1DB80268F84F80052DB59 /* NotificationType.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA1DB7F268F84F80052DB59 /* NotificationType.swift */; }; DBA465932696B495002B41DB /* APIService+WebFinger.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA465922696B495002B41DB /* APIService+WebFinger.swift */; }; DBA465952696E387002B41DB /* AppPreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA465942696E387002B41DB /* AppPreference.swift */; }; - DBA4B0F126C24EC80077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F026C24EC80077136E /* Intents.stringsdict */; }; - DBA4B0F226C24EC80077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F026C24EC80077136E /* Intents.stringsdict */; }; + DBA4B0F626C269880077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F926C269880077136E /* Intents.stringsdict */; }; + DBA4B0F726C269880077136E /* Intents.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DBA4B0F926C269880077136E /* Intents.stringsdict */; }; DBA5E7A3263AD0A3004598BB /* PhotoLibraryService.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A2263AD0A3004598BB /* PhotoLibraryService.swift */; }; DBA5E7A5263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A4263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift */; }; DBA5E7A9263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA5E7A8263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift */; }; @@ -1193,8 +1193,8 @@ DBA4B0ED26C153B10077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = nl; path = nl.lproj/Localizable.stringsdict; sourceTree = ""; }; DBA4B0EE26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; DBA4B0EF26C153B20077136E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = ""; }; - DBA4B0F026C24EC80077136E /* Intents.stringsdict */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; path = Intents.stringsdict; sourceTree = ""; }; DBA4B0F526C2621D0077136E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Intents.strings; sourceTree = ""; }; + DBA4B0F826C269880077136E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = en; path = en.lproj/Intents.stringsdict; sourceTree = ""; }; DBA5E7A2263AD0A3004598BB /* PhotoLibraryService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhotoLibraryService.swift; sourceTree = ""; }; DBA5E7A4263BD28C004598BB /* ContextMenuImagePreviewViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewModel.swift; sourceTree = ""; }; DBA5E7A8263BD3A4004598BB /* ContextMenuImagePreviewViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContextMenuImagePreviewViewController.swift; sourceTree = ""; }; @@ -2636,7 +2636,7 @@ isa = PBXGroup; children = ( DB0009A926AEE5DC009B9D2D /* Intents.intentdefinition */, - DBA4B0F026C24EC80077136E /* Intents.stringsdict */, + DBA4B0F926C269880077136E /* Intents.stringsdict */, DB8FABD626AEC864008E5AF4 /* MastodonIntent.entitlements */, DB8FABC926AEC7B2008E5AF4 /* IntentHandler.swift */, DBB8AB4526AECDE200F6D281 /* SendPostIntentHandler.swift */, @@ -3405,7 +3405,7 @@ DB3D100D25BAA75E00EAA174 /* Localizable.strings in Resources */, DB427DDF25BAA00100D1B89D /* Assets.xcassets in Resources */, DB427DDD25BAA00100D1B89D /* Main.storyboard in Resources */, - DBA4B0F126C24EC80077136E /* Intents.stringsdict in Resources */, + DBA4B0F626C269880077136E /* Intents.stringsdict in Resources */, DB118A8225E4B6E600FAB162 /* Preview Assets.xcassets in Resources */, DB2B3ABC25E37E15007045F9 /* InfoPlist.strings in Resources */, DB68A05D25E9055900CFDF14 /* Settings.bundle in Resources */, @@ -3451,7 +3451,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - DBA4B0F226C24EC80077136E /* Intents.stringsdict in Resources */, + DBA4B0F726C269880077136E /* Intents.stringsdict in Resources */, DBB8AB4F26AED13F00F6D281 /* Assets.xcassets in Resources */, DBB8AB5126AED14600F6D281 /* Localizable.strings in Resources */, DBB8AB5026AED14400F6D281 /* Localizable.stringsdict in Resources */, @@ -4424,6 +4424,14 @@ name = Localizable.stringsdict; sourceTree = ""; }; + DBA4B0F926C269880077136E /* Intents.stringsdict */ = { + isa = PBXVariantGroup; + children = ( + DBA4B0F826C269880077136E /* en */, + ); + name = Intents.stringsdict; + sourceTree = ""; + }; DBC6461626A170AB00B0E31B /* MainInterface.storyboard */ = { isa = PBXVariantGroup; children = ( diff --git a/MastodonIntent/en.lproj/Intents.stringsdict b/MastodonIntent/en.lproj/Intents.stringsdict new file mode 100644 index 000000000..5a39d5e64 --- /dev/null +++ b/MastodonIntent/en.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/crowdin.yml b/crowdin.yml index 3612e371e..38421efa6 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -7,6 +7,7 @@ files: [ # Source files filter # e.g. "/resources/en/*.json" # + # App strings template "source" : "/Localization/app.json", # @@ -23,18 +24,27 @@ files: [ # }, { + # App info plist strings template "source" : "/Localization/ios-infoPlist.json", "translation" : "/Localization/StringsConvertor/input/%locale_with_underscore%/%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%", "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", - } + }, + { + # 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", + }, ] \ No newline at end of file From 65ac4c4b2bb4ec3a92ad13908d2897d540d8dc83 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 18:33:13 +0800 Subject: [PATCH 67/71] chore: adapt notification title label to i18n string --- Mastodon.xcodeproj/project.pbxproj | 2 +- .../xcschemes/xcschememanagement.plist | 6 ++-- .../xcshareddata/swiftpm/Package.resolved | 4 +-- .../Section/Status/NotificationSection.swift | 28 ++++++++++++++----- Mastodon/Extension/MetaLabel.swift | 10 +++---- .../NotificationStatusTableViewCell.swift | 26 ++++++----------- 6 files changed, 41 insertions(+), 35 deletions(-) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index e92678855..1b6b3747f 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -5715,7 +5715,7 @@ repositoryURL = "https://github.com/TwidereProject/MetaTextKit.git"; requirement = { kind = exactVersion; - version = 2.1.0; + version = 2.1.1; }; }; DB0E2D2C26833FF600865C3C /* XCRemoteSwiftPackageReference "Nuke-FLAnimatedImage-Plugin" */ = { diff --git a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist index 22e216ce0..fc6bfd208 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -12,7 +12,7 @@ CoreDataStack.xcscheme_^#shared#^_ orderHint - 33 + 32 Mastodon - ASDK.xcscheme_^#shared#^_ @@ -87,7 +87,7 @@ MastodonIntent.xcscheme_^#shared#^_ orderHint - 32 + 34 MastodonIntents.xcscheme_^#shared#^_ @@ -107,7 +107,7 @@ ShareActionExtension.xcscheme_^#shared#^_ orderHint - 34 + 33 SuppressBuildableAutocreation diff --git a/Mastodon.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Mastodon.xcworkspace/xcshareddata/swiftpm/Package.resolved index 8e5ea37af..0dc724ded 100644 --- a/Mastodon.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Mastodon.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -96,8 +96,8 @@ "repositoryURL": "https://github.com/TwidereProject/MetaTextKit.git", "state": { "branch": null, - "revision": "ccb54189b31d13868d979c33d43566912b765bbd", - "version": "2.1.0" + "revision": "a5f412b72fc08cd1348e2388fc7ec326365e1823", + "version": "2.1.1" } }, { diff --git a/Mastodon/Diffiable/Section/Status/NotificationSection.swift b/Mastodon/Diffiable/Section/Status/NotificationSection.swift index 79e312299..11dba2146 100644 --- a/Mastodon/Diffiable/Section/Status/NotificationSection.swift +++ b/Mastodon/Diffiable/Section/Status/NotificationSection.swift @@ -68,23 +68,37 @@ extension NotificationSection { .store(in: &cell.disposeBag) // configure author name, notification description, timestamp + let nameText = notification.account.displayNameWithFallback + let titleLabelText = "\(nameText) \(notification.notificationType.actionText)" + do { - let mastodonContent = MastodonContent(content: notification.account.displayNameWithFallback, emojis: notification.account.emojiMeta) + let nameContent = MastodonContent(content: nameText, emojis: notification.account.emojiMeta) + let nameMetaContent = try MastodonMetaContent.convert(document: nameContent) + + let mastodonContent = MastodonContent(content: titleLabelText, emojis: notification.account.emojiMeta) let metaContent = try MastodonMetaContent.convert(document: mastodonContent) - cell.nameLabel.configure(content: metaContent) + + cell.titleLabel.configure(content: metaContent) + + if let nameRange = metaContent.string.range(of: nameMetaContent.string) { + let nsRange = NSRange(nameRange, in: metaContent.string) + cell.titleLabel.textStorage.addAttributes([ + .font: UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 15, weight: .semibold), maximumPointSize: 20), + .foregroundColor: Asset.Colors.brandBlue.color, + ], range: nsRange) + } + } catch { - let metaContent = PlaintextMetaContent(string: notification.account.displayNameWithFallback) - cell.nameLabel.configure(content: metaContent) + let metaContent = PlaintextMetaContent(string: titleLabelText) + cell.titleLabel.configure(content: metaContent) } + let createAt = notification.createAt - let actionText = notification.notificationType.actionText - cell.actionLabel.text = actionText cell.timestampLabel.text = createAt.localizedTimeAgoSinceNow AppContext.shared.timestampUpdatePublisher .receive(on: DispatchQueue.main) .sink { [weak cell] _ in guard let cell = cell else { return } - cell.actionLabel.text = actionText cell.timestampLabel.text = createAt.localizedTimeAgoSinceNow } .store(in: &cell.disposeBag) diff --git a/Mastodon/Extension/MetaLabel.swift b/Mastodon/Extension/MetaLabel.swift index 8163a10cb..9e7920a8e 100644 --- a/Mastodon/Extension/MetaLabel.swift +++ b/Mastodon/Extension/MetaLabel.swift @@ -13,7 +13,7 @@ extension MetaLabel { enum Style { case statusHeader case statusName - case notificationName + case notificationTitle case profileFieldName case profileFieldValue case recommendAccountName @@ -26,6 +26,7 @@ extension MetaLabel { self.init() layer.masksToBounds = true + lineBreakMode = .byTruncatingTail textContainer.lineBreakMode = .byTruncatingTail textContainer.lineFragmentPadding = 0 @@ -41,9 +42,9 @@ extension MetaLabel { font = .systemFont(ofSize: 17, weight: .semibold) textColor = Asset.Colors.Label.primary.color - case .notificationName: - font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 15, weight: .semibold), maximumPointSize: 20) - textColor = Asset.Colors.brandBlue.color + case .notificationTitle: + font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 15, weight: .regular), maximumPointSize: 20) + textColor = Asset.Colors.Label.secondary.color case .profileFieldName: font = UIFontMetrics(forTextStyle: .headline).scaledFont(for: .systemFont(ofSize: 17, weight: .semibold), maximumPointSize: 20) @@ -54,7 +55,6 @@ extension MetaLabel { textColor = Asset.Colors.Label.primary.color textAlignment = .right - case .titleView: font = .systemFont(ofSize: 17, weight: .semibold) textColor = Asset.Colors.Label.primary.color diff --git a/Mastodon/Scene/Notification/TableViewCell/NotificationStatusTableViewCell.swift b/Mastodon/Scene/Notification/TableViewCell/NotificationStatusTableViewCell.swift index 804fc081a..1712468a9 100644 --- a/Mastodon/Scene/Notification/TableViewCell/NotificationStatusTableViewCell.swift +++ b/Mastodon/Scene/Notification/TableViewCell/NotificationStatusTableViewCell.swift @@ -49,13 +49,8 @@ final class NotificationStatusTableViewCell: UITableViewCell, StatusCell { let contentStackView = UIStackView() - let actionLabel: UILabel = { - let label = UILabel() - label.textColor = Asset.Colors.Label.secondary.color - label.font = UIFontMetrics(forTextStyle: .body).scaledFont(for: .systemFont(ofSize: 15, weight: .regular), maximumPointSize: 20) - label.lineBreakMode = .byTruncatingTail - return label - }() + let titleLabel = MetaLabel(style: .notificationTitle) + let dotLabel: UILabel = { let label = UILabel() label.textColor = Asset.Colors.Label.secondary.color @@ -70,7 +65,6 @@ final class NotificationStatusTableViewCell: UITableViewCell, StatusCell { return label }() - let nameLabel = MetaLabel(style: .notificationName) let buttonStackView = UIStackView() @@ -181,17 +175,15 @@ extension NotificationStatusTableViewCell { actionStackView.distribution = .fill actionStackView.spacing = 4 - actionStackView.addArrangedSubview(nameLabel) - actionStackView.addArrangedSubview(actionLabel) + actionStackView.addArrangedSubview(titleLabel) actionStackView.addArrangedSubview(dotLabel) actionStackView.addArrangedSubview(timestampLabel) let timestampPaddingView = UIView() actionStackView.addArrangedSubview(timestampPaddingView) - nameLabel.setContentHuggingPriority(.required - 3, for: .horizontal) - nameLabel.setContentHuggingPriority(.required - 1, for: .vertical) - nameLabel.setContentCompressionResistancePriority(.required - 3, for: .horizontal) - nameLabel.setContentCompressionResistancePriority(.required - 1, for: .vertical) - actionLabel.setContentHuggingPriority(.defaultLow, for: .horizontal) + titleLabel.setContentHuggingPriority(.required - 3, for: .horizontal) + titleLabel.setContentHuggingPriority(.required - 1, for: .vertical) + titleLabel.setContentCompressionResistancePriority(.required - 3, for: .horizontal) + titleLabel.setContentCompressionResistancePriority(.required - 1, for: .vertical) dotLabel.setContentHuggingPriority(.required - 2, for: .horizontal) dotLabel.setContentCompressionResistancePriority(.required - 2, for: .horizontal) timestampLabel.setContentHuggingPriority(.required - 1, for: .horizontal) @@ -255,7 +247,7 @@ extension NotificationStatusTableViewCell { avatarButton.addTarget(self, action: #selector(NotificationStatusTableViewCell.avatarButtonDidPressed(_:)), for: .touchUpInside) let authorNameLabelTapGestureRecognizer = UITapGestureRecognizer.singleTapGestureRecognizer authorNameLabelTapGestureRecognizer.addTarget(self, action: #selector(NotificationStatusTableViewCell.authorNameLabelTapGestureRecognizerHandler(_:))) - nameLabel.addGestureRecognizer(authorNameLabelTapGestureRecognizer) + titleLabel.addGestureRecognizer(authorNameLabelTapGestureRecognizer) resetSeparatorLineLayout() @@ -303,7 +295,7 @@ extension NotificationStatusTableViewCell { @objc private func authorNameLabelTapGestureRecognizerHandler(_ sender: UITapGestureRecognizer) { os_log(.info, log: .debug, "%{public}s[%{public}ld], %{public}s", ((#file as NSString).lastPathComponent), #line, #function) - delegate?.notificationStatusTableViewCell(self, authorNameLabelDidPressed: nameLabel) + delegate?.notificationStatusTableViewCell(self, authorNameLabelDidPressed: titleLabel) } } From 3a8d1fa61a7498ae3c7ae9227f86bfd30c1fe0a6 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 18:38:39 +0800 Subject: [PATCH 68/71] chore: update i18n template for notification title --- Localization/app.json | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Localization/app.json b/Localization/app.json index d7ba2147e..b60ade9c1 100644 --- a/Localization/app.json +++ b/Localization/app.json @@ -454,14 +454,12 @@ "Everything": "Everything", "Mentions": "Mentions" }, - "action": { - "follow": "followed you", - "favourite": "favorited your post", - "reblog": "reblogged your post", - "poll": "Your poll has ended", - "mention": "mentioned you", - "follow_request": "requested to follow you" - }, + "user_followed_you": "%s followed you", + "user_favorited your post": "%s favorited your post", + "user_reblogged_your_post": "%s reblogged your post", + "user_mentioned_you": "%s mentioned you", + "user_requested_to_follow_you": "%s requested to follow you", + "user_your_poll_has_ended": "%s Your poll has ended", "keyobard": { "show_everything": "Show Everything", "show_mentions": "Show Mentions" From f495b16464f38531381c2f988c8f871b174de265 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 18:50:41 +0800 Subject: [PATCH 69/71] fix: status meta label in thread may get trimmed issue --- Mastodon/Scene/Share/View/Content/ThreadMetaView.swift | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Mastodon/Scene/Share/View/Content/ThreadMetaView.swift b/Mastodon/Scene/Share/View/Content/ThreadMetaView.swift index ff2f94a0e..d6f1b01a9 100644 --- a/Mastodon/Scene/Share/View/Content/ThreadMetaView.swift +++ b/Mastodon/Scene/Share/View/Content/ThreadMetaView.swift @@ -13,6 +13,8 @@ final class ThreadMetaView: UIView { let label = UILabel() label.font = UIFontMetrics(forTextStyle: .body).scaledFont(for: .systemFont(ofSize: 15, weight: .regular)) label.text = "Date" + label.adjustsFontSizeToFitWidth = true + label.minimumScaleFactor = 0.5 return label }() @@ -75,8 +77,10 @@ extension ThreadMetaView { actionButtonStackView.addArrangedSubview(favoriteButton) dateLabel.setContentHuggingPriority(.defaultLow, for: .horizontal) - reblogButton.setContentHuggingPriority(.required - 2, for: .horizontal) - favoriteButton.setContentHuggingPriority(.required - 1, for: .horizontal) + reblogButton.titleLabel?.setContentHuggingPriority(.required - 2, for: .horizontal) + favoriteButton.titleLabel?.setContentHuggingPriority(.required - 1, for: .horizontal) + reblogButton.setContentCompressionResistancePriority(.required - 2, for: .horizontal) + favoriteButton.setContentCompressionResistancePriority(.required - 1, for: .horizontal) updateContainerLayout() From 3819daede577814d1ee942cbef967b06372bf612 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 18:55:15 +0800 Subject: [PATCH 70/71] fix: content warning layout issue under zoomed display mode. resolve #277 --- Mastodon/Scene/Share/View/Content/StatusView.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Mastodon/Scene/Share/View/Content/StatusView.swift b/Mastodon/Scene/Share/View/Content/StatusView.swift index 664939fc4..7afabd3a9 100644 --- a/Mastodon/Scene/Share/View/Content/StatusView.swift +++ b/Mastodon/Scene/Share/View/Content/StatusView.swift @@ -386,10 +386,10 @@ extension StatusView { contentWarningOverlayView.translatesAutoresizingMaskIntoConstraints = false containerStackView.addSubview(contentWarningOverlayView) NSLayoutConstraint.activate([ - statusContainerStackView.topAnchor.constraint(equalTo: contentWarningOverlayView.topAnchor).priority(.defaultHigh + 10), - statusContainerStackView.leftAnchor.constraint(equalTo: contentWarningOverlayView.leftAnchor).priority(.defaultHigh), - contentWarningOverlayView.rightAnchor.constraint(equalTo: statusContainerStackView.rightAnchor).priority(.defaultHigh), - contentWarningOverlayView.bottomAnchor.constraint(equalTo: statusContainerStackView.bottomAnchor).priority(.defaultHigh), + statusContainerStackView.topAnchor.constraint(equalTo: contentWarningOverlayView.topAnchor).priority(.required - 10), + statusContainerStackView.leftAnchor.constraint(equalTo: contentWarningOverlayView.leftAnchor).priority(.required - 1), + contentWarningOverlayView.rightAnchor.constraint(equalTo: statusContainerStackView.rightAnchor).priority(.required - 1), + contentWarningOverlayView.bottomAnchor.constraint(equalTo: statusContainerStackView.bottomAnchor).priority(.required - 1), ]) // avoid overlay behind other views defer { From e1caaaec5ebac9db4d8de6ab39595f800836db59 Mon Sep 17 00:00:00 2001 From: CMK Date: Tue, 10 Aug 2021 19:16:21 +0800 Subject: [PATCH 71/71] chore: update version to 1.0.6 (58) --- Mastodon.xcodeproj/project.pbxproj | 32 +++++++++---------- .../xcschemes/xcschememanagement.plist | 4 +-- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Mastodon.xcodeproj/project.pbxproj b/Mastodon.xcodeproj/project.pbxproj index fc61591ab..39d2f4ce9 100644 --- a/Mastodon.xcodeproj/project.pbxproj +++ b/Mastodon.xcodeproj/project.pbxproj @@ -4572,7 +4572,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4599,7 +4599,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -4862,7 +4862,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4886,7 +4886,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4910,7 +4910,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4934,7 +4934,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = MastodonIntent/MastodonIntent.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = MastodonIntent/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4958,7 +4958,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -4982,7 +4982,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5006,7 +5006,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5030,7 +5030,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = ShareActionExtension/ShareActionExtension.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = ShareActionExtension/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5120,7 +5120,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5234,7 +5234,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5354,7 +5354,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Mastodon/Mastodon.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_ASSET_PATHS = "Mastodon/Resources/Preview\\ Assets.xcassets"; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = Mastodon/Info.plist; @@ -5468,7 +5468,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5522,7 +5522,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; DEVELOPMENT_TEAM = 5Z4GVSS33P; INFOPLIST_FILE = NotificationService/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -5545,7 +5545,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = NotificationService/NotificationService.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 57; + CURRENT_PROJECT_VERSION = 58; 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 fc6bfd208..0071ec899 100644 --- a/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/Mastodon.xcodeproj/xcuserdata/mainasuk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -7,12 +7,12 @@ AppShared.xcscheme_^#shared#^_ orderHint - 35 + 32 CoreDataStack.xcscheme_^#shared#^_ orderHint - 32 + 35 Mastodon - ASDK.xcscheme_^#shared#^_