diff --git a/assets/layers/tree_node/tree_node.json b/assets/layers/tree_node/tree_node.json index 4dd324cf1f..f3bd0cfca1 100644 --- a/assets/layers/tree_node/tree_node.json +++ b/assets/layers/tree_node/tree_node.json @@ -7,7 +7,8 @@ "ru": "Дерево", "fr": "Arbre", "de": "Bäume", - "ca": "Arbre" + "ca": "Arbre", + "es": "Árbol" }, "minzoom": 16, "source": { @@ -26,13 +27,14 @@ "fr": "Arbre", "de": "Baum", "eo": "Arbo", - "ca": "Arbre" + "ca": "Arbre", + "es": "Árbol" }, "mappings": [ { - "if": "name~*", + "if": "species~*", "then": { - "*": "{name}" + "*": "{species}" } } ] @@ -47,7 +49,8 @@ "it": "Altezza: {height}", "ru": "Высота: {height}", "fr": "Hauteur : {height}", - "de": "Höhe: {height}" + "de": "Höhe: {height}", + "es": "Altura: {height}" }, "condition": { "and": [ @@ -67,7 +70,8 @@ "it": "Altezza: {height} m", "ru": "Высота: {height} м", "fr": "Hauteur : {height} m", - "de": "Höhe: {height} m" + "de": "Höhe: {height} m", + "es": "Altura: {height} m" } } ] @@ -79,7 +83,8 @@ "en": "Is this a broadleaved or needleleaved tree?", "it": "Si tratta di un albero latifoglia o aghifoglia?", "fr": "Cet arbre est-il un feuillu ou un résineux ?", - "de": "Ist dies ein Laub- oder Nadelbaum?" + "de": "Ist dies ein Laub- oder Nadelbaum?", + "es": "¿Es un árbol de hoja ancha o de hoja aguja?" }, "mappings": [ { @@ -94,7 +99,8 @@ "it": "Latifoglia", "fr": "Feuillu", "de": "Laubbaum", - "ca": "De fulla ampla" + "ca": "De fulla ampla", + "es": "Latifoliada" }, "icon": { "path": "./assets/themes/trees/broadleaved.svg", @@ -113,7 +119,8 @@ "it": "Aghifoglia", "fr": "Résineux", "de": "Nadelbaum", - "ca": "Amb fulles d'agulla" + "ca": "Amb fulles d'agulla", + "es": "Hoja aguja" }, "icon": { "path": "./assets/themes/trees/needleleaved.svg", @@ -131,7 +138,8 @@ "en": "Permanently leafless", "it": "Privo di foglie (permanente)", "fr": "Sans feuilles (Permanent)", - "de": "Dauerhaft blattlos" + "de": "Dauerhaft blattlos", + "es": "Permanentemente sin hojas" }, "hideInAnswer": true, "icon": { @@ -148,7 +156,8 @@ "en": "How significant is this tree? Choose the first answer that applies.", "it": "Quanto significativo è questo albero? Scegli la prima risposta che corrisponde.", "fr": "Quelle est l'importance de cet arbre ? Choisissez la première réponse qui s'applique.", - "de": "Wie bedeutsam ist dieser Baum? Wählen Sie die erste Antwort, die zutrifft." + "de": "Wie bedeutsam ist dieser Baum? Wählen Sie die erste Antwort, die zutrifft.", + "es": "¿Qué importancia tiene este árbol? Elige la primera respuesta que corresponda." }, "mappings": [ { @@ -162,7 +171,8 @@ "en": "The tree is remarkable due to its size or prominent location. It is useful for navigation.", "it": "È un albero notevole per le sue dimensioni o per la posizione prominente. È utile alla navigazione.", "fr": "L'arbre est remarquable en raison de sa taille ou de son emplacement proéminent. Il est utile pour la navigation.", - "de": "Der Baum ist aufgrund seiner Größe oder seiner markanten Lage bedeutsam. Er ist nützlich zur Orientierung." + "de": "Der Baum ist aufgrund seiner Größe oder seiner markanten Lage bedeutsam. Er ist nützlich zur Orientierung.", + "es": "El árbol es notable debido a su tamaño o ubicación prominente. Es útil para la navegación." } }, { @@ -176,7 +186,8 @@ "en": "The tree is a natural monument, e.g. because it is especially old, or of a valuable species.", "it": "L’albero è un monumento naturale, ad esempio perché specialmente antico o appartenente a specie importanti.", "fr": "Cet arbre est un monument naturel (ex : âge, espèce, etc…)", - "de": "Der Baum ist ein Naturdenkmal, z. B. weil er besonders alt ist oder zu einer wertvollen Art gehört." + "de": "Der Baum ist ein Naturdenkmal, z. B. weil er besonders alt ist oder zu einer wertvollen Art gehört.", + "es": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo, o de una especie valiosa." } }, { @@ -190,7 +201,8 @@ "en": "The tree is used for agricultural purposes, e.g. in an orchard.", "it": "L’albero è usato per scopi agricoli, ad esempio in un frutteto.", "fr": "Cet arbre est utilisé à but d’agriculture (ex : dans un verger)", - "de": "Der Baum wird für landwirtschaftliche Zwecke genutzt, z. B. in einer Obstplantage." + "de": "Der Baum wird für landwirtschaftliche Zwecke genutzt, z. B. in einer Obstplantage.", + "es": "El árbol se utiliza con fines agrícolas, por ejemplo, en un huerto." } }, { @@ -204,7 +216,8 @@ "en": "The tree is in a park or similar (cemetery, school grounds, …).", "it": "L’albero è in un parco o qualcosa di simile (cimitero, aree didattiche, etc.).", "fr": "Cet arbre est dans un parc ou une aire similaire (ex : cimetière, cour d’école, …).", - "de": "Der Baum steht in einem Park oder ähnlichem (Friedhof, Schulgelände, ...)." + "de": "Der Baum steht in einem Park oder ähnlichem (Friedhof, Schulgelände, ...).", + "es": "El árbol está en un parque o similar (cementerio, recinto escolar, ...)." } }, { @@ -218,6 +231,7 @@ "en": "The tree is a residential garden.", "it": "L’albero è un giardino residenziale.", "fr": "Cet arbre est dans une cour résidentielle.", + "es": "El árbol está en un jardín privado o residencial.", "de": "Der Baum steht in einem Wohngarten." } }, @@ -232,7 +246,8 @@ "en": "This is a tree along an avenue.", "it": "Fa parte di un viale alberato.", "fr": "C'est un arbre le long d'une avenue.", - "de": "Dieser Baum steht entlang einer Straße." + "de": "Dieser Baum steht entlang einer Straße.", + "es": "El árbol está en bandejón de una avenida." } }, { @@ -246,6 +261,7 @@ "en": "The tree is an urban area.", "it": "L’albero si trova in un’area urbana.", "fr": "L'arbre est une zone urbaine.", + "es": "El árbol está en un zona urbana.", "de": "Der Baum steht in einem städtischen Gebiet." } }, @@ -260,7 +276,8 @@ "en": "The tree is outside of an urban area.", "it": "L’albero si trova fuori dall’area urbana.", "fr": "Cet arbre est en zone rurale.", - "de": "Dieser Baum steht außerhalb eines städtischen Gebiets." + "de": "Dieser Baum steht außerhalb eines städtischen Gebiets.", + "es": "El árbol está fuera de una zona urbana." } } ] @@ -273,7 +290,8 @@ "it": "È un sempreverde o caduco?", "ru": "Это дерево вечнозелёное или листопадное?", "fr": "L’arbre est-il à feuillage persistant ou caduc ?", - "de": "Ist dies ein Nadelbaum oder ein Laubbaum?" + "de": "Ist dies ein Nadelbaum oder ein Laubbaum?", + "es": "¿El árbol es Siempreverde o Caduco?" }, "mappings": [ { @@ -288,7 +306,8 @@ "it": "Caduco: l’albero perde le sue foglie per un periodo dell’anno.", "ru": "Листопадное: у дерева опадают листья в определённое время года.", "fr": "Caduc : l’arbre perd son feuillage une partie de l’année.", - "de": "Laubabwerfend: Der Baum verliert für eine gewisse Zeit des Jahres seine Blätter." + "de": "Laubabwerfend: Der Baum verliert für eine gewisse Zeit des Jahres seine Blätter.", + "es": "Caduco o Deciduo: el árbol pierde las hojas en un período del año" } }, { @@ -304,7 +323,8 @@ "fr": "À feuilles persistantes.", "ru": "Вечнозелёное.", "de": "immergrüner Baum.", - "ca": "Perenne." + "ca": "Perenne.", + "es": "Siempreverde." } } ], @@ -366,7 +386,8 @@ "it": "L’albero ha un nome?", "fr": "L'arbre a-t-il un nom ?", "ru": "Есть ли у этого дерева название?", - "de": "Hat der Baum einen Namen?" + "de": "Hat der Baum einen Namen?", + "es": "El árbol no tiene nombre?." }, "freeform": { "key": "name", @@ -388,7 +409,8 @@ "it": "L’albero non ha un nome.", "fr": "L'arbre n'a pas de nom.", "ru": "У этого дерева нет названия.", - "de": "Der Baum hat keinen Namen." + "de": "Der Baum hat keinen Namen.", + "es": "No identificas la especie." } } ], @@ -408,7 +430,8 @@ "en": "Is this tree registered heritage?", "it": "Quest’albero è registrato come patrimonio?", "fr": "Cet arbre est-il inscrit au patrimoine ?", - "de": "Ist dieser Baum ein Naturdenkmal?" + "de": "Ist dieser Baum ein Naturdenkmal?", + "es": "¿Este árbol es patrimonio registrado?" }, "mappings": [ { @@ -423,7 +446,8 @@ "en": "Registered as heritage by Onroerend Erfgoed Flanders", "it": "Registrato come patrimonio da Onroerend Erfgoed Flanders", "fr": "Fait partie du patrimoine par Onroerend Erfgoed", - "de": "Als Denkmal registriert von der Onroerend Erfgoed Flandern" + "de": "Als Denkmal registriert von der Onroerend Erfgoed Flandern", + "es": "Registrado como patrimonio por Onroerend Erfgoed Flandes" }, "icon": { "path": "./assets/layers/tree_node/Onroerend_Erfgoed_logo_without_text.svg", @@ -442,7 +466,8 @@ "en": "Registered as heritage by Direction du Patrimoine culturel Brussels", "it": "Registrato come patrimonio da Direction du Patrimoine culturel di Bruxelles", "fr": "Enregistré comme patrimoine par la Direction du Patrimoine culturel Bruxelles", - "de": "Als Denkmal registriert von der Direction du Patrimoine culturel Brüssel" + "de": "Als Denkmal registriert von der Direction du Patrimoine culturel Brüssel", + "es": "Registrado como patrimonio por la Dirección de Patrimonio Cultural de Bruselas" } }, { @@ -457,7 +482,8 @@ "en": "Registered as heritage by a different organisation", "it": "Registrato come patrimonio da un’organizzazione differente", "fr": "Enregistré comme patrimoine par une autre organisation", - "de": "Von einer anderen Organisation als Denkmal registriert" + "de": "Von einer anderen Organisation als Denkmal registriert", + "es": "Registrado como patrimonio por una organización diferente" } }, { @@ -472,7 +498,8 @@ "en": "Not registered as heritage", "it": "Non è registrato come patrimonio", "fr": "Non enregistré comme patrimoine", - "de": "Nicht als Denkmal registriert" + "de": "Nicht als Denkmal registriert", + "es": "No registrado como patrimonio" } }, { @@ -486,7 +513,8 @@ "en": "Registered as heritage by a different organisation", "it": "Registrato come patrimonio da un’organizzazione differente", "fr": "Enregistré comme patrimoine par une autre organisation", - "de": "Von einer anderen Organisation als Denkmal registriert" + "de": "Von einer anderen Organisation als Denkmal registriert", + "es": "Registrado como patrimonio por un organización diferente" }, "hideInAnswer": true } @@ -512,7 +540,8 @@ "en": "What is the ID issued by Onroerend Erfgoed Flanders?", "it": "Qual è l’ID rilasciato da Onroerend Erfgoed Flanders?", "fr": "Quel est son identifiant donné par Onroerend Erfgoed ?", - "de": "Wie lautet die Kennung der Onroerend Erfgoed Flanders?" + "de": "Wie lautet die Kennung der Onroerend Erfgoed Flanders?", + "es": "¿Cuál es la identificación emitida por Onroerend Erfgoed Flandes?" }, "freeform": { "key": "ref:OnroerendErfgoed", @@ -533,14 +562,16 @@ "it": "\"\"/ Wikidata: {wikidata}", "ru": "\"\"/ Wikidata: {wikidata}", "fr": "\"\"/ Wikidata : {wikidata}", - "de": "\"\"/ Wikidata: {wikidata}" + "de": "\"\"/ Wikidata: {wikidata}", + "es": "\"\"/ Wikidata: {wikidata}" }, "question": { "nl": "Wat is het Wikidata-ID van deze boom?", "en": "What is the Wikidata ID for this tree?", "it": "Qual è l’ID Wikidata per questo albero?", "fr": "Quel est l'identifiant Wikidata de cet arbre ?", - "de": "Was ist das passende Wikidata Element zu diesem Baum?" + "de": "Was ist das passende Wikidata Element zu diesem Baum?", + "es": "¿Cuál es el ID de Wikidata para este árbol?" }, "freeform": { "key": "wikidata", @@ -568,14 +599,16 @@ "it": "una albero latifoglia", "fr": "une arbre feuillu", "ru": "Лиственное дерево", - "de": "eine laubbaum" + "de": "eine laubbaum", + "es": "árbol de hoja ancha" }, "description": { "nl": "Een boom van een soort die blaadjes heeft, bijvoorbeeld eik of populier.", "en": "A tree of a species with leaves, such as oak or populus.", "it": "Un albero di una specie con foglie larghe come la quercia o il pioppo.", "fr": "Un arbre d'une espèce avec de larges feuilles, comme le chêne ou le peuplier.", - "de": "Ein Baum mit Blättern, z. B. Eiche oder Buche." + "de": "Ein Baum mit Blättern, z. B. Eiche oder Buche.", + "es": "Un árbol de hojas como el Roble o el Álamo." }, "preciseInput": { "preferredBackground": "photo" @@ -592,7 +625,8 @@ "it": "una albero aghifoglia", "ru": "Хвойное дерево", "fr": "une arbre résineux", - "de": "eine nadelbaum" + "de": "eine nadelbaum", + "es": "Árbol tipo Conífera" }, "description": { "nl": "Een boom van een soort met naalden, bijvoorbeeld den of spar.", @@ -600,7 +634,8 @@ "it": "Un albero di una specie con aghi come il pino o l’abete.", "ru": "Дерево с хвоей (иглами), например, сосна или ель.", "fr": "Une espèce d’arbre avec des épines comme le pin ou l’épicéa.", - "de": "Ein Baum mit Nadeln, z. B. Kiefer oder Fichte." + "de": "Ein Baum mit Nadeln, z. B. Kiefer oder Fichte.", + "es": "Un árbol de hojas agujas, como el Pino o el Abeto." }, "preciseInput": { "preferredBackground": "photo" @@ -618,7 +653,8 @@ "fr": "une arbre", "id": "Pohon", "de": "eine baum", - "ca": "un arbre" + "ca": "un arbre", + "es": "un árbol" }, "description": { "nl": "Wanneer je niet zeker bent of het nu een loof- of naaldboom is.", @@ -626,7 +662,8 @@ "it": "Qualora non si sia sicuri se si tratta di un albero latifoglia o aghifoglia.", "fr": "Si vous n'êtes pas sûr(e) de savoir s'il s'agit d'un arbre à feuilles larges ou à aiguilles.", "ru": "Если вы не уверены в том, лиственное это дерево или хвойное.", - "de": "Wenn Sie nicht sicher sind, ob es sich um einen Laubbaum oder einen Nadelbaum handelt." + "de": "Wenn Sie nicht sicher sind, ob es sich um einen Laubbaum oder einen Nadelbaum handelt.", + "es": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja." }, "preciseInput": { "preferredBackground": "photo" @@ -675,6 +712,7 @@ "description": { "en": "A layer showing trees", "nl": "Een laag die bomen toont", + "es": "Una capa que muestra árboles", "de": "Eine Ebene, die Bäume zeigt" } } \ No newline at end of file diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json index 334d611c86..3e51ea7e17 100644 --- a/assets/layers/windturbine/windturbine.json +++ b/assets/layers/windturbine/windturbine.json @@ -9,6 +9,9 @@ "zh_Hant": "風機", "hu": "Szélerőmű" }, + "description": { + "en": "Modern windmills generating electricity" + }, "source": { "osmTags": "generator:source=wind" }, diff --git a/assets/themes/trees/trees.json b/assets/themes/trees/trees.json index 76d4f3b3ed..910160fa58 100644 --- a/assets/themes/trees/trees.json +++ b/assets/themes/trees/trees.json @@ -13,7 +13,8 @@ "nb_NO": "Trær", "id": "Pohon", "hu": "Fatérkép", - "ca": "Arbres" + "ca": "Arbres", + "es": "Árboles" }, "shortDescription": { "nl": "Breng bomen in kaart", @@ -27,7 +28,8 @@ "de": "Kartieren Sie alle Bäume", "nb_NO": "Kartlegg alle trærne", "hu": "Az összes fa feltérképezése", - "ca": "Mapeja tots els arbres" + "ca": "Mapeja tots els arbres", + "es": "Mapa de los Árboles" }, "description": { "nl": "Breng bomen in kaart!", @@ -40,7 +42,8 @@ "de": "Kartieren Sie alle Bäume!", "nb_NO": "Kartlegg trærne.", "hu": "Térképezzünk fel minden fát!", - "ca": "Mapeja tots els arbres." + "ca": "Mapeja tots els arbres.", + "es": "Mapa de todos los Árboles" }, "maintainer": "Midgard", "icon": "./assets/themes/trees/logo.svg", diff --git a/langs/layers/en.json b/langs/layers/en.json index 3810cd4645..aaf6f81d83 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -5673,6 +5673,7 @@ "name": "Watermill" }, "windturbine": { + "description": "Modern windmills generating electricity", "name": "wind turbine", "presets": { "0": { diff --git a/langs/layers/es.json b/langs/layers/es.json index bb8a70ec85..482a0f017e 100644 --- a/langs/layers/es.json +++ b/langs/layers/es.json @@ -1093,5 +1093,125 @@ "question": "¿Se puede visitar esta torre?" } } + }, + "tree_node": { + "description": "Una capa que muestra árboles", + "name": "Árbol", + "presets": { + "0": { + "description": "Un árbol de hojas como el Roble o el Álamo.", + "title": "árbol de hoja ancha" + }, + "1": { + "description": "Un árbol de hojas agujas, como el Pino o el Abeto.", + "title": "Árbol tipo Conífera" + }, + "2": { + "description": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja.", + "title": "un árbol" + } + }, + "tagRenderings": { + "tree-decidouous": { + "mappings": { + "0": { + "then": "Caduco o Deciduo: el árbol pierde las hojas en un período del año" + }, + "1": { + "then": "Siempreverde." + } + }, + "question": "¿El árbol es Siempreverde o Caduco?" + }, + "tree-denotation": { + "mappings": { + "0": { + "then": "El árbol es notable debido a su tamaño o ubicación prominente. Es útil para la navegación." + }, + "1": { + "then": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo, o de una especie valiosa." + }, + "2": { + "then": "El árbol se utiliza con fines agrícolas, por ejemplo, en un huerto." + }, + "3": { + "then": "El árbol está en un parque o similar (cementerio, recinto escolar, ...)." + }, + "4": { + "then": "El árbol está en un jardín privado o residencial." + }, + "5": { + "then": "El árbol está en bandejón de una avenida." + }, + "6": { + "then": "El árbol está en un zona urbana." + }, + "7": { + "then": "El árbol está fuera de una zona urbana." + } + }, + "question": "¿Qué importancia tiene este árbol? Elige la primera respuesta que corresponda." + }, + "tree-height": { + "mappings": { + "0": { + "then": "Altura: {height} m" + } + }, + "render": "Altura: {height}" + }, + "tree-heritage": { + "mappings": { + "0": { + "then": "Registrado como patrimonio por Onroerend Erfgoed Flandes" + }, + "1": { + "then": "Registrado como patrimonio por la Dirección de Patrimonio Cultural de Bruselas" + }, + "2": { + "then": "Registrado como patrimonio por una organización diferente" + }, + "3": { + "then": "No registrado como patrimonio" + }, + "4": { + "then": "Registrado como patrimonio por un organización diferente" + } + }, + "question": "¿Este árbol es patrimonio registrado?" + }, + "tree-leaf_type": { + "mappings": { + "0": { + "then": "Latifoliada" + }, + "1": { + "then": "Hoja aguja" + }, + "2": { + "then": "Permanentemente sin hojas" + } + }, + "question": "¿Es un árbol de hoja ancha o de hoja aguja?" + }, + "tree_node-name": { + "mappings": { + "0": { + "then": "No identificas la especie." + } + }, + "question": "El árbol no tiene nombre?." + }, + "tree_node-ref:OnroerendErfgoed": { + "question": "¿Cuál es la identificación emitida por Onroerend Erfgoed Flandes?" + }, + "tree_node-wikidata": { + "question": "¿Cuál es el ID de Wikidata para este árbol?", + "render": "\"\"/ Wikidata: {wikidata}" + } + }, + "title": { + "render": "Árbol" + } } } \ No newline at end of file diff --git a/langs/themes/es.json b/langs/themes/es.json index 03be0cd47e..b1af01d8aa 100644 --- a/langs/themes/es.json +++ b/langs/themes/es.json @@ -139,5 +139,10 @@ "personal": { "description": "Crea una interficie basada en todas las capas disponibles de todas las interficies", "title": "Interficie personal" + }, + "trees": { + "description": "Mapa de todos los Árboles", + "shortDescription": "Mapa de los Árboles", + "title": "Árboles" } } \ No newline at end of file diff --git a/scripts/generateTranslations.ts b/scripts/generateTranslations.ts index a046eabbd3..0f83f30ba3 100644 --- a/scripts/generateTranslations.ts +++ b/scripts/generateTranslations.ts @@ -582,14 +582,12 @@ if (!themeOverwritesWeblate) { genTranslations() const allTranslationFiles = ScriptUtils.readDirRecSync("langs").filter(path => path.endsWith(".json")) for (const path of allTranslationFiles) { - console.log("Formatting ", path) formatFile(path) } - // Some validation TranslationPart.fromDirectory("./langs").validateStrict("./langs") TranslationPart.fromDirectory("./langs/layers").validateStrict("layers") TranslationPart.fromDirectory("./langs/themes").validateStrict("themes") TranslationPart.fromDirectory("./langs/shared-questions").validateStrict("shared-questions") - +console.log("All done!")