Put the missing-map sentence in every packet language
The page-1 notice for a missing map existed only in English, which turns check:packet-strings-parity red: the packet catalogue must be whole in every language, and English-by-choice is not one of its declared exceptions (only the licensed Mark 5 passage is). All eleven blocks now carry the sentence, reusing each block's own page-1 wording for "prayer list" so the notice reads like the line above it. The English says "prayer list" rather than "zone": zone is an internal term, and the page itself calls it a prayer list. The Chinese block is Traditional script, so the sentence is too, with the Taiwan term for printing. The loud gate's note described the old English-only state; it now reports which locales fall back, or that none do.
This commit is contained in:
parent
da2ca57019
commit
74e5c4b0d1
2 changed files with 17 additions and 4 deletions
|
|
@ -87,10 +87,13 @@ for (const lang of ['en', 'es', 'ar']) {
|
||||||
notes.push(` ok ${lang.padEnd(4)} full + lightweight: loud when missing, quiet when present`)
|
notes.push(` ok ${lang.padEnd(4)} full + lightweight: loud when missing, quiet when present`)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Per-key fallback, stated separately because it is a property of the STRINGS, not the renderer:
|
// Per-key fallback, stated separately because it is a property of the STRINGS, not the renderer. Every
|
||||||
// every non-English locale deliberately lacks the key and must inherit the English sentence.
|
// block carries its own sentence (check:packet-strings-parity requires it); a block that ever lacks it
|
||||||
|
// still prints the English one rather than the raw key, which side (1) above asserts.
|
||||||
const missingIn = Object.keys(strings).filter((k) => k !== '_meta' && k !== 'en' && !strings[k].map_unavailable)
|
const missingIn = Object.keys(strings).filter((k) => k !== '_meta' && k !== 'en' && !strings[k].map_unavailable)
|
||||||
notes.push(` ok ${missingIn.length} locales fall back to the English sentence (no invented translations)`)
|
notes.push(missingIn.length
|
||||||
|
? ` ok ${missingIn.length} locale(s) fall back to the English sentence: ${missingIn.join(', ')}`
|
||||||
|
: ' ok every locale carries its own sentence')
|
||||||
|
|
||||||
for (const n of notes) console.log(n)
|
for (const n of notes) console.log(n)
|
||||||
if (fails.length) {
|
if (fails.length) {
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
"en": {
|
"en": {
|
||||||
"map_page_kicker": "UNENGAGED PEOPLE GROUPS",
|
"map_page_kicker": "UNENGAGED PEOPLE GROUPS",
|
||||||
"map_page_sub": "A prayer list of {count} unreached people groups",
|
"map_page_sub": "A prayer list of {count} unreached people groups",
|
||||||
"map_unavailable": "The map for this zone is not included in this printing.",
|
"map_unavailable": "The map for this prayer list is not included in this printing.",
|
||||||
"list_header": "{from}–{to} of {count} · pray for them by name",
|
"list_header": "{from}–{to} of {count} · pray for them by name",
|
||||||
"people_suffix": "people",
|
"people_suffix": "people",
|
||||||
"no_photo": "no photo available",
|
"no_photo": "no photo available",
|
||||||
|
|
@ -232,6 +232,7 @@
|
||||||
"es": {
|
"es": {
|
||||||
"map_page_kicker": "GRUPOS ÉTNICOS NO EVANGELIZADOS",
|
"map_page_kicker": "GRUPOS ÉTNICOS NO EVANGELIZADOS",
|
||||||
"map_page_sub": "Una lista de oración de {count} grupos étnicos no alcanzados",
|
"map_page_sub": "Una lista de oración de {count} grupos étnicos no alcanzados",
|
||||||
|
"map_unavailable": "El mapa de esta lista de oración no se incluye en esta impresión.",
|
||||||
"list_header": "{from}–{to} de {count} · ora por ellos por nombre",
|
"list_header": "{from}–{to} de {count} · ora por ellos por nombre",
|
||||||
"people_suffix": "personas",
|
"people_suffix": "personas",
|
||||||
"no_photo": "sin fotografía disponible",
|
"no_photo": "sin fotografía disponible",
|
||||||
|
|
@ -453,6 +454,7 @@
|
||||||
"fr": {
|
"fr": {
|
||||||
"map_page_kicker": "GROUPES ETHNIQUES NON ATTEINTS",
|
"map_page_kicker": "GROUPES ETHNIQUES NON ATTEINTS",
|
||||||
"map_page_sub": "Une liste de prière de {count} groupes ethniques non atteints",
|
"map_page_sub": "Une liste de prière de {count} groupes ethniques non atteints",
|
||||||
|
"map_unavailable": "La carte de cette liste de prière n’est pas incluse dans cette impression.",
|
||||||
"list_header": "{from}–{to} sur {count} · priez pour eux par leur nom",
|
"list_header": "{from}–{to} sur {count} · priez pour eux par leur nom",
|
||||||
"people_suffix": "personnes",
|
"people_suffix": "personnes",
|
||||||
"no_photo": "aucune photo disponible",
|
"no_photo": "aucune photo disponible",
|
||||||
|
|
@ -674,6 +676,7 @@
|
||||||
"pt": {
|
"pt": {
|
||||||
"map_page_kicker": "GRUPOS ÉTNICOS NÃO ALCANÇADOS",
|
"map_page_kicker": "GRUPOS ÉTNICOS NÃO ALCANÇADOS",
|
||||||
"map_page_sub": "Uma lista de oração de {count} grupos étnicos não alcançados",
|
"map_page_sub": "Uma lista de oração de {count} grupos étnicos não alcançados",
|
||||||
|
"map_unavailable": "O mapa desta lista de oração não está incluído nesta impressão.",
|
||||||
"list_header": "{from}–{to} de {count} · ore por eles pelo nome",
|
"list_header": "{from}–{to} de {count} · ore por eles pelo nome",
|
||||||
"people_suffix": "pessoas",
|
"people_suffix": "pessoas",
|
||||||
"no_photo": "sem fotografia disponível",
|
"no_photo": "sem fotografia disponível",
|
||||||
|
|
@ -893,6 +896,7 @@
|
||||||
"de": {
|
"de": {
|
||||||
"map_page_kicker": "UNERREICHTE VOLKSGRUPPEN",
|
"map_page_kicker": "UNERREICHTE VOLKSGRUPPEN",
|
||||||
"map_page_sub": "Eine Gebetsliste von {count} unerreichten Volksgruppen",
|
"map_page_sub": "Eine Gebetsliste von {count} unerreichten Volksgruppen",
|
||||||
|
"map_unavailable": "Die Karte zu dieser Gebetsliste ist in diesem Ausdruck nicht enthalten.",
|
||||||
"list_header": "{from}–{to} von {count} · betet namentlich für sie",
|
"list_header": "{from}–{to} von {count} · betet namentlich für sie",
|
||||||
"people_suffix": "Menschen",
|
"people_suffix": "Menschen",
|
||||||
"no_photo": "kein Foto verfügbar",
|
"no_photo": "kein Foto verfügbar",
|
||||||
|
|
@ -1114,6 +1118,7 @@
|
||||||
"it": {
|
"it": {
|
||||||
"map_page_kicker": "GRUPPI ETNICI NON RAGGIUNTI",
|
"map_page_kicker": "GRUPPI ETNICI NON RAGGIUNTI",
|
||||||
"map_page_sub": "Una lista di preghiera di {count} gruppi etnici non raggiunti",
|
"map_page_sub": "Una lista di preghiera di {count} gruppi etnici non raggiunti",
|
||||||
|
"map_unavailable": "La mappa di questa lista di preghiera non è inclusa in questa stampa.",
|
||||||
"list_header": "{from}–{to} di {count} · pregate per loro per nome",
|
"list_header": "{from}–{to} di {count} · pregate per loro per nome",
|
||||||
"people_suffix": "persone",
|
"people_suffix": "persone",
|
||||||
"no_photo": "nessuna foto disponibile",
|
"no_photo": "nessuna foto disponibile",
|
||||||
|
|
@ -1333,6 +1338,7 @@
|
||||||
"ro": {
|
"ro": {
|
||||||
"map_page_kicker": "GRUPURI ETNICE NEATINSE",
|
"map_page_kicker": "GRUPURI ETNICE NEATINSE",
|
||||||
"map_page_sub": "O listă de rugăciune pentru {count} grupuri etnice neatinse",
|
"map_page_sub": "O listă de rugăciune pentru {count} grupuri etnice neatinse",
|
||||||
|
"map_unavailable": "Harta acestei liste de rugăciune nu este inclusă în această tipărire.",
|
||||||
"list_header": "{from}–{to} din {count} · rugați-vă pentru ei pe nume",
|
"list_header": "{from}–{to} din {count} · rugați-vă pentru ei pe nume",
|
||||||
"people_suffix": "persoane",
|
"people_suffix": "persoane",
|
||||||
"no_photo": "nicio fotografie disponibilă",
|
"no_photo": "nicio fotografie disponibilă",
|
||||||
|
|
@ -1552,6 +1558,7 @@
|
||||||
"ru": {
|
"ru": {
|
||||||
"map_page_kicker": "НЕОХВАЧЕННЫЕ НАРОДЫ",
|
"map_page_kicker": "НЕОХВАЧЕННЫЕ НАРОДЫ",
|
||||||
"map_page_sub": "Молитвенный список из {count} неохваченных народов",
|
"map_page_sub": "Молитвенный список из {count} неохваченных народов",
|
||||||
|
"map_unavailable": "Карта этого молитвенного списка не включена в эту распечатку.",
|
||||||
"list_header": "{from}–{to} из {count} · молитесь за них поимённо",
|
"list_header": "{from}–{to} из {count} · молитесь за них поимённо",
|
||||||
"people_suffix": "человек",
|
"people_suffix": "человек",
|
||||||
"no_photo": "фотография недоступна",
|
"no_photo": "фотография недоступна",
|
||||||
|
|
@ -1773,6 +1780,7 @@
|
||||||
"ar": {
|
"ar": {
|
||||||
"map_page_kicker": "شعوب غير مبلَّغة",
|
"map_page_kicker": "شعوب غير مبلَّغة",
|
||||||
"map_page_sub": "قائمة صلاة من أجل {count} شعبًا غير مبلَّغ",
|
"map_page_sub": "قائمة صلاة من أجل {count} شعبًا غير مبلَّغ",
|
||||||
|
"map_unavailable": "خريطة قائمة الصلاة هذه غير مضمَّنة في هذه النسخة المطبوعة.",
|
||||||
"list_header": "{from}–{to} من {count} · صلّوا لأجلهم بالاسم",
|
"list_header": "{from}–{to} من {count} · صلّوا لأجلهم بالاسم",
|
||||||
"people_suffix": "نسمة",
|
"people_suffix": "نسمة",
|
||||||
"no_photo": "لا توجد صورة متاحة",
|
"no_photo": "لا توجد صورة متاحة",
|
||||||
|
|
@ -1994,6 +2002,7 @@
|
||||||
"hi": {
|
"hi": {
|
||||||
"map_page_kicker": "अनछुए जनसमूह",
|
"map_page_kicker": "अनछुए जनसमूह",
|
||||||
"map_page_sub": "{count} अनछुए जनसमूहों की प्रार्थना सूची",
|
"map_page_sub": "{count} अनछुए जनसमूहों की प्रार्थना सूची",
|
||||||
|
"map_unavailable": "इस प्रार्थना सूची का नक्शा इस प्रिंट में शामिल नहीं है।",
|
||||||
"list_header": "{count} में से {from}–{to} · उनके नाम लेकर प्रार्थना करें",
|
"list_header": "{count} में से {from}–{to} · उनके नाम लेकर प्रार्थना करें",
|
||||||
"people_suffix": "लोग",
|
"people_suffix": "लोग",
|
||||||
"no_photo": "कोई चित्र उपलब्ध नहीं",
|
"no_photo": "कोई चित्र उपलब्ध नहीं",
|
||||||
|
|
@ -2213,6 +2222,7 @@
|
||||||
"zh": {
|
"zh": {
|
||||||
"map_page_kicker": "未得之民",
|
"map_page_kicker": "未得之民",
|
||||||
"map_page_sub": "為 {count} 個未得之民的禱告名單",
|
"map_page_sub": "為 {count} 個未得之民的禱告名單",
|
||||||
|
"map_unavailable": "此禱告名單的地圖未包含在本次列印中。",
|
||||||
"list_header": "{count} 之中的 {from}–{to} · 按名為他們禱告",
|
"list_header": "{count} 之中的 {from}–{to} · 按名為他們禱告",
|
||||||
"people_suffix": "人",
|
"people_suffix": "人",
|
||||||
"no_photo": "沒有照片",
|
"no_photo": "沒有照片",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue