From a2f773447e32eeedde7106230ee23daa9a834859 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Sun, 6 Jun 2021 13:33:22 +0200
Subject: [PATCH 01/67] Added translation using Weblate (Chinese (Simplified))
---
langs/zh_Hans.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/zh_Hans.json
diff --git a/langs/zh_Hans.json b/langs/zh_Hans.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/zh_Hans.json
@@ -0,0 +1 @@
+{}
From b6b623c27a2d46fbbd3e7081f3b6c02923d60138 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Sun, 6 Jun 2021 13:33:27 +0200
Subject: [PATCH 02/67] Added translation using Weblate (Chinese (Simplified))
---
langs/themes/zh_Hans.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/themes/zh_Hans.json
diff --git a/langs/themes/zh_Hans.json b/langs/themes/zh_Hans.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/themes/zh_Hans.json
@@ -0,0 +1 @@
+{}
From b7d3ce4d71921498d029bf93b247e95e15f1e420 Mon Sep 17 00:00:00 2001
From: Jose Luis Infante
Date: Sun, 6 Jun 2021 12:19:48 +0000
Subject: [PATCH 03/67] Translated using Weblate (Catalan)
Currently translated at 84.1% (117 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/ca/
---
langs/ca.json | 308 +++++++++++++++++++++++---------------------------
1 file changed, 142 insertions(+), 166 deletions(-)
diff --git a/langs/ca.json b/langs/ca.json
index be6eb3c5c9..4dce84a18e 100644
--- a/langs/ca.json
+++ b/langs/ca.json
@@ -1,174 +1,150 @@
{
- "image": {
- "addPicture": "Afegir foto",
- "uploadingPicture": "Pujant la teva imatge ...",
- "uploadingMultiple": "Pujant {count} de la teva imatge...",
- "pleaseLogin": "Entra per pujar una foto",
- "willBePublished": "La teva foto serà publicada: ",
- "cco": "en domini públic",
- "ccbs": "sota llicència CC-BY-SA",
- "ccb": "sota la llicència CC-BY",
- "uploadFailed": "No s'ha pogut carregar la imatge. Tens Internet i es permeten API de tercers? El navegador Brave o UMatrix podria bloquejar-les.",
- "respectPrivacy": "Respecta la privacitat. No fotografiïs gent o matrícules",
- "uploadDone": "La teva imatge ha estat afegida. Gràcies per ajudar.",
- "dontDelete": "Cancel·lar",
- "doDelete": "Esborrar imatge",
- "isDeleted": "Esborrada"
- },
- "centerMessage": {
- "loadingData": "Carregant dades...",
- "zoomIn": "Amplia per veure o editar les dades",
- "ready": "Fet.",
- "retrying": "La càrrega de dades ha fallat. Tornant-ho a intentar... ({count})"
- },
- "index": {
- "#": "These texts are shown above the theme buttons when no theme is loaded",
- "title": {},
- "intro": {},
- "pickTheme": {}
- },
- "general": {
- "loginWithOpenStreetMap": "Entra a OpenStreetMap",
- "welcomeBack": "Has entrat, benvingut.",
- "loginToStart": "Entra per contestar aquesta pregunta",
- "search": {
- "search": "Cerca una ubicació",
- "searching": "Cercant...",
- "nothing": "Res trobat.",
- "error": "Alguna cosa no ha sortit bé..."
+ "image": {
+ "addPicture": "Afegir foto",
+ "uploadingPicture": "Pujant la teva imatge…",
+ "uploadingMultiple": "Pujant {count} imatges…",
+ "pleaseLogin": "Entra per pujar una foto",
+ "willBePublished": "La teva foto serà publicada: ",
+ "cco": "en domini públic",
+ "ccbs": "sota llicència CC-BY-SA",
+ "ccb": "sota la llicència CC-BY",
+ "uploadFailed": "No s'ha pogut pujar la imatge. Tens Internet i es permeten API de tercers? El navegador Brave o UMatrix podria bloquejar-les.",
+ "respectPrivacy": "Respecta la privacitat. No fotografiïs gent o matrícules. No facis servir imatges de Google Maps, Google Streetview o altres fonts amb copyright.",
+ "uploadDone": "La teva imatge ha estat afegida. Gràcies per ajudar.",
+ "dontDelete": "Cancel·lar",
+ "doDelete": "Esborrar imatge",
+ "isDeleted": "Esborrada"
},
- "returnToTheMap": "Tornar al mapa",
- "save": "Desar",
- "cancel": "Cancel·lar",
- "skip": "Saltar aquesta pregunta",
- "oneSkippedQuestion": "Has ignorat una pregunta",
- "skippedQuestions": "Has ignorat algunes preguntes",
- "number": "nombre",
- "osmLinkTooltip": "Mira aquest objecte a OpenStreetMap per veure historial i altres opcions d'edició",
- "add": {
- "addNew": "Afegir {category} aquí",
- "title": "Vols afegir un punt?",
- "intro": "Has marcat un lloc on no coneixem les dades.
",
- "pleaseLogin": "Entra per afegir un nou punt",
- "zoomInFurther": "Apropa per afegir un punt.",
- "stillLoading": "Les dades es segueixen carregant. Espera una mica abans d'afegir cap punt.",
- "confirmIntro": "Afegir {title} aquí?
El punt que estàs creant el veurà tothom. Només afegeix coses que realment existeixin. Moltes aplicacions fan servir aquestes dades.",
- "confirmButton": "Afegir {category} aquí",
- "openLayerControl": "Obrir el control de capes",
- "layerNotEnabled": "La capa {layer} no està habilitada. Fes-ho per poder afegir un punt a aquesta capa"
+ "centerMessage": {
+ "loadingData": "Carregant dades...",
+ "zoomIn": "Amplia per veure o editar les dades",
+ "ready": "Fet.",
+ "retrying": "La càrrega de dades ha fallat. Tornant-ho a intentar... ({count})"
},
- "pickLanguage": "Tria idioma: ",
- "about": "Edita facilment i afegeix punts a OpenStreetMap d'una temàtica determinada",
- "nameInlineQuestion": "{category}: El seu nom és $$$",
- "noNameCategory": "{category} sense nom",
- "questions": {
- "phoneNumberOf": "Quin és el telèfon de {category}?",
- "phoneNumberIs": "El número de telèfon de {category} és {phone}",
- "websiteOf": "Quina és la pàgina web de {category}?",
- "websiteIs": "Pàgina web: {website}",
- "emailOf": "Quina és l'adreça de correu-e de {category}?",
- "emailIs": "L'adreça de correu de {category} és {email}"
+ "index": {
+ "#": "These texts are shown above the theme buttons when no theme is loaded",
+ "intro": "MapComplete és un visor i editor d'OpenStreetMap, que et mostra informació sobre un tema específic",
+ "title": "Benvingut/da a MapComplete"
},
- "openStreetMapIntro": "Un mapa obert
No seria genial si hagués un únic mapa, que tothom pogués utilitzar i editar lliurement?Un sol lloc on emmagatzemar tota la informació geogràfica? Llavors tots aquests llocs web amb mapes diferents petits i incompatibles (que sempre estaran desactulitzats) ja no serien necessaris.
OpenStreetMap és aquest mapa. Les dades del mapa es poden utilitzar de franc (amb atribució i publicació de canvis en aquestes dades). A més a més, tothom pot agregar lliurement noves dades i corregir errors. De fet, aquest lloc web també fa servir OpenStreetMap. Totes les dades provenen d'allà i les teves respostes i correccions també s'afegiran allà.
Moltes persones i aplicacions ja utilitzen OpenStreetMap: Maps.me, OsmAnd, però també els mapes de Facebook, Instagram, Apple i Bing són (en part) impulsats per OpenStreetMap. Si canvies alguna cosa aquí també es reflectirà en aquestes aplicacions en la seva propera actualització.
",
- "attribution": {
- "attributionTitle": {},
- "attributionContent": {},
- "themeBy": {},
- "iconAttribution": {
- "title": {}
- },
- "mapContributionsBy": {},
- "mapContributionsByAndHidden": {}
+ "general": {
+ "loginWithOpenStreetMap": "Entra a OpenStreetMap",
+ "welcomeBack": "Has entrat, benvingut.",
+ "loginToStart": "Entra per contestar aquesta pregunta",
+ "search": {
+ "search": "Cerca una ubicació",
+ "searching": "Cercant...",
+ "nothing": "Res trobat.",
+ "error": "Alguna cosa no ha sortit bé..."
+ },
+ "returnToTheMap": "Tornar al mapa",
+ "save": "Desar",
+ "cancel": "Cancel·lar",
+ "skip": "Saltar aquesta pregunta",
+ "oneSkippedQuestion": "Has ignorat una pregunta",
+ "skippedQuestions": "Has ignorat algunes preguntes",
+ "number": "nombre",
+ "osmLinkTooltip": "Mira aquest objecte a OpenStreetMap per veure historial i altres opcions d'edició",
+ "add": {
+ "addNew": "Afegir {category} aquí",
+ "title": "Vols afegir un punt?",
+ "intro": "Has marcat un lloc on no coneixem les dades.
",
+ "pleaseLogin": "Entra per afegir un nou punt",
+ "zoomInFurther": "Apropa per afegir un punt.",
+ "stillLoading": "Les dades es segueixen carregant. Espera una mica abans d'afegir cap punt.",
+ "confirmIntro": "Afegir {title} aquí?
El punt que estàs creant el veurà tothom. Només afegeix coses que realment existeixin. Moltes aplicacions fan servir aquestes dades.",
+ "confirmButton": "Afegir {category} aquí",
+ "openLayerControl": "Obrir el control de capes",
+ "layerNotEnabled": "La capa {layer} no està habilitada. Fes-ho per poder afegir un punt a aquesta capa"
+ },
+ "pickLanguage": "Tria idioma: ",
+ "about": "Edita facilment i afegeix punts a OpenStreetMap d'una temàtica determinada",
+ "nameInlineQuestion": "{category}: El seu nom és $$$",
+ "noNameCategory": "{category} sense nom",
+ "questions": {
+ "phoneNumberOf": "Quin és el telèfon de {category}?",
+ "phoneNumberIs": "El número de telèfon de {category} és {phone}",
+ "websiteOf": "Quina és la pàgina web de {category}?",
+ "websiteIs": "Pàgina web: {website}",
+ "emailOf": "Quina és l'adreça de correu-e de {category}?",
+ "emailIs": "L'adreça de correu de {category} és {email}"
+ },
+ "openStreetMapIntro": "Un mapa obert
No seria genial si hagués un únic mapa, que tothom pogués utilitzar i editar lliurement?Un sol lloc on emmagatzemar tota la informació geogràfica? Llavors tots aquests llocs web amb mapes diferents petits i incompatibles (que sempre estaran desactulitzats) ja no serien necessaris.OpenStreetMap és aquest mapa. Les dades del mapa es poden utilitzar de franc (amb atribució i publicació de canvis en aquestes dades). A més a més, tothom pot agregar lliurement noves dades i corregir errors. De fet, aquest lloc web també fa servir OpenStreetMap. Totes les dades provenen d'allà i les teves respostes i correccions també s'afegiran allà.
Moltes persones i aplicacions ja utilitzen OpenStreetMap: Maps.me, OsmAnd, però també els mapes de Facebook, Instagram, Apple i Bing són (en part) impulsats per OpenStreetMap. Si canvies alguna cosa aquí també es reflectirà en aquestes aplicacions en la seva propera actualització.
",
+ "sharescreen": {
+ "intro": "Comparteix aquest mapa
Comparteix aquest mapa copiant l'enllaç de sota i enviant-lo a amics i família:",
+ "addToHomeScreen": "Afegir-lo a la pantalla d'inici
Pots afegir aquesta web a la pantalla d'inici del teu smartphone per a que es vegi més nadiu. Apreta al botó 'afegir a l'inici' a la barra d'adreces URL per fer-ho.",
+ "embedIntro": "Inclou-ho a la teva pàgina web
Inclou aquest mapa dins de la teva pàgina web.
T'animem a que ho facis, no cal que demanis permís.
És de franc, i sempre ho serà. A més gent que ho faci servir més valuós serà.",
+ "copiedToClipboard": "Enllaç copiat al portapapers",
+ "thanksForSharing": "Gràcies per compartir",
+ "editThisTheme": "Editar aquest repte",
+ "editThemeDescription": "Afegir o canviar preguntes d'aquest repte",
+ "fsUserbadge": "Activar el botó d'entrada",
+ "fsSearch": "Activar la barra de cerca",
+ "fsWelcomeMessage": "Mostra el missatge emergent de benvinguda i pestanyes associades",
+ "fsLayers": "Activar el control de capes",
+ "fsLayerControlToggle": "Iniciar el control de capes avançat",
+ "fsAddNew": "Activar el botó d'afegir nou PDI'",
+ "fsGeolocation": "Activar el botó de 'geolocalitza'm' (només mòbil)",
+ "fsIncludeCurrentBackgroundMap": "Incloure l'opció de fons actual {name}",
+ "fsIncludeCurrentLayers": "Incloure les opcions de capa actual",
+ "fsIncludeCurrentLocation": "Incloure localització actual"
+ },
+ "morescreen": {
+ "intro": "Més peticions
T'agrada captar dades?
Hi ha més capes disponibles.",
+ "requestATheme": "Si vols que et fem una petició pròpia , demana-la aquí.",
+ "streetcomplete": "Una altra aplicació similar és StreetComplete.",
+ "createYourOwnTheme": "Crea la teva pròpia petició completa de MapComplete des de zero."
+ },
+ "readYourMessages": "Llegeix tots els teus missatges d'OpenStreetMap abans d'afegir nous punts.",
+ "fewChangesBefore": "Contesta unes quantes preguntes sobre punts existents abans d'afegir-ne un de nou.",
+ "goToInbox": "Obrir missatges",
+ "getStartedLogin": "Entra a OpenStreetMap per començar",
+ "getStartedNewAccount": " o crea un nou compte",
+ "noTagsSelected": "No s'han seleccionat etiquetes",
+ "backgroundMap": "Mapa de fons",
+ "layerSelection": {
+ "zoomInToSeeThisLayer": "Amplia per veure aquesta capa"
+ },
+ "weekdays": {
+ "abbreviations": {
+ "monday": "Dil",
+ "tuesday": "Dim",
+ "wednesday": "Dic",
+ "thursday": "Dij",
+ "friday": "Div",
+ "saturday": "Dis",
+ "sunday": "Diu"
+ },
+ "monday": "Dilluns",
+ "tuesday": "Dimarts",
+ "wednesday": "Dimecres",
+ "thursday": "Dijous",
+ "friday": "Divendres",
+ "saturday": "Dissabte",
+ "sunday": "Diumenge"
+ },
+ "opening_hours": {
+ "open_during_ph": "Durant festes aquest servei és",
+ "opensAt": "des de",
+ "openTill": "fins",
+ "not_all_rules_parsed": "L'horari d'aquesta botiga és complicat. Les normes següents seran ignorades en l'entrada:",
+ "closed_until": "Tancat fins {date}",
+ "closed_permanently": "Tancat - sense dia d'obertura conegut",
+ "ph_not_known": " ",
+ "ph_closed": "tancat",
+ "ph_open": "tancat"
+ }
},
- "sharescreen": {
- "intro": "Comparteix aquest mapa
Comparteix aquest mapa copiant l'enllaç de sota i enviant-lo a amics i família:",
- "addToHomeScreen": "Afegir-lo a la pantalla d'inici
Pots afegir aquesta web a la pantalla d'inici del teu smartphone per a que es vegi més nadiu. Apreta al botó 'afegir a l'inici' a la barra d'adreces URL per fer-ho.",
- "embedIntro": "Inclou-ho a la teva pàgina web
Inclou aquest mapa dins de la teva pàgina web.
T'animem a que ho facis, no cal que demanis permís.
És de franc, i sempre ho serà. A més gent que ho faci servir més valuós serà.",
- "copiedToClipboard": "Enllaç copiat al portapapers",
- "thanksForSharing": "Gràcies per compartir",
- "editThisTheme": "Editar aquest repte",
- "editThemeDescription": "Afegir o canviar preguntes d'aquest repte",
- "fsUserbadge": "Activar el botó d'entrada",
- "fsSearch": "Activar la barra de cerca",
- "fsWelcomeMessage": "Mostra el missatge emergent de benvinguda i pestanyes associades",
- "fsLayers": "Activar el control de capes",
- "fsLayerControlToggle": "Iniciar el control de capes avançat",
- "fsAddNew": "Activar el botó d'afegir nou PDI'",
- "fsGeolocation": "Activar el botó de 'geolocalitza'm' (només mòbil)",
- "fsIncludeCurrentBackgroundMap": "Incloure l'opció de fons actual {name}",
- "fsIncludeCurrentLayers": "Incloure les opcions de capa actual",
- "fsIncludeCurrentLocation": "Incloure localització actual"
+ "favourite": {
+ "panelIntro": "La teva interfície personal
Activa les teves capes favorites de totes les interfícies oficials",
+ "loginNeeded": "Entrar
El disseny personalizat només està disponible pels usuaris d' OpenstreetMap",
+ "reload": "Recarregar dades"
},
- "morescreen": {
- "intro": "Més peticions
T'agrada captar dades?
Hi ha més capes disponibles.",
- "requestATheme": "Si vols que et fem una petició pròpia , demana-la aquí.",
- "streetcomplete": "Una altra aplicació similar és StreetComplete.",
- "createYourOwnTheme": "Crea la teva pròpia petició completa de MapComplete des de zero."
- },
- "readYourMessages": "Llegeix tots els teus missatges d'OpenStreetMap abans d'afegir nous punts.",
- "fewChangesBefore": "Contesta unes quantes preguntes sobre punts existents abans d'afegir-ne un de nou.",
- "goToInbox": "Obrir missatges",
- "getStartedLogin": "Entra a OpenStreetMap per començar",
- "getStartedNewAccount": " o crea un nou compte",
- "noTagsSelected": "No s'han seleccionat etiquetes",
- "customThemeIntro": {},
- "aboutMapcomplete": {},
- "backgroundMap": "Mapa de fons",
- "layerSelection": {
- "zoomInToSeeThisLayer": "Amplia per veure aquesta capa",
- "title": {}
- },
- "weekdays": {
- "abbreviations": {
- "monday": "Dil",
- "tuesday": "Dim",
- "wednesday": "Dic",
- "thursday": "Dij",
- "friday": "Div",
- "saturday": "Dis",
- "sunday": "Diu"
- },
- "monday": "Dilluns",
- "tuesday": "Dimarts",
- "wednesday": "Dimecres",
- "thursday": "Dijous",
- "friday": "Divendres",
- "saturday": "Dissabte",
- "sunday": "Diumenge"
- },
- "opening_hours": {
- "error_loading": {},
- "open_during_ph": "Durant festes aquest servei és",
- "opensAt": "des de",
- "openTill": "fins",
- "not_all_rules_parsed": "L'horari d'aquesta botiga és complicat. Les normes següents seran ignorades en l'entrada:",
- "closed_until": "Tancat fins {date}",
- "closed_permanently": "Tancat - sense dia d'obertura conegut",
- "open_24_7": {},
- "ph_not_known": " ",
- "ph_closed": "tancat",
- "ph_open": "tancat"
+ "reviews": {
+ "plz_login": "Entra per deixar una revisió",
+ "write_a_comment": "Deixa una revisió…",
+ "no_reviews_yet": "No hi ha revisions encara. Sigues el primer a escriure'n una i ajuda al negoci i a les dades lliures!",
+ "name_required": "És requerit un nom per mostrar i crear revisions",
+ "title_singular": "Una revisió",
+ "title": "{count} revisions"
}
- },
- "favourite": {
- "panelIntro": "La teva interfície personal
Activa les teves capes favorites de totes les interfícies oficials",
- "loginNeeded": "Entrar
El disseny personalizat només està disponible pels usuaris d' OpenstreetMap",
- "reload": "Recarregar dades"
- },
- "reviews": {
- "title": {},
- "title_singular": {},
- "name_required": {},
- "no_reviews_yet": {},
- "write_a_comment": {},
- "no_rating": {},
- "posting_as": {},
- "i_am_affiliated": {},
- "affiliated_reviewer_warning": {},
- "saving_review": {},
- "saved": {},
- "tos": {},
- "attribution": {},
- "plz_login": {}
- }
}
From 992a88ac259a1b45d77fe1889788cd463c44bb5f Mon Sep 17 00:00:00 2001
From: JCGF-OSM
Date: Sun, 6 Jun 2021 12:18:48 +0000
Subject: [PATCH 04/67] Translated using Weblate (Spanish)
Currently translated at 87.7% (122 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/es/
---
langs/es.json | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/langs/es.json b/langs/es.json
index 723c469b98..2f8b65b9f1 100644
--- a/langs/es.json
+++ b/langs/es.json
@@ -1,22 +1,22 @@
{
"image": {
"addPicture": "Añadir foto",
- "uploadingPicture": "Subiendo tu imagen ...",
- "uploadingMultiple": "Subiendo {count} de tus fotos...",
+ "uploadingPicture": "Subiendo tu imagen…",
+ "uploadingMultiple": "Subiendo {count} de tus fotos…",
"pleaseLogin": "Entra para subir una foto",
"willBePublished": "Tu foto será publicada: ",
"cco": "en dominio público",
"ccbs": "bajo licencia CC-BY-SA",
"ccb": "bajo licencia CC-BY",
"uploadFailed": "No se pudo cargar la imagen. ¿Tienes Internet y se permiten API de terceros? El navegador Brave o UMatrix podría bloquearlas.",
- "respectPrivacy": "Respeta la privacidad. No fotografíes gente o matrículas",
+ "respectPrivacy": "No fotografíes personas o matrículas. No subas datos de Google Maps, Google Streetview u otras fuentes protegidas por derechos de autor.",
"uploadDone": "Tu imagen ha sido añadida. Gracias por ayudar.",
"dontDelete": "Cancelar",
"doDelete": "Borrar imagen",
"isDeleted": "Borrada"
},
"centerMessage": {
- "loadingData": "Cargando datos...",
+ "loadingData": "Cargando datos…",
"zoomIn": "Amplía para ver o editar los datos",
"ready": "Hecho.",
"retrying": "La carga de datos ha fallado. Volviéndolo a probar... ({count})"
@@ -33,7 +33,7 @@
"loginToStart": "Entra para contestar esta pregunta",
"search": {
"search": "Busca una ubicación",
- "searching": "Buscando...",
+ "searching": "Buscando…",
"nothing": "Nada encontrado.",
"error": "Alguna cosa no ha ido bien..."
},
@@ -48,8 +48,8 @@
"add": {
"addNew": "Añadir {category} aquí",
"title": "Quieres añadir un punto?",
- "intro": "Has marcado un lugar del que no conocemos los datos.
",
- "pleaseLogin": "Entra para añadir un nuevo punto",
+ "intro": "Has marcado un lugar del que no conocemos los datos.
",
+ "pleaseLogin": "`Por favor inicia sesión para añadir un nuevo punto",
"zoomInFurther": "Acerca para añadir un punto.",
"stillLoading": "Los datos se siguen cargando. Espera un poco antes de añadir ningún punto.",
"confirmIntro": "Añadir {title} aquí?
El punto que estás creando lo verá todo el mundo. Sólo añade cosas que realmente existan. Muchas aplicaciones usan estos datos.",
@@ -63,7 +63,7 @@
"noNameCategory": "{category} sin nombre",
"questions": {
"phoneNumberOf": "Qué teléfono tiene {category}?",
- "phoneNumberIs": "El número de teléfono de {category} es {phone}",
+ "phoneNumberIs": "El número de teléfono de {category} es {phone}",
"websiteOf": "Cual es la página web de {category}?",
"websiteIs": "Página web: {website}",
"emailOf": "¿Qué dirección de correu tiene {category}?",
From 4af496d19a6faf96a9c4c0fc2f54a52b3826c3c0 Mon Sep 17 00:00:00 2001
From: vankos
Date: Sun, 6 Jun 2021 12:16:24 +0000
Subject: [PATCH 05/67] Translated using Weblate (Russian)
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/ru/
---
langs/ru.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/ru.json b/langs/ru.json
index ad989ef847..c6dd95bb7f 100644
--- a/langs/ru.json
+++ b/langs/ru.json
@@ -77,7 +77,7 @@
"zoomInToSeeThisLayer": "Увеличьте масштаб, чтобы увидеть этот слой"
},
"backgroundMap": "Фоновая карта",
- "aboutMapcomplete": "О MapComplete
С помощью MapComplete вы можете обогатить OpenStreetMap информацией по одной теме. Ответьте на несколько вопросов, и через несколько минут ваши материалы будут доступны по всему миру! Сопровождающий темы определяет элементы, вопросы и языки для темы.
Узнайте больше
MapComplete всегда предлагает следующий шаг, чтобы узнать больше об OpenStreetMap.
- При встраивании в веб-сайт iframe ссылается на полноэкранную версию MapComplete
- Полноэкранная версия предлагает информацию об OpenStreetMap
- Просмотр работает без входа, но для редактирования требуется вход в OSM.
- Если вы не вошли в систему, вас попросят войти
- Ответив на один вопрос, вы можете добавлять новые точки на карту
- Через некоторое время отображаются актуальные OSM-метки с последующей ссылкой на вики
Вы заметили проблему? У вас есть запрос на функциональность? Хотите помочь с переводом? Зайдите на репозиторий с исходным кодом или трекер проблем.
Хотите увидеть свой прогресс? Следите за количеством правок на OsmCha.
",
+ "aboutMapcomplete": "О MapComplete
С помощью MapComplete вы можете обогатить OpenStreetMap информацией по одной теме. Ответьте на несколько вопросов, и через несколько минут ваши материалы будут доступны по всему миру! Сопровождающий темы определяет элементы, вопросы и языки для темы.
Узнайте больше
MapComplete всегда предлагает следующий шаг, чтобы узнать больше об OpenStreetMap.
- При встраивании в веб-сайт iframe ссылается на полноэкранную версию MapComplete
- Полноэкранная версия предлагает информацию об OpenStreetMap
- Просмотр работает без входа, но для редактирования требуется вход в OSM.
- Если вы не вошли в систему, вас попросят войти
- Ответив на один вопрос, вы можете добавлять новые точки на карту
- Через некоторое время отображаются актуальные OSM-метки с последующей ссылкой на вики
Вы заметили проблему? У вас есть запрос на функциональность? Хотите помочь с переводом? Зайдите на репозиторий с исходным кодом или трекер проблем.
Хотите увидеть свой прогресс? Следите за количеством правок на OsmCha.
",
"customThemeIntro": "Пользовательские темы
Это ранее просмотренные темы, созданные пользователями.",
"noTagsSelected": "Теги не выбраны",
"getStartedNewAccount": " или создать новую учетную запись",
From f5d8f907b1820bd05c726128905bfcb39fffbab3 Mon Sep 17 00:00:00 2001
From: Artem
Date: Sun, 6 Jun 2021 12:08:58 +0000
Subject: [PATCH 06/67] Translated using Weblate (Russian)
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/ru/
---
langs/ru.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/ru.json b/langs/ru.json
index c6dd95bb7f..2367513ae8 100644
--- a/langs/ru.json
+++ b/langs/ru.json
@@ -22,7 +22,7 @@
"pleaseLogin": "Пожалуйста, войдите чтобы добавить новую точку",
"intro": "Вы нажали туда, где ещё нет данных.
",
"title": "Добавить новую точку?",
- "addNew": "Добавить {category} здесь"
+ "addNew": "Добавить новую {category} здесь"
},
"osmLinkTooltip": "Посмотрите этот объект на OpenStreetMap чтобы увидеть его историю или отредактировать",
"number": "номер",
From 6d1d592c8d64c3ecfc93a5305e738a1cb9d81f6d Mon Sep 17 00:00:00 2001
From: Jose Luis Infante
Date: Sun, 6 Jun 2021 12:41:02 +0000
Subject: [PATCH 07/67] Translated using Weblate (Catalan)
Currently translated at 89.9% (125 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/ca/
---
langs/ca.json | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/langs/ca.json b/langs/ca.json
index 4dce84a18e..1ea38770d1 100644
--- a/langs/ca.json
+++ b/langs/ca.json
@@ -132,6 +132,16 @@
"ph_not_known": " ",
"ph_closed": "tancat",
"ph_open": "tancat"
+ },
+ "attribution": {
+ "attributionContent": "Totes les dades provenen d'OpenStreetMap, i es poden reutilitzar lliurement sota la Llicència Oberta de Base de Dades (ODbL).
",
+ "attributionTitle": "Avís d’atribució",
+ "mapContributionsByAndHidden": "Les dades mostrades tenen edicions fetes per {contributors} i {hiddenCount} col·laboradors més",
+ "mapContributionsBy": "Les dades mostrades tenen edicions fetes per {contributors}",
+ "iconAttribution": {
+ "title": "Icones utilitzades"
+ },
+ "themeBy": "Tema mantingut per {author}"
}
},
"favourite": {
@@ -145,6 +155,8 @@
"no_reviews_yet": "No hi ha revisions encara. Sigues el primer a escriure'n una i ajuda al negoci i a les dades lliures!",
"name_required": "És requerit un nom per mostrar i crear revisions",
"title_singular": "Una revisió",
- "title": "{count} revisions"
+ "title": "{count} revisions",
+ "saved": "Revisió compartida. Gràcies per compartir!",
+ "saving_review": "Desant…"
}
}
From 8936be7049e7ed9e71f7656d322a50deace9f447 Mon Sep 17 00:00:00 2001
From: JCGF-OSM
Date: Sun, 6 Jun 2021 12:21:57 +0000
Subject: [PATCH 08/67] Translated using Weblate (Spanish)
Currently translated at 87.7% (122 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/es/
---
langs/es.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/langs/es.json b/langs/es.json
index 2f8b65b9f1..6abe255afe 100644
--- a/langs/es.json
+++ b/langs/es.json
@@ -10,7 +10,7 @@
"ccb": "bajo licencia CC-BY",
"uploadFailed": "No se pudo cargar la imagen. ¿Tienes Internet y se permiten API de terceros? El navegador Brave o UMatrix podría bloquearlas.",
"respectPrivacy": "No fotografíes personas o matrículas. No subas datos de Google Maps, Google Streetview u otras fuentes protegidas por derechos de autor.",
- "uploadDone": "Tu imagen ha sido añadida. Gracias por ayudar.",
+ "uploadDone": "Tu imagen ha sido añadida. Gracias por ayudar.",
"dontDelete": "Cancelar",
"doDelete": "Borrar imagen",
"isDeleted": "Borrada"
@@ -19,7 +19,7 @@
"loadingData": "Cargando datos…",
"zoomIn": "Amplía para ver o editar los datos",
"ready": "Hecho.",
- "retrying": "La carga de datos ha fallado. Volviéndolo a probar... ({count})"
+ "retrying": "La carga de datos ha fallado. Volviéndolo a probar en {count} segundos…"
},
"index": {
"#": "These texts are shown above the theme buttons when no theme is loaded",
From 3e5b79be7cda8a7c6b0af55e94ef41afe975951b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Iv=C3=A1ns?=
Date: Sun, 6 Jun 2021 13:32:46 +0000
Subject: [PATCH 09/67] Translated using Weblate (Galician)
Currently translated at 97.1% (135 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/gl/
---
langs/gl.json | 329 +++++++++++++++++++++++++-------------------------
1 file changed, 163 insertions(+), 166 deletions(-)
diff --git a/langs/gl.json b/langs/gl.json
index 666afd9979..baa4706dc1 100644
--- a/langs/gl.json
+++ b/langs/gl.json
@@ -1,174 +1,171 @@
{
- "image": {
- "addPicture": "Engadir imaxe",
- "uploadingPicture": "Subindo a túa imaxe...",
- "uploadingMultiple": "Subindo {count} das túas imaxes...",
- "pleaseLogin": "Inicia a sesión para subir unha imaxe",
- "willBePublished": "A túa imaxe será publicada: ",
- "cco": "no dominio público",
- "ccbs": "baixo a licenza CC-BY-SA",
- "ccb": "baixo a licenza CC-BY",
- "uploadFailed": "Non foi posíbel subir a imaxe. Tes internet e permites API de terceiros? O navegador Brave ou UMatrix podería bloquealas.",
- "respectPrivacy": "Respecta a privacidade. Non fotografes xente ou matrículas",
- "uploadDone": "A túa imaxe foi engadida. Grazas por axudar.",
- "dontDelete": {},
- "doDelete": {},
- "isDeleted": {}
- },
- "centerMessage": {
- "loadingData": "Cargando os datos...",
- "zoomIn": "Achégate para ollar ou editar os datos",
- "ready": "Feito!",
- "retrying": "A carga dos datos fallou. Tentándoo de novo... ({count})"
- },
- "index": {
- "#": "These texts are shown above the theme buttons when no theme is loaded",
- "title": {},
- "intro": {},
- "pickTheme": {}
- },
- "general": {
- "loginWithOpenStreetMap": "Inicia a sesión no OpenStreetMap",
- "welcomeBack": "Iniciaches a sesión, benvido.",
- "loginToStart": "Inicia a sesión para responder esta pregunta",
- "search": {
- "search": "Procurar unha localización",
- "searching": "Procurando...",
- "nothing": "Nada atopado...",
- "error": "Algunha cousa non foi ben..."
+ "image": {
+ "addPicture": "Engadir imaxe",
+ "uploadingPicture": "Subindo a túa imaxe...",
+ "uploadingMultiple": "Subindo {count} das túas imaxes...",
+ "pleaseLogin": "Inicia a sesión para subir unha imaxe",
+ "willBePublished": "A túa imaxe será publicada: ",
+ "cco": "no dominio público",
+ "ccbs": "baixo a licenza CC-BY-SA",
+ "ccb": "baixo a licenza CC-BY",
+ "uploadFailed": "Non foi posíbel subir a imaxe. Tes internet e permites API de terceiros? O navegador Brave ou UMatrix podería bloquealas.",
+ "respectPrivacy": "Respecta a privacidade. Non fotografes xente ou matrículas",
+ "uploadDone": "A túa imaxe foi engadida. Grazas por axudar.",
+ "isDeleted": "Eliminada",
+ "doDelete": "Eliminar imaxe",
+ "dontDelete": "Cancelar"
},
- "returnToTheMap": "Voltar ó mapa",
- "save": "Gardar",
- "cancel": "Desbotar",
- "skip": "Ignorar esta pregunta",
- "oneSkippedQuestion": "Ignoraches unha pregunta",
- "skippedQuestions": "Ignoraches algunhas preguntas",
- "number": "número",
- "osmLinkTooltip": "Ollar este obxecto no OpenStreetMap para ollar o historial e outras opcións de edición",
- "add": {
- "addNew": "Engadir {category} aquí",
- "title": "Queres engadir un punto?",
- "intro": "Marcaches un lugar onde non coñecemos os datos.
",
- "pleaseLogin": "Inicia a sesión para engadir un novo punto",
- "zoomInFurther": "Achégate para engadir un punto.",
- "stillLoading": "Os datos seguen a cargarse. Agarda un intre antes de engadir ningún punto.",
- "confirmIntro": "Engadir {title} aquí?
O punto que estás a crear será ollado por todo o mundo. Só engade cousas que realmente existan. Moitas aplicacións empregan estes datos.",
- "confirmButton": "Engadir {category} aquí",
- "openLayerControl": {},
- "layerNotEnabled": {}
+ "centerMessage": {
+ "loadingData": "Cargando os datos...",
+ "zoomIn": "Achégate para ollar ou editar os datos",
+ "ready": "Feito!",
+ "retrying": "A carga dos datos fallou. Tentándoo de novo... ({count})"
},
- "pickLanguage": "Escoller lingua: ",
- "about": "Editar doadamente e engadir puntos no OpenStreetMap dun eido en concreto",
- "nameInlineQuestion": "{category}: O teu nome é $$$",
- "noNameCategory": "{category} sen nome",
- "questions": {
- "phoneNumberOf": "Cal é o número de teléfono de {category}?",
- "phoneNumberIs": "O número de teléfono de {category} é {phone}",
- "websiteOf": "Cal é a páxina web de {category}?",
- "websiteIs": "Páxina web: {website}",
- "emailOf": "Cal é o enderezo de correo electrónico de {category}?",
- "emailIs": "O enderezo de correo electrónico de {category} é {email}"
+ "index": {
+ "#": "These texts are shown above the theme buttons when no theme is loaded",
+ "pickTheme": "Escolle un tema para comezar.",
+ "intro": "O MapComplete é un visor e editor do OpenStreetMap, que te amosa información sobre un tema específico.",
+ "title": "Benvido ao MapComplete"
},
- "openStreetMapIntro": "Un mapa aberto
Non sería xenial se houbera un só mapa, que todos puideran empregar e editar de xeito libre?Un só lugar para almacenar toda a información xeográfica? Entón, todos eses sitios web con mapas diferentes, pequenos e incompatíbeis (que sempre están desactualizados) xa non serían necesarios.OpenStreetMap é ese mapa. Os datos do mapa pódense empregar de balde (con atribución e publicación de modificacións neses datos). Ademais diso, todos poden engadir de xeito ceibe novos datos e corrixir erros. Este sitio web tamén emprega o OpenStreetMap. Todos os datos proveñen de alí, e as túas respostas e correccións tamén serán engadidas alí.
Moitas persoas e aplicacións xa empregan o OpenStreetMap: Maps.me, OsmAnd, pero tamén os mapas do Facebook, Instagram, Apple e Bing son (en parte) impulsados polo OpenStreetMap. Se mudas algo aquí, tamén será reflexado nesas aplicacións, na súa seguinte actualización!
",
- "attribution": {
- "attributionTitle": {},
- "attributionContent": {},
- "themeBy": {},
- "iconAttribution": {
- "title": {}
- },
- "mapContributionsBy": {},
- "mapContributionsByAndHidden": {}
+ "general": {
+ "loginWithOpenStreetMap": "Inicia a sesión no OpenStreetMap",
+ "welcomeBack": "Iniciaches a sesión, benvido.",
+ "loginToStart": "Inicia a sesión para responder esta pregunta",
+ "search": {
+ "search": "Procurar unha localización",
+ "searching": "Procurando...",
+ "nothing": "Nada atopado...",
+ "error": "Algunha cousa non foi ben..."
+ },
+ "returnToTheMap": "Voltar ó mapa",
+ "save": "Gardar",
+ "cancel": "Desbotar",
+ "skip": "Ignorar esta pregunta",
+ "oneSkippedQuestion": "Ignoraches unha pregunta",
+ "skippedQuestions": "Ignoraches algunhas preguntas",
+ "number": "número",
+ "osmLinkTooltip": "Ollar este obxecto no OpenStreetMap para ollar o historial e outras opcións de edición",
+ "add": {
+ "addNew": "Engadir {category} aquí",
+ "title": "Queres engadir un punto?",
+ "intro": "Marcaches un lugar onde non coñecemos os datos.
",
+ "pleaseLogin": "Inicia a sesión para engadir un novo punto",
+ "zoomInFurther": "Achégate para engadir un punto.",
+ "stillLoading": "Os datos seguen a cargarse. Agarda un intre antes de engadir ningún punto.",
+ "confirmIntro": "Engadir {title} aquí?
O punto que estás a crear será ollado por todo o mundo. Só engade cousas que realmente existan. Moitas aplicacións empregan estes datos.",
+ "confirmButton": "Engadir {category} aquí",
+ "layerNotEnabled": "A capa {layer} non está activada. Faino para poder engadir un punto nesta capa",
+ "openLayerControl": "Abrir o control de capas"
+ },
+ "pickLanguage": "Escoller lingua: ",
+ "about": "Editar doadamente e engadir puntos no OpenStreetMap dun eido en concreto",
+ "nameInlineQuestion": "{category}: O teu nome é $$$",
+ "noNameCategory": "{category} sen nome",
+ "questions": {
+ "phoneNumberOf": "Cal é o número de teléfono de {category}?",
+ "phoneNumberIs": "O número de teléfono de {category} é {phone}",
+ "websiteOf": "Cal é a páxina web de {category}?",
+ "websiteIs": "Páxina web: {website}",
+ "emailOf": "Cal é o enderezo de correo electrónico de {category}?",
+ "emailIs": "O enderezo de correo electrónico de {category} é {email}"
+ },
+ "openStreetMapIntro": "Un mapa aberto
Non sería xenial se houbera un só mapa, que todos puideran empregar e editar de xeito libre?Un só lugar para almacenar toda a información xeográfica? Entón, todos eses sitios web con mapas diferentes, pequenos e incompatíbeis (que sempre están desactualizados) xa non serían necesarios.OpenStreetMap é ese mapa. Os datos do mapa pódense empregar de balde (con atribución e publicación de modificacións neses datos). Ademais diso, todos poden engadir de xeito ceibe novos datos e corrixir erros. Este sitio web tamén emprega o OpenStreetMap. Todos os datos proveñen de alí, e as túas respostas e correccións tamén serán engadidas alí.
Moitas persoas e aplicacións xa empregan o OpenStreetMap: Maps.me, OsmAnd, pero tamén os mapas do Facebook, Instagram, Apple e Bing son (en parte) impulsados polo OpenStreetMap. Se mudas algo aquí, tamén será reflexado nesas aplicacións, na súa seguinte actualización!
",
+ "sharescreen": {
+ "intro": "Comparte este mapa
Comparte este mapa copiando a ligazón de embaixo e enviándoa ás amizades e familia:",
+ "addToHomeScreen": "Engadir á pantalla de inicio
Podes engadir esta web na pantalla de inicio do teu smartphone para que se vexa máis nativo. Preme o botón 'engadir ó inicio' na barra de enderezos URL para facelo.",
+ "embedIntro": "Inclúeo na túa páxina web
Inclúe este mapa na túa páxina web.
Animámoche a que o fagas, non fai falla que pidas permiso.
É de balde, e sempre será. Canta máis xente que o empregue máis valioso será.",
+ "copiedToClipboard": "Ligazón copiada ó portapapeis",
+ "thanksForSharing": "Grazas por compartir!",
+ "editThisTheme": "Editar este tema",
+ "editThemeDescription": "Engadir ou mudar preguntas a este tema do mapa",
+ "fsUserbadge": "Activar botón de inicio de sesión",
+ "fsSearch": "Activar a barra de procura",
+ "fsWelcomeMessage": "Amosar a xanela emerxente da mensaxe de benvida e as lapelas asociadas",
+ "fsLayers": "Activar o control de capas",
+ "fsLayerControlToggle": "Comenza co control de capas expandido",
+ "fsAddNew": "Activar o botón de 'engadir novo PDI'",
+ "fsGeolocation": "Activar o botón de 'xeolocalizarme' (só móbil)",
+ "fsIncludeCurrentLocation": "Incluír localización actual",
+ "fsIncludeCurrentLayers": "Incluír as opcións de capa actual",
+ "fsIncludeCurrentBackgroundMap": "Incluír a opción de fondo actual {name}"
+ },
+ "morescreen": {
+ "intro": "Máis tarefas
Góstache captar datos?
Hai máis capas dispoñíbeis.",
+ "requestATheme": "Se queres unha tarefa personalizada, solicítaa no seguimento de problemas.",
+ "streetcomplete": "Outra aplicación semellante é StreetComplete.",
+ "createYourOwnTheme": "Crea o teu propio tema completo do MapComplete dende cero."
+ },
+ "readYourMessages": "Le todos a túas mensaxes do OpenStreetMap antes de engadir novos puntos.",
+ "fewChangesBefore": "Responde unhas cantas preguntas sobre puntos existentes antes de engadir novos.",
+ "goToInbox": "Abrir mensaxes",
+ "getStartedNewAccount": " ou crea unha nova conta",
+ "noTagsSelected": "Non se seleccionaron etiquetas",
+ "customThemeIntro": "Temas personalizados
Estes son temas xerados por usuarios previamente visitados.",
+ "opening_hours": {
+ "ph_open": "aberto",
+ "ph_closed": "pechado",
+ "ph_not_known": " ",
+ "open_24_7": "Aberto ás 24 horas do día",
+ "closed_permanently": "Pechado - sen día de abertura coñecido",
+ "closed_until": "Pechado até {date}",
+ "not_all_rules_parsed": "O horario desta tenda é complexo. As normas seguintes serán ignoradas na entrada:",
+ "openTill": "até",
+ "opensAt": "dende",
+ "open_during_ph": "Durante festas este servizo está",
+ "error_loading": "Erro: non foi posíbel ver eses horarios de abertura."
+ },
+ "weekdays": {
+ "sunday": "Domingo",
+ "saturday": "Sábado",
+ "friday": "Venres",
+ "thursday": "Xoves",
+ "wednesday": "Mércores",
+ "tuesday": "Martes",
+ "monday": "Luns",
+ "abbreviations": {
+ "sunday": "Dom",
+ "saturday": "Sab",
+ "friday": "Ven",
+ "thursday": "Xo",
+ "wednesday": "Mer",
+ "tuesday": "Mar",
+ "monday": "Lun"
+ }
+ },
+ "layerSelection": {
+ "title": "Seleccionar capas",
+ "zoomInToSeeThisLayer": "Achégate para ver esta capa"
+ },
+ "backgroundMap": "Mapa do fondo",
+ "getStartedLogin": "Entra no OpenStreetMap para comezar",
+ "attribution": {
+ "codeContributionsBy": "O MapComplete foi feito por {contributors} e {hiddenCount} contribuíntes máis",
+ "mapContributionsByAndHidden": "A información visíbel actual ten edicións feitas por {contributors} e {hiddenCount} contribuíntes máis",
+ "mapContributionsBy": "A información visíbel actual ten edicións feitas por {contributors}",
+ "iconAttribution": {
+ "title": "Iconas empregadas"
+ },
+ "themeBy": "Tema mantido por {author}",
+ "attributionContent": "Todos os datos proveñen do OpenStreetMap, e pódense reutilizar libremente baixo a Licenza Aberta de Base de Datos (ODbL).
",
+ "attributionTitle": "Aviso de atribución"
+ }
},
- "sharescreen": {
- "intro": "Comparte este mapa
Comparte este mapa copiando a ligazón de embaixo e enviándoa ás amizades e familia:",
- "addToHomeScreen": "Engadir á pantalla de inicio
Podes engadir esta web na pantalla de inicio do teu smartphone para que se vexa máis nativo. Preme o botón 'engadir ó inicio' na barra de enderezos URL para facelo.",
- "embedIntro": "Inclúeo na túa páxina web
Inclúe este mapa na túa páxina web.
Animámoche a que o fagas, non fai falla que pidas permiso.
É de balde, e sempre será. Canta máis xente que o empregue máis valioso será.",
- "copiedToClipboard": "Ligazón copiada ó portapapeis",
- "thanksForSharing": "Grazas por compartir!",
- "editThisTheme": "Editar este tema",
- "editThemeDescription": "Engadir ou mudar preguntas a este tema do mapa",
- "fsUserbadge": "Activar botón de inicio de sesión",
- "fsSearch": "Activar a barra de procura",
- "fsWelcomeMessage": "Amosar a xanela emerxente da mensaxe de benvida e as lapelas asociadas",
- "fsLayers": "Activar o control de capas",
- "fsLayerControlToggle": "Comenza co control de capas expandido",
- "fsAddNew": "Activar o botón de 'engadir novo PDI'",
- "fsGeolocation": "Activar o botón de 'xeolocalizarme' (só móbil)",
- "fsIncludeCurrentBackgroundMap": {},
- "fsIncludeCurrentLayers": {},
- "fsIncludeCurrentLocation": {}
+ "favourite": {
+ "panelIntro": "O teu tema personalizado
Activa as túas capas favoritas de todos os temas oficiais",
+ "loginNeeded": "Iniciar a sesión
O deseño personalizado só está dispoñíbel para os usuarios do OpenstreetMap",
+ "reload": "Recargar os datos"
},
- "morescreen": {
- "intro": "Máis tarefas
Góstache captar datos?
Hai máis capas dispoñíbeis.",
- "requestATheme": "Se queres que che fagamos unha tarefa propia , pídea aquí.",
- "streetcomplete": "Outra aplicación semellante é StreetComplete.",
- "createYourOwnTheme": "Crea o teu propio tema completo do MapComplete dende cero."
- },
- "readYourMessages": "Le todos a túas mensaxes do OpenStreetMap antes de engadir novos puntos.",
- "fewChangesBefore": "Responde unhas cantas preguntas sobre puntos existentes antes de engadir novos.",
- "goToInbox": "Abrir mensaxes",
- "getStartedLogin": {},
- "getStartedNewAccount": " ou crea unha nova conta",
- "noTagsSelected": "Non se seleccionaron etiquetas",
- "customThemeIntro": "Temas personalizados
Estes son temas xerados por usuarios previamente visitados.",
- "aboutMapcomplete": {},
- "backgroundMap": {},
- "layerSelection": {
- "zoomInToSeeThisLayer": {},
- "title": {}
- },
- "weekdays": {
- "abbreviations": {
- "monday": {},
- "tuesday": {},
- "wednesday": {},
- "thursday": {},
- "friday": {},
- "saturday": {},
- "sunday": {}
- },
- "monday": {},
- "tuesday": {},
- "wednesday": {},
- "thursday": {},
- "friday": {},
- "saturday": {},
- "sunday": {}
- },
- "opening_hours": {
- "error_loading": {},
- "open_during_ph": {},
- "opensAt": {},
- "openTill": {},
- "not_all_rules_parsed": {},
- "closed_until": {},
- "closed_permanently": {},
- "open_24_7": {},
- "ph_not_known": {},
- "ph_closed": {},
- "ph_open": {}
+ "reviews": {
+ "plz_login": "Inicia sesión para deixar unha recensión",
+ "saved": "Recensión compartida. Grazas por compartir!",
+ "saving_review": "Gardando…",
+ "affiliated_reviewer_warning": "(Recensión de afiliado)",
+ "posting_as": "Publicar como",
+ "no_rating": "Sen puntuacións",
+ "write_a_comment": "Deixa unha recensión…",
+ "title_singular": "Unha recensión",
+ "title": "{count} recensións",
+ "name_required": "Requírese un nome para amosar e crear recensións",
+ "no_reviews_yet": "Non hai recensións aínda. Se o primeiro en escribir unha e axuda ao negocio e aos datos libres!"
}
- },
- "favourite": {
- "panelIntro": "O teu tema personalizado
Activa as túas capas favoritas de todos os temas oficiais",
- "loginNeeded": "Iniciar a sesión
O deseño personalizado só está dispoñíbel para os usuarios do OpenstreetMap",
- "reload": "Recargar os datos"
- },
- "reviews": {
- "title": {},
- "title_singular": {},
- "name_required": {},
- "no_reviews_yet": {},
- "write_a_comment": {},
- "no_rating": {},
- "posting_as": {},
- "i_am_affiliated": {},
- "affiliated_reviewer_warning": {},
- "saving_review": {},
- "saved": {},
- "tos": {},
- "attribution": {},
- "plz_login": {}
- }
}
From b5740fbf36f53fb772580d8588820ec7e3d445c5 Mon Sep 17 00:00:00 2001
From: vankos
Date: Sun, 6 Jun 2021 12:25:54 +0000
Subject: [PATCH 10/67] Translated using Weblate (Russian)
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/ru/
---
langs/ru.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/ru.json b/langs/ru.json
index 2367513ae8..de5a059dac 100644
--- a/langs/ru.json
+++ b/langs/ru.json
@@ -88,7 +88,7 @@
"morescreen": {
"createYourOwnTheme": "Создать собственную тему MapComplete с чистого листа",
"streetcomplete": "Другое, похожее приложение — StreetComplete.",
- "requestATheme": "Если вам нужен особенный квест, запросите его в системе отслеживания ошибок",
+ "requestATheme": "Если вам нужен особенный квест, запросите его в issue-трекере",
"intro": "Больше тематических карт?
Нравится собирать геоданные?
Можете посмотреть другие темы."
},
"sharescreen": {
From b05b8c3367351c1262bd8e22ec6aa59941f07495 Mon Sep 17 00:00:00 2001
From: JCGF-OSM
Date: Sun, 6 Jun 2021 14:18:58 +0000
Subject: [PATCH 11/67] Translated using Weblate (Spanish)
Currently translated at 93.5% (130 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/es/
---
langs/es.json | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/langs/es.json b/langs/es.json
index 6abe255afe..888693a2b7 100644
--- a/langs/es.json
+++ b/langs/es.json
@@ -22,7 +22,7 @@
"retrying": "La carga de datos ha fallado. Volviéndolo a probar en {count} segundos…"
},
"index": {
- "#": "These texts are shown above the theme buttons when no theme is loaded",
+ "#": "Estos textos son mostrados sobre los botones del tema cuando no hay un tema cargado",
"pickTheme": "Elige un tema de abajo para empezar.",
"intro": "MapComplete a un visor y editor de OpenStreetMap, que te muestra información sobre un tema específico.",
"title": "Bienvenido a MapComplete"
@@ -53,7 +53,7 @@
"zoomInFurther": "Acerca para añadir un punto.",
"stillLoading": "Los datos se siguen cargando. Espera un poco antes de añadir ningún punto.",
"confirmIntro": "Añadir {title} aquí?
El punto que estás creando lo verá todo el mundo. Sólo añade cosas que realmente existan. Muchas aplicaciones usan estos datos.",
- "confirmButton": "Añadir {category} aquí",
+ "confirmButton": "Añadir una {category} aquí.
Tu contribución es visible para todos
",
"openLayerControl": "Abrir el control de capas",
"layerNotEnabled": "La capa {layer} no está habilitada. Hazlo para poder añadir un punto en esta capa"
},
@@ -142,7 +142,9 @@
"iconAttribution": {
"title": "Iconos usados"
},
- "themeBy": "Tema mantenido por {author}"
+ "themeBy": "Tema mantenido por {author}",
+ "attributionContent": "Todos los datos son proporcionados por OpenStreetMap, reutilizables libremente bajo la Licencia Abierta de Bases de Datos (ODL).
",
+ "attributionTitle": "Aviso de atribución"
},
"customThemeIntro": "Temas personalizados
Estos son los temas generados por los usuarios que han sido visitados previamente."
},
@@ -154,6 +156,12 @@
"reviews": {
"title": "{count} comentarios",
"title_singular": "Un comentario",
- "name_required": "Se requiere un nombre para mostrar y crear comentarios"
+ "name_required": "Se requiere un nombre para mostrar y crear comentarios",
+ "saved": "Reseña guardada. ¡Gracias por compartir!",
+ "saving_review": "Guardando…",
+ "no_rating": "Sin calificación dada",
+ "write_a_comment": "Deja una reseña…",
+ "no_reviews_yet": "Aún no hay reseñas. ¡Sé el primero en escribir una y ayuda a los datos abiertos y a los negocios!",
+ "plz_login": "Inicia sesión para dejar una reseña"
}
}
From a4ea376ac319773a7c73d61fc2751a3c5c3e123b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Damian=20Pu=C5=82ka?=
Date: Sun, 6 Jun 2021 14:45:30 +0000
Subject: [PATCH 12/67] Translated using Weblate (Polish)
Currently translated at 15.8% (22 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/pl/
---
langs/pl.json | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/langs/pl.json b/langs/pl.json
index e421d09ba8..30b85f42b9 100644
--- a/langs/pl.json
+++ b/langs/pl.json
@@ -15,7 +15,12 @@
"willBePublished": "Twoja ilustracja będzie opublikowana: "
},
"general": {
- "loginWithOpenStreetMap": "Zaloguj z OpenStreetMap"
+ "loginWithOpenStreetMap": "Zaloguj z OpenStreetMap",
+ "pickLanguage": "Wybierz język: ",
+ "skip": "Pomiń to pytanie",
+ "cancel": "Anuluj",
+ "save": "Zapisz",
+ "returnToTheMap": "Wróć do mapy"
},
"index": {
"pickTheme": "Wybierz temat z dostępnych poniżej by zacząć.",
From bd4cb2cf52e21b97784886a69aa5467674d79cbe Mon Sep 17 00:00:00 2001
From: vankos
Date: Sun, 6 Jun 2021 12:55:48 +0000
Subject: [PATCH 13/67] Translated using Weblate (Russian)
Currently translated at 33.3% (186 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/ru/
---
langs/layers/ru.json | 49 +++++++++++++++++++++++++++++++++++++++-----
1 file changed, 44 insertions(+), 5 deletions(-)
diff --git a/langs/layers/ru.json b/langs/layers/ru.json
index cfbc462d67..fcd1a11115 100644
--- a/langs/layers/ru.json
+++ b/langs/layers/ru.json
@@ -42,10 +42,12 @@
"5": {
"then": "Материал: сталь"
}
- }
+ },
+ "question": "Из какого материала сделана скамейка?"
},
"4": {
- "question": "В каком направлении вы смотрите, когда сидите на скамейке?"
+ "question": "В каком направлении вы смотрите, когда сидите на скамейке?",
+ "render": "Сидя на скамейке, вы смотрите в сторону {direction}°."
},
"5": {
"render": "Цвет: {colour}",
@@ -92,6 +94,9 @@
"mappings": {
"0": {
"then": "Скамейка на остановке общественного транспорта"
+ },
+ "1": {
+ "then": "Скамейка в укрытии"
}
}
},
@@ -105,9 +110,43 @@
"tagRenderings": {
"6": {
"question": "Сколько стоит прокат велосипеда?",
- "render": "Стоимость аренды велосипеда {charge}"
+ "render": "Стоимость аренды велосипеда {charge}",
+ "mappings": {
+ "0": {
+ "then": "Прокат велосипедов бесплатен"
+ }
+ }
+ },
+ "7": {
+ "mappings": {
+ "2": {
+ "then": "Доступны велосипеды для людей с ограниченными возможностями"
+ },
+ "1": {
+ "then": "Доступны велосипеды для взрослых"
+ },
+ "0": {
+ "then": "Доступны детские велосипеды"
+ }
+ },
+ "question": "Кто здесь может арендовать велосипед?"
+ },
+ "1": {
+ "render": "Эта велосипедная библиотека называется {name}",
+ "question": "Как называется эта велосипедная библиотека?"
}
- }
+ },
+ "presets": {
+ "0": {
+ "description": "В велосипедной библиотеке есть велосипеды для аренды",
+ "title": "Велосипедная библиотека"
+ }
+ },
+ "description": "Учреждение, где велосипед может быть арендован на более длительный срок",
+ "title": {
+ "render": "Велосипедная библиотека"
+ },
+ "name": "Велосипедная библиотека"
},
"bicycle_tube_vending_machine": {
"tagRenderings": {
@@ -682,4 +721,4 @@
}
}
}
-}
\ No newline at end of file
+}
From f01be2b94690c711d67d4cf4ddb40402ad12e8a6 Mon Sep 17 00:00:00 2001
From: Heiko
Date: Sun, 6 Jun 2021 18:35:52 +0000
Subject: [PATCH 14/67] Translated using Weblate (German)
Currently translated at 58.7% (327 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/de/
---
langs/layers/de.json | 245 +++++++++++++++++++++++++++++++++++++++++--
1 file changed, 237 insertions(+), 8 deletions(-)
diff --git a/langs/layers/de.json b/langs/layers/de.json
index a4a4111f38..5b3d306564 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -78,6 +78,10 @@
"then": "Farbe: gelb"
}
}
+ },
+ "6": {
+ "render": "Die Bank wurde zuletzt am {survey:date} überprüft.",
+ "question": "Wann wurde diese Bank zuletzt überprüft?"
}
},
"presets": {
@@ -205,6 +209,12 @@
},
"5": {
"then": "Schuppen
"
+ },
+ "7": {
+ "then": "Ein Bereich auf dem Boden, der für das Abstellen von Fahrrädern gekennzeichnet ist"
+ },
+ "6": {
+ "then": "Poller
"
}
}
},
@@ -224,7 +234,13 @@
"render": "Platz für {capacity} Fahrräder"
},
"5": {
- "render": "{access}"
+ "render": "{access}",
+ "mappings": {
+ "0": {
+ "then": "Öffentlich zugänglich"
+ }
+ },
+ "question": "Wer kann diesen Fahrradparplatz nutzen?"
},
"6": {
"question": "Gibt es auf diesem Fahrrad-Parkplatz Plätze für Lastenfahrräder?",
@@ -243,6 +259,22 @@
"7": {
"question": "Wie viele Lastenfahrräder passen auf diesen Fahrrad-Parkplatz?",
"render": "Auf diesen Parkplatz passen {capacity:cargo_bike} Lastenfahrräder"
+ },
+ "2": {
+ "mappings": {
+ "3": {
+ "then": "Ebenerdiges Parken"
+ },
+ "2": {
+ "then": "Ebenerdiges Parken"
+ },
+ "1": {
+ "then": "Tiefgarage"
+ },
+ "0": {
+ "then": "Tiefgarage"
+ }
+ }
}
}
},
@@ -355,6 +387,21 @@
"then": "Es gibt ein Manometer, aber es ist kaputt"
}
}
+ },
+ "3": {
+ "mappings": {
+ "1": {
+ "then": "Immer geöffnet"
+ },
+ "0": {
+ "then": "Immer geöffnet"
+ }
+ },
+ "question": "Wann ist diese Fahrradreparaturstelle geöffnet?"
+ },
+ "2": {
+ "render": "Gewartet von {operator}",
+ "question": "Wer wartet diese Fahrradpumpe?"
}
},
"presets": {
@@ -362,7 +409,8 @@
"title": "Fahrradpumpe"
},
"1": {
- "title": "Fahrrad-Reparaturstation und Pumpe"
+ "title": "Fahrrad-Reparaturstation und Pumpe",
+ "description": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.Beispiel
"
},
"2": {
"title": "Fahrrad-Reparaturstation ohne Pumpe"
@@ -382,6 +430,12 @@
},
"5": {
"then": "Fahrradwerkstatt/geschäft {name}"
+ },
+ "2": {
+ "then": "Fahrradverleih{name}"
+ },
+ "0": {
+ "then": "Sportartikelgeschäft {name}"
}
}
},
@@ -462,8 +516,34 @@
},
"1": {
"then": "Dieses Geschäft bietet keine Werkzeuge für Heimwerkerreparaturen an"
+ },
+ "2": {
+ "then": "Werkzeuge für die Selbstreparatur sind nur verfügbar, wenn Sie das Fahrrad im Laden gekauft/gemietet haben"
}
}
+ },
+ "15": {
+ "mappings": {
+ "2": {
+ "then": "Dieser Laden bietet keine Fahrradreinigung an"
+ },
+ "1": {
+ "then": "Dieser Laden hat eine Anlage, in der man Fahrräder selbst reinigen kann"
+ },
+ "0": {
+ "then": "Dieses Geschäft reinigt Fahrräder"
+ }
+ },
+ "question": "Werden hier Fahrräder gewaschen?"
+ },
+ "5": {
+ "question": "Wie lautet die E-Mail-Adresse von {name}?"
+ },
+ "4": {
+ "question": "Wie lautet die Telefonnummer von {name}?"
+ },
+ "3": {
+ "question": "Was ist die Webseite von {name}?"
}
},
"presets": {
@@ -475,7 +555,12 @@
"bike_themed_object": {
"name": "Mit Fahrrad zusammenhängendes Objekt",
"title": {
- "render": "Mit Fahrrad zusammenhängendes Objekt"
+ "render": "Mit Fahrrad zusammenhängendes Objekt",
+ "mappings": {
+ "1": {
+ "then": "Radweg"
+ }
+ }
}
},
"defibrillator": {
@@ -520,16 +605,72 @@
},
"4": {
"question": "In welchem Stockwerk befindet sich dieser Defibrillator?",
- "render": "Dieser Defibrallator befindet sich im {level}. Stockwerk"
+ "render": "Dieser Defibrallator befindet sich im {level}. Stockwerk",
+ "mappings": {
+ "1": {
+ "then": "Dieser Defibrillator befindet sich in der ersten Etage"
+ },
+ "0": {
+ "then": "Dieser Defibrillator befindet sich im Erdgeschoss"
+ }
+ }
},
"5": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (in der lokalen Sprache)"
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (in der lokalen Sprache)",
+ "render": "Zusätzliche Informationen über den Standort (in der Landessprache):
{defibrillator:location}"
},
"6": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Englisch)"
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Englisch)",
+ "render": "Zusätzliche Informationen über den Standort (auf Englisch):
{defibrillator:location}"
},
"7": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Französisch)"
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Französisch)",
+ "render": "Zusätzliche Informationen zum Standort (auf Französisch):
{defibrillator:Standort:fr}"
+ },
+ "12": {
+ "mappings": {
+ "0": {
+ "then": "24/7 geöffnet (auch an Feiertagen)"
+ }
+ },
+ "question": "Zu welchen Zeiten ist dieser Defibrillator verfügbar?"
+ },
+ "11": {
+ "render": "Telefonnummer für Fragen zu diesem Defibrillator: {phone}",
+ "question": "Wie lautet die Telefonnummer für Fragen zu diesem Defibrillator?"
+ },
+ "10": {
+ "question": "Wie lautet die E-Mail für Fragen zu diesem Defibrillator?",
+ "render": "E-Mail für Fragen zu diesem Defibrillator: {email}"
+ },
+ "9": {
+ "question": "Wie lautet die offizielle Identifikationsnummer des Geräts? (falls am Gerät sichtbar)",
+ "render": "Offizielle Identifikationsnummer des Geräts: {ref}"
+ },
+ "8": {
+ "mappings": {
+ "3": {
+ "then": "Dieser Defibrillator ist mit einem Rollstuhl nicht erreichbar"
+ },
+ "2": {
+ "then": "Es ist möglich, den Defibrillator mit einem Rollstuhl zu erreichen, aber es ist nicht einfach"
+ },
+ "1": {
+ "then": "Dieser Defibrillator ist mit einem Rollstuhl leicht zu erreichen"
+ },
+ "0": {
+ "then": "Dieser Defibrillator ist speziell für Rollstuhlfahrer angepasst"
+ }
+ },
+ "question": "Ist dieser Defibrillator mit einem Rollstuhl erreichbar?"
+ },
+ "3": {
+ "mappings": {
+ "0": {
+ "then": "Dies ist ein manueller Defibrillator für den professionellen Einsatz"
+ }
+ },
+ "render": "Es gibt keine Informationen über den Gerätetyp"
}
}
},
@@ -852,5 +993,93 @@
"question": "Möchten Sie eine Beschreibung hinzufügen?"
}
}
+ },
+ "bike_monitoring_station": {
+ "title": {
+ "mappings": {
+ "1": {
+ "then": "Fahrradzählstation {ref}"
+ },
+ "0": {
+ "then": "Fahrradzählstation {name}"
+ }
+ },
+ "render": "Fahrradzählstation"
+ }
+ },
+ "bike_cleaning": {
+ "presets": {
+ "0": {
+ "title": "Fahrrad-Reinigungsdienst"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Fahrrad-Reinigungsdienst{name}"
+ }
+ },
+ "render": "Fahrrad-Reinigungsdienst"
+ },
+ "name": "Fahrrad-Reinigungsdienst"
+ },
+ "bicycle_tube_vending_machine": {
+ "tagRenderings": {
+ "1": {
+ "mappings": {
+ "2": {
+ "then": "Dieser Automat ist geschlossen"
+ },
+ "1": {
+ "then": "Dieser Automat ist kaputt"
+ },
+ "0": {
+ "then": "Dieser Automat funktioniert"
+ }
+ },
+ "render": "Der Betriebszustand ist {operational_status",
+ "question": "Ist dieser Automat noch in Betrieb?"
+ }
+ },
+ "presets": {
+ "0": {
+ "title": "Fahrradschlauch-Automat"
+ }
+ },
+ "title": {
+ "render": "Fahrradschlauch-Automat"
+ },
+ "name": "Fahrradschlauch-Automat"
+ },
+ "bicycle_library": {
+ "tagRenderings": {
+ "7": {
+ "mappings": {
+ "2": {
+ "then": "Fahrräder für Behinderte verfügbar"
+ },
+ "1": {
+ "then": "Fahrräder für Erwachsene verfügbar"
+ },
+ "0": {
+ "then": "Fahrräder für Kinder verfügbar"
+ }
+ },
+ "question": "Wer kann hier Fahrräder ausleihen?"
+ },
+ "6": {
+ "mappings": {
+ "1": {
+ "then": "Das Ausleihen eines Fahrrads kostet 20€ pro Jahr und 20€ Gebühr"
+ },
+ "0": {
+ "then": "Das Ausleihen eines Fahrrads ist kostenlos"
+ }
+ },
+ "render": "Das Ausleihen eines Fahrrads kostet {charge}",
+ "question": "Wie viel kostet das Ausleihen eines Fahrrads?"
+ }
+ },
+ "description": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können"
}
-}
\ No newline at end of file
+}
From 2f488884cf4c464f505f4f324b39fa64e3e32e71 Mon Sep 17 00:00:00 2001
From: mic140
Date: Mon, 7 Jun 2021 09:22:08 +0000
Subject: [PATCH 15/67] Translated using Weblate (Russian)
Currently translated at 35.5% (198 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/ru/
---
langs/layers/ru.json | 36 +++++++++++++++++++++++++++++++++---
1 file changed, 33 insertions(+), 3 deletions(-)
diff --git a/langs/layers/ru.json b/langs/layers/ru.json
index fcd1a11115..00e3f912c4 100644
--- a/langs/layers/ru.json
+++ b/langs/layers/ru.json
@@ -78,6 +78,10 @@
"then": "Цвет: желтый"
}
}
+ },
+ "6": {
+ "render": "Последний раз обследование этой скамейки проводилось {survey:date}",
+ "question": "Когда последний раз обследовали эту скамейку?"
}
},
"presets": {
@@ -103,6 +107,9 @@
"tagRenderings": {
"1": {
"render": "{name}"
+ },
+ "2": {
+ "render": "Встаньте на скамейке"
}
}
},
@@ -162,9 +169,19 @@
"2": {
"then": "Этот торговый автомат закрыт"
}
- }
+ },
+ "render": "Рабочий статус: {operational_status"
}
- }
+ },
+ "presets": {
+ "0": {
+ "title": "Торговый автомат для велосипедистов"
+ }
+ },
+ "title": {
+ "render": "Торговый автомат для велосипедистов"
+ },
+ "name": "Торговый автомат для велосипедистов"
},
"bike_cafe": {
"tagRenderings": {
@@ -176,8 +193,21 @@
},
"7": {
"question": "Какой адрес электронной почты у {name}?"
+ },
+ "1": {
+ "render": "Это велосипедное кафе называется {name}",
+ "question": "Как называется это байк-кафе?"
}
- }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Велосипедное кафе {name}"
+ }
+ },
+ "render": "Велосипедное кафе"
+ },
+ "name": "Велосипедное кафе"
},
"bike_parking": {
"tagRenderings": {
From fc10f43df6348fee6e2c82a611331bfa2b4d6f2c Mon Sep 17 00:00:00 2001
From: Supaplex
Date: Mon, 7 Jun 2021 08:09:28 +0000
Subject: [PATCH 16/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 3.5% (20 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/zh_Hant/
---
langs/layers/zh_Hant.json | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)
diff --git a/langs/layers/zh_Hant.json b/langs/layers/zh_Hant.json
index cd48a3b52d..f0e76d8dd6 100644
--- a/langs/layers/zh_Hant.json
+++ b/langs/layers/zh_Hant.json
@@ -23,7 +23,40 @@
},
"3": {
"render": "材質:{material}"
+ },
+ "6": {
+ "question": "上一次探察長椅是什麼時候?"
+ },
+ "5": {
+ "mappings": {
+ "7": {
+ "then": "顏色:黃色"
+ },
+ "6": {
+ "then": "顏色:藍色"
+ },
+ "5": {
+ "then": "顏色:黑色"
+ },
+ "4": {
+ "then": "顏色:紅色"
+ },
+ "3": {
+ "then": "顏色:白色"
+ },
+ "2": {
+ "then": "顏色:灰色"
+ },
+ "1": {
+ "then": "顏色:綠色"
+ },
+ "0": {
+ "then": "顏色:棕色"
+ }
+ },
+ "question": "這個長椅是什麼顏色的?",
+ "render": "顏色:{colour}"
}
}
}
-}
\ No newline at end of file
+}
From c5eac479794764309431f03465b4ac2b9448131d Mon Sep 17 00:00:00 2001
From: Sean Young
Date: Mon, 7 Jun 2021 08:03:37 +0000
Subject: [PATCH 17/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/zh_Hant/
---
langs/zh_Hant.json | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/langs/zh_Hant.json b/langs/zh_Hant.json
index 8f58c93284..60b7f371b4 100644
--- a/langs/zh_Hant.json
+++ b/langs/zh_Hant.json
@@ -1,7 +1,7 @@
{
"reviews": {
"plz_login": "登入來留下審核",
- "attribution": "審核由Mangrove Reviews系統進行,採用CC-BY 4.0授權條款。",
+ "attribution": "評審系統由Mangrove Reviews提供技術支援,採用CC-BY 4.0授權條款。",
"tos": "如果你創建審核,你同意TOS 與 Mangrove.reviews 的隱私權政策",
"saved": "已儲存審核,謝謝你的分享!",
"saving_review": "儲存中…",
@@ -60,14 +60,14 @@
"aboutMapcomplete": "關於 MapComplete
使用 MapComplete 你可以藉由單一主題豐富開放街圖的圖資。回答幾個問題,然後幾分鐘之內你的貢獻立刻就傳遍全球!主題維護者定議主題的元素、問題與語言。
發現更多
MapComplete 總是提供學習更多開放街圖下一步的知識。
- 當你內嵌網站,網頁內嵌會連結到全螢幕的 MapComplete
- 全螢幕的版本提供關於開放街圖的資訊
- 不登入檢視成果,但是要編輯則需登入 OSM。
- 如果你沒有登入,你會被要求先登入
- 當你回答單一問題時,你可以在地圖新增新的節點
- 過了一陣子,實際的 OSM-標籤會顯示,之後會連接到 wiki
你有注意到問題嗎?你想請求功能嗎?想要幫忙翻譯嗎?來到原始碼或是問題追蹤器。
想要看到你的進度嗎?到OsmCha追蹤編輯數。
",
"customThemeIntro": "客製化主題
觀看這些先前使用者創造的主題。",
"noTagsSelected": "沒有選取標籤",
- "getStartedNewAccount": " 或是 創建新帳號",
+ "getStartedNewAccount": " 或是 註冊新帳號",
"getStartedLogin": "登入開放街圖帳號來開始",
"goToInbox": "開啟訊息框",
"fewChangesBefore": "請先回答有關既有節點的問題再來新增新節點。",
"readYourMessages": "請先閱讀開放街圖訊息之前再來新增新節點。",
"morescreen": {
- "createYourOwnTheme": "從頭開始創造你的 MapComplete 主題",
- "streetcomplete": "其他相關的應用程式有 StreetComplete。",
+ "createYourOwnTheme": "從零開始建立你的 MapComplete 主題",
+ "streetcomplete": "行動裝置另有類似的應用程式 StreetComplete。",
"requestATheme": "如果你有客製化要求,請到問題追踪器那邊提出要求",
"intro": "看更多主題地圖?
你享受收集地理資料嗎?
還有更多主題。"
},
@@ -85,19 +85,19 @@
"editThemeDescription": "新增或改變這個地圖的問題",
"editThisTheme": "編輯這個主題",
"thanksForSharing": "感謝分享!",
- "copiedToClipboard": "連結複製到簡貼簿",
- "embedIntro": "嵌入你的網站
請將這份地圖嵌入你的網站。
我們鼓勵你這麼做-你不用要求許可。
一切都是免費的,而且之後也是免費的,有更多人使用,則更顯得它的價值。",
+ "copiedToClipboard": "複製連結到簡貼簿",
+ "embedIntro": "嵌入到你的網站
請考慮將這份地圖嵌入你的網站。
地圖毋須額外許可,非常歡迎你多加利用。
一切都是免費的,而且之後也是免費的,越有更多人使用,則越顯得它的價值。",
"addToHomeScreen": "新增到你主頁畫面
你可以輕易將這網站加到你智慧型手機的主頁畫面,在網址列點選 '新增到主頁按鈕'來做這件事情。",
"intro": "分享這地圖
複製下面的連結來向朋友與家人分享這份地圖:"
},
"attribution": {
- "codeContributionsBy": "MapComplete 由 {contributors} 貢獻者建造,而{hiddenCount} 更多貢獻者",
- "mapContributionsByAndHidden": "目前看到的資料由 {contributors} 貢獻編輯,而 {hiddenCount} 則來自許多貢獻者",
+ "codeContributionsBy": "MapComplete 是由 {contributors} 和其他 {hiddenCount} 位貢獻者構建而成",
+ "mapContributionsByAndHidden": "目前顯到的資料是由 {contributors} 和其他 {hiddenCount} 位貢獻者編輯貢獻",
"mapContributionsBy": "目前檢視的資料由 {contributors} 貢獻編輯",
"iconAttribution": {
"title": "使用的圖示"
},
- "themeBy": "{author} 維護主題",
+ "themeBy": "由 {author} 維護主題",
"attributionContent": "所有資料由開放街圖提供,在開放資料庫授權條款之下自由再利用。
",
"attributionTitle": "署名通知"
},
@@ -137,7 +137,7 @@
"search": {
"error": "有狀況發生了…",
"nothing": "沒有找到…",
- "searching": "搜尋…",
+ "searching": "搜尋中…",
"search": "搜尋地點"
},
"loginToStart": "登入之後來回答這問題",
@@ -154,10 +154,10 @@
"retrying": "無法讀取資料,請在 {count} 秒後再試一次…",
"ready": "完成!",
"zoomIn": "放大來檢視或編輯資料",
- "loadingData": "讀取資料…"
+ "loadingData": "正在讀取資料…"
},
"image": {
- "isDeleted": "刪除",
+ "isDeleted": "已移除",
"doDelete": "移除圖片",
"dontDelete": "取消",
"uploadDone": "已經新增你的照片,謝謝你的協助!",
@@ -165,11 +165,11 @@
"uploadFailed": "無法上傳你的圖片,你確定有網路連線以及允許第三方 API 介接?Brave 或是 UMatrix 可能會阻擋連線。",
"ccb": "以 CC-BY 授權條款",
"ccbs": "以 CC-BY-SA 授權條款",
- "cco": "在公有領域",
- "willBePublished": "將發佈你的圖片: ",
+ "cco": "公有領域",
+ "willBePublished": "你的圖片將依以下授權釋出: ",
"pleaseLogin": "請先登入再來新增圖片",
- "uploadingMultiple": "上傳 {count} 圖片…",
- "uploadingPicture": "上傳你的圖片…",
+ "uploadingMultiple": "正在上傳 {count} 張圖片…",
+ "uploadingPicture": "正在上傳你的圖片…",
"addPicture": "新增圖片"
}
}
From 80fad8b676b09873006eb107a5f33b25df986a87 Mon Sep 17 00:00:00 2001
From: Supaplex
Date: Mon, 7 Jun 2021 09:23:21 +0000
Subject: [PATCH 18/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 18.9% (71 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/zh_Hant/
---
langs/themes/zh_Hant.json | 126 +++++++++++++++++++++++++++++++++++++-
1 file changed, 125 insertions(+), 1 deletion(-)
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index 0fc8c3c4a3..5c7cd0dfad 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -73,5 +73,129 @@
}
}
}
+ },
+ "climbing": {
+ "descriptionTail": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
",
+ "description": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。",
+ "title": "開放攀爬地圖"
+ },
+ "trees": {
+ "description": "繪製所有樹木!",
+ "shortDescription": "所有樹木的地圖",
+ "title": "樹木"
+ },
+ "drinking_water": {
+ "description": "在這份地圖上,公共可及的飲水點可以顯示出來,也能輕易的增加",
+ "title": "飲用水"
+ },
+ "maps": {
+ "description": "在這份地圖你可以找到所在在開放街圖上已知的地圖 - 特別是顯示地區、城市、區域的資訊版面上的大型地圖,例如佈告欄背面的旅遊地圖,自然保護區的地圖,區域的單車網路地圖,...)
如果有缺少的地圖,你可以輕易在開放街圖上新增這地圖。",
+ "shortDescription": "這份主題顯示所有已知的開放街圖上的 (旅遊) 地圖",
+ "title": "地圖的地圖"
+ },
+ "charging_stations": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "6": {
+ "mappings": {
+ "3": {
+ "then": "eVgo"
+ },
+ "2": {
+ "then": "Blink"
+ },
+ "1": {
+ "then": "AeroVironment"
+ },
+ "0": {
+ "then": "不屬於大型網路"
+ }
+ },
+ "question": "充電站所屬的網路是?",
+ "render": "{network}"
+ },
+ "5": {
+ "question": "何時是充電站開放使用的時間?"
+ }
+ },
+ "description": "充電站",
+ "title": {
+ "render": "充電站"
+ },
+ "name": "充電站"
+ }
+ },
+ "description": "在這份開放地圖上,你可以尋找與標示充電站的資訊",
+ "shortDescription": "全世界的充電站地圖",
+ "title": "充電站"
+ },
+ "bicyclelib": {
+ "description": "單車圖書館是指每年支付小額費用,然後可以租用單車的地方。最有名的單車圖書館案例是給小孩的,能夠讓長大的小孩用目前的單車換成比較大的單車",
+ "title": "單車圖書館"
+ },
+ "toilets": {
+ "description": "公共廁所的地圖",
+ "title": "開放廁所地圖"
+ },
+ "campersite": {
+ "layers": {
+ "1": {
+ "tagRenderings": {
+ "5": {
+ "mappings": {
+ "1": {
+ "then": "你不能在這邊丟棄廁所化學廢棄物"
+ },
+ "0": {
+ "then": "你可以在這邊丟棄廁所化學廢棄物"
+ }
+ },
+ "question": "你能在這裡丟棄廁所化學廢棄物嗎?"
+ }
+ }
+ },
+ "0": {
+ "tagRenderings": {
+ "8": {
+ "mappings": {
+ "1": {
+ "then": "這個地方並沒有廁所"
+ },
+ "0": {
+ "then": "這個地方有廁所"
+ }
+ },
+ "question": "這個地方有廁所嗎?"
+ }
+ }
+ }
+ }
+ },
+ "cyclofix": {
+ "description": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。
你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。
所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。
你可以到 cyclofix.osm.be 閱讀更多資訊。",
+ "title": "單車修正 - 單車騎士的開放地圖"
+ },
+ "hailhydrant": {
+ "layers": {
+ "1": {
+ "description": "顯示消防栓的地圖圖層。"
+ },
+ "0": {
+ "description": "顯示消防栓的地圖圖層。",
+ "name": "消防栓地圖"
+ }
+ },
+ "description": "在這份地圖上面你可以在你喜愛的社區尋找與更新消防栓、消防隊、急救站與滅火器。\n\n你可以追蹤確切位置 (只有行動版) 以及在左下角選擇與你相關的圖層。你也可以使用這工具新增或編輯地圖上的釘子 (興趣點),以及透過回答一些問題提供額外的資訊。\n\n所有你做出的變動都會自動存到開放街圖這個全球資料庫,而且能自由讓其他人取用。",
+ "shortDescription": "顯示消防栓、滅火器、消防隊與急救站的地圖。",
+ "title": "消防栓、滅火器、消防隊、以及急救站。"
+ },
+ "bookcases": {
+ "description": "公共書架是街邊箱子、盒子、舊的電話亭或是其他存放書本的物件,每一個人都能放置或拿取書本。這份地圖收集所有類型的書架,你可以探索你附近新的書架,同時也能用免費的開放街圖帳號來快速新增你最愛的書架。",
+ "title": "開放書架地圖"
+ },
+ "personal": {
+ "description": "從所有可用的主題圖層創建個人化主題",
+ "title": "個人化主題"
}
-}
\ No newline at end of file
+}
From 675be31e68385fa9cdb4a1651e1c234890366752 Mon Sep 17 00:00:00 2001
From: Supaplex
Date: Mon, 7 Jun 2021 09:23:34 +0000
Subject: [PATCH 19/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 19.2% (72 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/zh_Hant/
---
langs/themes/zh_Hant.json | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index 5c7cd0dfad..341f481a01 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -77,7 +77,12 @@
"climbing": {
"descriptionTail": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
",
"description": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。",
- "title": "開放攀爬地圖"
+ "title": "開放攀爬地圖",
+ "layers": {
+ "0": {
+ "name": "攀岩社團"
+ }
+ }
},
"trees": {
"description": "繪製所有樹木!",
From bd2439d1fdfd21fda41e217f388a1e5d6ce1ec87 Mon Sep 17 00:00:00 2001
From: Supaplex
Date: Mon, 7 Jun 2021 09:24:10 +0000
Subject: [PATCH 20/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 20.2% (76 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/zh_Hant/
---
langs/themes/zh_Hant.json | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index 341f481a01..c46d26852d 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -80,7 +80,21 @@
"title": "開放攀爬地圖",
"layers": {
"0": {
- "name": "攀岩社團"
+ "name": "攀岩社團",
+ "tagRenderings": {
+ "0": {
+ "render": "{name}"
+ }
+ },
+ "description": "攀岩社團或組織",
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "攀岩 NGO"
+ }
+ },
+ "render": "攀岩社團"
+ }
}
}
},
From 6cec910b8182fd27d6d0b5c7c1e68eab27fa7a9e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Targo=C5=84ski?=
Date: Mon, 7 Jun 2021 11:21:44 +0000
Subject: [PATCH 21/67] Translated using Weblate (Polish)
Currently translated at 17.9% (25 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/pl/
---
langs/pl.json | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/langs/pl.json b/langs/pl.json
index 30b85f42b9..26feeaca96 100644
--- a/langs/pl.json
+++ b/langs/pl.json
@@ -20,7 +20,11 @@
"skip": "Pomiń to pytanie",
"cancel": "Anuluj",
"save": "Zapisz",
- "returnToTheMap": "Wróć do mapy"
+ "returnToTheMap": "Wróć do mapy",
+ "loginToStart": "Zaloguj się, aby odpowiedzieć na to pytanie",
+ "search": {
+ "error": "Coś poszło nie tak…"
+ }
},
"index": {
"pickTheme": "Wybierz temat z dostępnych poniżej by zacząć.",
@@ -28,6 +32,7 @@
"title": "Witaj w MapComplete"
},
"centerMessage": {
- "loadingData": "Ładowanie danych…"
+ "loadingData": "Ładowanie danych…",
+ "ready": "Zrobione!"
}
}
From 835d2ab12dec377f3eddd2b17aa2dd58eee22753 Mon Sep 17 00:00:00 2001
From: Supaplex
Date: Tue, 8 Jun 2021 03:31:13 +0000
Subject: [PATCH 22/67] Translated using Weblate (Chinese (Traditional))
Currently translated at 27.2% (102 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/zh_Hant/
---
langs/themes/zh_Hant.json | 58 ++++++++++++++++++++++++++++++++++++++-
1 file changed, 57 insertions(+), 1 deletion(-)
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index c46d26852d..b41692a9eb 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -69,6 +69,14 @@
"2": {
"question": "創造這個的藝術家是誰?",
"render": "{artist_name} 創作"
+ },
+ "4": {
+ "render": "與 {wikidata}對應",
+ "question": "這個藝術品有那個對應的 wikidata 項目?"
+ },
+ "3": {
+ "render": "這個網站有更多資訊",
+ "question": "在那個網站能夠找到更多藝術品的資訊?"
}
}
}
@@ -189,7 +197,8 @@
}
}
}
- }
+ },
+ "title": "露營地點"
},
"cyclofix": {
"description": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。
你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。
所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。
你可以到 cyclofix.osm.be 閱讀更多資訊。",
@@ -216,5 +225,52 @@
"personal": {
"description": "從所有可用的主題圖層創建個人化主題",
"title": "個人化主題"
+ },
+ "benches": {
+ "shortDescription": "長椅的地圖",
+ "title": "長椅"
+ },
+ "fietsstraten": {
+ "layers": {
+ "1": {
+ "name": "將來的單車街道"
+ },
+ "0": {
+ "name": "單車街道"
+ }
+ },
+ "description": "單車街道是機動車輛受限制,只允許單車通行的道路。通常會有路標顯示特別的交通指標。單車街道通常在荷蘭、比利時看到,但德國與法國也有。 ",
+ "shortDescription": "單車街道的地圖",
+ "title": "單車街道"
+ },
+ "facadegardens": {
+ "layers": {
+ "0": {
+ "description": "立面花園",
+ "title": {
+ "render": "立面花園"
+ },
+ "name": "立面花園"
+ }
+ },
+ "shortDescription": "這地圖顯示立面花園的照片以及其他像是方向、日照以及植栽種類等實用訊息。",
+ "title": "立面花園"
+ },
+ "playgrounds": {
+ "description": "在這份地圖上,你可以尋找遊樂場以及其相關資訊",
+ "shortDescription": "遊樂場的地圖",
+ "title": "遊樂場"
+ },
+ "shops": {
+ "description": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話",
+ "title": "開放商店地圖"
+ },
+ "sport_pitches": {
+ "description": "運動場地是進行運動的地方",
+ "shortDescription": "顯示運動場地的地圖",
+ "title": "運動場地"
+ },
+ "surveillance": {
+ "title": "被監視的監視器"
}
}
From 57006ce259ad1ac4b3de657954a91188077a6387 Mon Sep 17 00:00:00 2001
From: Heiko
Date: Mon, 7 Jun 2021 17:21:27 +0000
Subject: [PATCH 23/67] Translated using Weblate (German)
Currently translated at 71.0% (396 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/de/
---
langs/layers/de.json | 217 ++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 214 insertions(+), 3 deletions(-)
diff --git a/langs/layers/de.json b/langs/layers/de.json
index 5b3d306564..deb4376a21 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -406,7 +406,8 @@
},
"presets": {
"0": {
- "title": "Fahrradpumpe"
+ "title": "Fahrradpumpe",
+ "description": "Ein Gerät zum Aufpumpen von Reifen an einem festen Standort im öffentlichen Raum.Beispiele für Fahrradpumpen
"
},
"1": {
"title": "Fahrrad-Reparaturstation und Pumpe",
@@ -671,6 +672,23 @@
}
},
"render": "Es gibt keine Informationen über den Gerätetyp"
+ },
+ "15": {
+ "question": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlasse eine Notiz an OpenStreetMap-Experten)",
+ "render": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}"
+ },
+ "14": {
+ "mappings": {
+ "0": {
+ "then": "Heute überprüft!"
+ }
+ },
+ "render": "Dieser Defibrillator wurde zuletzt am {survey:date} überprüft",
+ "question": "Wann wurde dieser Defibrillator zuletzt überprüft?"
+ },
+ "13": {
+ "question": "Gibt es nützliche Informationen für Benutzer, die Sie oben nicht beschreiben konnten? (leer lassen, wenn nein)",
+ "render": "Zusätzliche Informationen: {description}"
}
}
},
@@ -695,6 +713,13 @@
"then": "Wasserflaschen passen möglicherweise nicht"
}
}
+ },
+ "3": {
+ "render": "Ein weiterer Trinkwasserbrunnen befindet sich in {_closest_other_drinking_water_distance} Meter"
+ },
+ "1": {
+ "render": "Der Betriebsstatus ist {operational_status",
+ "question": "Ist diese Trinkwasserstelle noch in Betrieb?"
}
}
},
@@ -743,18 +768,125 @@
},
"9": {
"render": "{phone}"
+ },
+ "6": {
+ "question": "Auf welcher Webseite kann man mehr Informationen über dieses Naturschutzgebiet finden?"
+ },
+ "5": {
+ "mappings": {
+ "2": {
+ "then": "Hunde dürfen frei herumlaufen"
+ },
+ "1": {
+ "then": "Hunde sind nicht erlaubt"
+ },
+ "0": {
+ "then": "Hunde müssen angeleint sein"
+ }
+ },
+ "question": "Sind Hunde in diesem Naturschutzgebiet erlaubt?"
}
}
},
"playground": {
"tagRenderings": {
"7": {
- "render": "{email}"
+ "render": "{email}",
+ "question": "Wie lautet die E-Mail Adresse des Spielplatzbetreuers?"
},
"8": {
"render": "{phone}"
+ },
+ "9": {
+ "mappings": {
+ "2": {
+ "then": "Nicht zugänglich für Rollstuhlfahrer"
+ },
+ "1": {
+ "then": "Eingeschränkte Zugänglichkeit für Rollstuhlfahrer"
+ },
+ "0": {
+ "then": "Vollständig zugänglich für Rollstuhlfahrer"
+ }
+ },
+ "question": "Ist dieser Spielplatz für Rollstuhlfahrer zugänglich?"
+ },
+ "6": {
+ "mappings": {
+ "4": {
+ "then": "Nicht zugänglich"
+ },
+ "3": {
+ "then": "Nur für Schüler der Schule zugänglich"
+ },
+ "2": {
+ "then": "Nur für Kunden des Betreibers zugänglich"
+ },
+ "1": {
+ "then": "Zugänglich für die Allgemeinheit"
+ },
+ "0": {
+ "then": "Zugänglich für die Allgemeinheit"
+ }
+ },
+ "question": "Ist dieser Spielplatz für die Allgemeinheit zugänglich?"
+ },
+ "5": {
+ "render": "Betrieben von {operator}",
+ "question": "Wer betreibt diesen Spielplatz?"
+ },
+ "2": {
+ "mappings": {
+ "1": {
+ "then": "Dieser Spielplatz ist nachts nicht beleuchtet"
+ },
+ "0": {
+ "then": "Dieser Spielplatz ist nachts beleuchtet"
+ }
+ },
+ "question": "Ist dieser Spielplatz nachts beleuchtet?"
+ },
+ "1": {
+ "mappings": {
+ "7": {
+ "then": "Die Oberfläche ist befestigt"
+ },
+ "6": {
+ "then": "Die Oberfläche ist unbefestigt"
+ },
+ "5": {
+ "then": "Die Oberfläche ist Beton"
+ },
+ "4": {
+ "then": "Die Oberfläche ist Asphalt"
+ },
+ "3": {
+ "then": "Die Oberfläche ist Pflastersteine"
+ },
+ "2": {
+ "then": "Die Oberfläche besteht aus Holzschnitzeln"
+ },
+ "1": {
+ "then": "Die Oberfläche ist Sand"
+ },
+ "0": {
+ "then": "Die Oberfläche ist Gras"
+ }
+ },
+ "render": "Die Oberfläche ist {surface}",
+ "question": "Welche Oberfläche hat dieser Spielplatz?
Wenn es mehrere gibt, wähle die am häufigsten vorkommende aus"
}
- }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Spielplatz {name}"
+ }
+ },
+ "render": "Spielplatz"
+ },
+ "description": "Spielplätze",
+ "name": "Spielplätze"
},
"public_bookcase": {
"name": "Bücherschränke",
@@ -1081,5 +1213,84 @@
}
},
"description": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können"
+ },
+ "picnic_table": {
+ "presets": {
+ "0": {
+ "title": "Picknicktisch"
+ }
+ },
+ "tagRenderings": {
+ "0": {
+ "mappings": {
+ "1": {
+ "then": "Dies ist ein Picknicktisch aus Beton"
+ },
+ "0": {
+ "then": "Dies ist ein Picknicktisch aus Holz"
+ }
+ },
+ "render": "Dieser Picknicktisch besteht aus {material}",
+ "question": "Aus welchem Material besteht dieser Picknicktisch?"
+ }
+ },
+ "title": {
+ "render": "Picknick-Tisch"
+ },
+ "name": "Picknick-Tische"
+ },
+ "map": {
+ "presets": {
+ "0": {
+ "description": "Fehlende Karte hinzufügen",
+ "title": "Karte"
+ }
+ },
+ "tagRenderings": {
+ "2": {
+ "mappings": {
+ "4": {
+ "then": "Es gibt überhaupt keine Namensnennung"
+ },
+ "3": {
+ "then": "Es gibt überhaupt keine Namensnennung"
+ },
+ "2": {
+ "then": "OpenStreetMap wurde nicht erwähnt, aber jemand hat einen OpenStreetMap-Aufkleber darauf geklebt"
+ },
+ "1": {
+ "then": "OpenStreetMap ist eindeutig attributiert, aber die Lizenz wird nicht erwähnt"
+ },
+ "0": {
+ "then": "OpenStreetMap ist eindeutig attributiert, einschließlich der ODBL-Lizenz"
+ }
+ },
+ "question": "Ist die OpenStreetMap-Attribution vorhanden?"
+ },
+ "1": {
+ "render": "Diese Karte basiert auf {map_source}",
+ "mappings": {
+ "0": {
+ "then": "Diese Karte basiert auf OpenStreetMap"
+ }
+ },
+ "question": "Auf welchen Daten basiert diese Karte?"
+ }
+ },
+ "title": {
+ "render": "Karte"
+ },
+ "name": "Karten"
+ },
+ "information_board": {
+ "presets": {
+ "0": {
+ "title": "Informationstafel"
+ }
+ },
+ "title": {
+ "render": "Informationstafel"
+ },
+ "name": "Informationstafeln"
}
}
From fa79c853eac4c7944d9f9b4748281bff98cddd26 Mon Sep 17 00:00:00 2001
From: mic140
Date: Mon, 7 Jun 2021 09:24:09 +0000
Subject: [PATCH 24/67] Translated using Weblate (Russian)
Currently translated at 35.7% (199 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/ru/
---
langs/layers/ru.json | 3 +++
1 file changed, 3 insertions(+)
diff --git a/langs/layers/ru.json b/langs/layers/ru.json
index 00e3f912c4..e521b86662 100644
--- a/langs/layers/ru.json
+++ b/langs/layers/ru.json
@@ -197,6 +197,9 @@
"1": {
"render": "Это велосипедное кафе называется {name}",
"question": "Как называется это байк-кафе?"
+ },
+ "2": {
+ "question": "Есть ли в этом велосипедном кафе велосипедный насос для всеобщего использования?"
}
},
"title": {
From 9458128ccfddfc57c3f74ef6ecd52bfd600b3622 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 16:52:31 +0200
Subject: [PATCH 25/67] Fix #343, add the poss^Cility to use the test backend
(WIP), improve testability of OsmConnection (WIP)
---
Logic/Osm/OsmConnection.ts | 92 ++++++++++++++++++++++---------------
Logic/Osm/OsmPreferences.ts | 3 ++
State.ts | 10 +++-
test.ts | 3 +-
test/OsmConnection.spec.ts | 46 +++++++++++++++++++
test/TestAll.ts | 22 ++++++++-
test/TestHelper.ts | 4 +-
7 files changed, 138 insertions(+), 42 deletions(-)
create mode 100644 test/OsmConnection.spec.ts
diff --git a/Logic/Osm/OsmConnection.ts b/Logic/Osm/OsmConnection.ts
index e74fb1c97f..1bba8d7d52 100644
--- a/Logic/Osm/OsmConnection.ts
+++ b/Logic/Osm/OsmConnection.ts
@@ -7,6 +7,7 @@ import {ElementStorage} from "../ElementStorage";
import Svg from "../../Svg";
import LayoutConfig from "../../Customizations/JSON/LayoutConfig";
import Img from "../../UI/Base/Img";
+import {Utils} from "../../Utils";
export default class UserDetails {
@@ -22,28 +23,49 @@ export default class UserDetails {
export class OsmConnection {
+ public static readonly _oauth_configs = {
+ "osm": {
+ oauth_consumer_key: 'hivV7ec2o49Two8g9h8Is1VIiVOgxQ1iYexCbvem',
+ oauth_secret: 'wDBRTCem0vxD7txrg1y6p5r8nvmz8tAhET7zDASI',
+ url: "https://openstreetmap.org"
+ },
+ "osm-test": {
+ oauth_consumer_key: 'Zgr7EoKb93uwPv2EOFkIlf3n9NLwj5wbyfjZMhz2',
+ oauth_secret: '3am1i1sykHDMZ66SGq4wI2Z7cJMKgzneCHp3nctn',
+ url: "https://master.apis.dev.openstreetmap.org"
+ }
+
+
+ }
public auth;
public userDetails: UIEventSource;
_dryRun: boolean;
-
public preferencesHandler: OsmPreferences;
public changesetHandler: ChangesetHandler;
-
private _onLoggedIn: ((userDetails: UserDetails) => void)[] = [];
private readonly _iframeMode: Boolean | boolean;
private readonly _singlePage: boolean;
+ private readonly _oauth_config: {
+ oauth_consumer_key: string,
+ oauth_secret: string,
+ url: string
+ };
constructor(dryRun: boolean, oauth_token: UIEventSource,
// Used to keep multiple changesets open and to write to the correct changeset
layoutName: string,
- singlePage: boolean = true) {
+ singlePage: boolean = true,
+ osmConfiguration: "osm" | "osm-test" = 'osm'
+ ) {
this._singlePage = singlePage;
- this._iframeMode = window !== window.top;
+ this._oauth_config = OsmConnection._oauth_configs[osmConfiguration] ?? OsmConnection._oauth_configs.osm;
+ console.debug("Using backend", this._oauth_config.url)
+ this._iframeMode = Utils.runningFromConsole ? false : window !== window.top;
this.userDetails = new UIEventSource(new UserDetails(), "userDetails");
this.userDetails.data.dryRun = dryRun;
this._dryRun = dryRun;
-
+
this.updateAuthObject();
this.preferencesHandler = new OsmPreferences(this.auth, this);
@@ -67,37 +89,6 @@ export class OsmConnection {
console.log("Not authenticated");
}
}
-
- private updateAuthObject(){
- let pwaStandAloneMode = false;
- try {
- if (window.matchMedia('(display-mode: standalone)').matches || window.matchMedia('(display-mode: fullscreen)').matches) {
- pwaStandAloneMode = true;
- }
- } catch (e) {
- console.warn("Detecting standalone mode failed", e, ". Assuming in browser and not worrying furhter")
- }
- if (this._iframeMode || pwaStandAloneMode || !this._singlePage) {
- // In standalone mode, we DON'T use single page login, as 'redirecting' opens a new window anyway...
- // Same for an iframe...
- this.auth = new osmAuth({
- oauth_consumer_key: 'hivV7ec2o49Two8g9h8Is1VIiVOgxQ1iYexCbvem',
- oauth_secret: 'wDBRTCem0vxD7txrg1y6p5r8nvmz8tAhET7zDASI',
- singlepage: false,
- auto: true,
- });
- } else {
-
- this.auth = new osmAuth({
- oauth_consumer_key: 'hivV7ec2o49Two8g9h8Is1VIiVOgxQ1iYexCbvem',
- oauth_secret: 'wDBRTCem0vxD7txrg1y6p5r8nvmz8tAhET7zDASI',
- singlepage: true,
- landing: window.location.href,
- auto: true,
- });
- }
- }
-
public UploadChangeset(
layout: LayoutConfig,
@@ -144,7 +135,7 @@ export class OsmConnection {
// Not authorized - our token probably got revoked
// Reset all the tokens
const tokens = [
- "https://www.openstreetmap.orgoauth_request_token_secret",
+ "https://www.openstreetmap.orgoauth_request_token_secret",
"https://www.openstreetmap.orgoauth_token",
"https://www.openstreetmap.orgoauth_token_secret"]
tokens.forEach(token => localStorage.removeItem(token))
@@ -196,6 +187,33 @@ export class OsmConnection {
});
}
+ private updateAuthObject() {
+ let pwaStandAloneMode = false;
+ try {
+ if (Utils.runningFromConsole) {
+ pwaStandAloneMode = true
+ } else if (window.matchMedia('(display-mode: standalone)').matches || window.matchMedia('(display-mode: fullscreen)').matches) {
+ pwaStandAloneMode = true;
+ }
+ } catch (e) {
+ console.warn("Detecting standalone mode failed", e, ". Assuming in browser and not worrying furhter")
+ }
+ const standalone = this._iframeMode || pwaStandAloneMode || !this._singlePage;
+
+ // In standalone mode, we DON'T use single page login, as 'redirecting' opens a new window anyway...
+ // Same for an iframe...
+
+
+ this.auth = new osmAuth({
+ oauth_consumer_key: this._oauth_config.oauth_consumer_key,
+ oauth_secret: this._oauth_config.oauth_secret,
+ url: this._oauth_config.url,
+ landing: standalone ? undefined : window.location.href,
+ singlepage: !standalone,
+ auto: true,
+
+ });
+ }
private CheckForMessagesContinuously() {
const self = this;
diff --git a/Logic/Osm/OsmPreferences.ts b/Logic/Osm/OsmPreferences.ts
index 29bf456d77..e802b8abb0 100644
--- a/Logic/Osm/OsmPreferences.ts
+++ b/Logic/Osm/OsmPreferences.ts
@@ -96,10 +96,13 @@ export class OsmPreferences {
}
public GetPreference(key: string, prefix: string = "mapcomplete-"): UIEventSource {
+ console.warn(key)
key = prefix + key;
+ key = key.replace(/[:\\\/"' {}.%]/g, '')
if (key.length >= 255) {
throw "Preferences: key length to big";
}
+ console.warn(key)
if (this.preferenceSources[key] !== undefined) {
return this.preferenceSources[key];
}
diff --git a/State.ts b/State.ts
index 25053f497c..2a17a48ad9 100644
--- a/State.ts
+++ b/State.ts
@@ -98,6 +98,7 @@ export default class State {
public readonly featureSwitchIsTesting: UIEventSource;
public readonly featureSwitchIsDebugging: UIEventSource;
public readonly featureSwitchShowAllQuestions: UIEventSource;
+ public readonly featureSwitchApiURL: UIEventSource;
/**
@@ -201,7 +202,6 @@ export default class State {
this.featureSwitchShowAllQuestions = featSw("fs-all-questions", (layoutToUse) => layoutToUse?.enableShowAllQuestions ?? false,
"Always show all questions");
-
this.featureSwitchIsTesting = QueryParameters.GetQueryParameter("test", "false",
"If true, 'dryrun' mode is activated. The app will behave as normal, except that changes to OSM will be printed onto the console instead of actually uploaded to osm.org")
.map(str => str === "true", [], b => "" + b);
@@ -209,6 +209,10 @@ export default class State {
this.featureSwitchIsDebugging = QueryParameters.GetQueryParameter("debug","false",
"If true, shows some extra debugging help such as all the available tags on every object")
.map(str => str === "true", [], b => "" + b)
+
+ this.featureSwitchApiURL = QueryParameters.GetQueryParameter("backend","https://openstreetmap.org",
+ "The OSM backend to use - can be used to redirect mapcomplete to a testing backend or e.g. openHistoricalMap")
+
}
@@ -217,7 +221,9 @@ export default class State {
QueryParameters.GetQueryParameter("oauth_token", undefined,
"Used to complete the login"),
layoutToUse?.id,
- true
+ true,
+ // @ts-ignore
+ this.featureSwitchApiURL.data
);
diff --git a/test.ts b/test.ts
index ddf4def815..0b0b2f0626 100644
--- a/test.ts
+++ b/test.ts
@@ -1,3 +1,4 @@
import ValidatedTextField from "./UI/Input/ValidatedTextField";
+import TestAll from "./test/TestAll";
-ValidatedTextField.InputForType("phone").AttachTo("maindiv")
\ No newline at end of file
+new TestAll().testAll();
\ No newline at end of file
diff --git a/test/OsmConnection.spec.ts b/test/OsmConnection.spec.ts
new file mode 100644
index 0000000000..ffcb4840ca
--- /dev/null
+++ b/test/OsmConnection.spec.ts
@@ -0,0 +1,46 @@
+import T from "./TestHelper";
+import UserDetails, {OsmConnection} from "../Logic/Osm/OsmConnection";
+import {UIEventSource} from "../Logic/UIEventSource";
+import ScriptUtils from "../scripts/ScriptUtils";
+
+
+export default class OsmConnectionSpec extends T {
+
+ /*
+ This token gives access to the TESTING-instance of OSM. No real harm can be done with it, so it can be commited to the repo
+ */
+ private static _osm_token = "LJFmv2nUicSNmBNsFeyCHx5KKx6Aiesx8pXPbX4n"
+
+ constructor() {
+ super("OsmConnectionSpec-test", [
+ ["login on dev",
+ () => {
+ const osmConn = new OsmConnection(false,
+ new UIEventSource(undefined),
+ "Unit test",
+ true,
+ "osm-test"
+ )
+
+ osmConn.userDetails.map((userdetails : UserDetails) => {
+ if(userdetails.loggedIn){
+ console.log("Logged in with the testing account. Writing some random data to test preferences")
+ const data = Math.random().toString()
+ osmConn.GetPreference("test").setData(data)
+
+ osmConn.GetPreference("https://raw.githubusercontent.com/AgusQui/MapCompleteRailway/main/railway")
+ .setData(data)
+
+ }
+ });
+
+ ScriptUtils.sleep(1000)
+
+ }
+ ]
+
+
+ ]);
+ }
+
+}
\ No newline at end of file
diff --git a/test/TestAll.ts b/test/TestAll.ts
index 79e66af182..f7c79cf989 100644
--- a/test/TestAll.ts
+++ b/test/TestAll.ts
@@ -9,7 +9,26 @@ import TagQuestionSpec from "./TagQuestion.spec";
import ImageSearcherSpec from "./ImageSearcher.spec";
import ThemeSpec from "./Theme.spec";
import UtilsSpec from "./Utils.spec";
+import OsmConnectionSpec from "./OsmConnection.spec";
+import T from "./TestHelper";
+import {FixedUiElement} from "../UI/Base/FixedUiElement";
+import Combine from "../UI/Base/Combine";
+export default class TestAll {
+ private needsBrowserTests: T[] = [new OsmConnectionSpec()]
+
+ public testAll(): void {
+ Utils.runningFromConsole = false
+ for (const test of this.needsBrowserTests.concat(allTests)) {
+ if (test.failures.length > 0) {
+ new Combine([new FixedUiElement("TEST FAILED: " + test.name).SetStyle("background: red"),
+ ...test.failures])
+ .AttachTo("maindiv")
+ throw "Some test failed"
+ }
+ }
+ }
+}
const allTests = [
new TagSpec(),
@@ -20,8 +39,9 @@ const allTests = [
new ThemeSpec(),
new UtilsSpec()]
+
for (const test of allTests) {
- if(test.failures.length > 0){
+ if (test.failures.length > 0) {
throw "Some test failed"
}
}
\ No newline at end of file
diff --git a/test/TestHelper.ts b/test/TestHelper.ts
index f846fe0e9f..265eeb11ad 100644
--- a/test/TestHelper.ts
+++ b/test/TestHelper.ts
@@ -1,8 +1,10 @@
export default class T {
- public readonly failures = []
+ public readonly failures : string[] = []
+ public readonly name : string;
constructor(testsuite: string, tests: [string, () => void][]) {
+ this.name = testsuite
for (const [name, test] of tests) {
try {
test();
From f2fe066c7ad924429de076722202f92c27d42a2a Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 16:55:29 +0200
Subject: [PATCH 26/67] Version bump
---
Models/Constants.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Models/Constants.ts b/Models/Constants.ts
index 0c6a19e8d1..61bb8d3fc7 100644
--- a/Models/Constants.ts
+++ b/Models/Constants.ts
@@ -2,7 +2,7 @@ import { Utils } from "../Utils";
export default class Constants {
- public static vNumber = "0.7.5";
+ public static vNumber = "0.7.5a";
// The user journey states thresholds when a new feature gets unlocked
public static userJourney = {
From 2383d204d760eb214d115ceba9f366c651cc885f Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 16:56:36 +0200
Subject: [PATCH 27/67] Translation sync
---
assets/layers/bench/bench.json | 45 +-
assets/layers/bench_at_pt/bench_at_pt.json | 6 +-
.../bicycle_library/bicycle_library.json | 51 +-
.../bicycle_tube_vending_machine.json | 28 +-
assets/layers/bike_cafe/bike_cafe.json | 18 +-
.../layers/bike_cleaning/bike_cleaning.json | 12 +-
.../bike_monitoring_station.json | 9 +-
assets/layers/bike_parking/bike_parking.json | 24 +-
.../bike_repair_station.json | 21 +-
assets/layers/bike_shop/bike_shop.json | 30 +-
.../bike_themed_object.json | 3 +-
.../layers/defibrillator/defibrillator.json | 81 +-
.../layers/drinking_water/drinking_water.json | 9 +-
.../information_board/information_board.json | 9 +-
assets/layers/map/map.json | 39 +-
.../layers/nature_reserve/nature_reserve.json | 15 +-
assets/layers/picnic_table/picnic_table.json | 21 +-
assets/layers/playground/playground.json | 90 ++-
assets/themes/artwork/artwork.json | 12 +-
assets/themes/benches/benches.json | 9 +-
.../bicycle_library/bicycle_library.json | 9 +-
assets/themes/bookcases/Bookcases.json | 9 +-
assets/themes/campersites/campersites.json | 22 +-
.../charging_stations/charging_stations.json | 42 +-
assets/themes/climbing/climbing.json | 25 +-
assets/themes/cyclestreets/cyclestreets.json | 18 +-
assets/themes/cyclofix/cyclofix.json | 9 +-
.../themes/drinking_water/drinking_water.json | 9 +-
.../themes/facadegardens/facadegardens.json | 16 +-
assets/themes/hailhydrant/hailhydrant.json | 19 +-
assets/themes/maps/maps.json | 12 +-
.../themes/personalLayout/personalLayout.json | 9 +-
assets/themes/playgrounds/playgrounds.json | 12 +-
assets/themes/shops/shops.json | 7 +-
.../themes/sport_pitches/sport_pitches.json | 12 +-
.../surveillance_cameras.json | 6 +-
assets/themes/toilets/toilets.json | 9 +-
assets/themes/trees/trees.json | 12 +-
langs/layers/de.json | 756 +++++++++---------
langs/layers/ru.json | 100 +--
langs/layers/zh_Hant.json | 52 +-
langs/themes/zh_Hant.json | 318 ++++----
42 files changed, 1145 insertions(+), 870 deletions(-)
diff --git a/assets/layers/bench/bench.json b/assets/layers/bench/bench.json
index 5ac79fd3f5..4f8fbe2c1f 100644
--- a/assets/layers/bench/bench.json
+++ b/assets/layers/bench/bench.json
@@ -239,7 +239,8 @@
"nl": "Uit welk materiaal is het zitgedeelte van deze zitbank gemaakt?",
"hu": "Miből van a pad (ülő része)?",
"it": "Di che materiale è fatta questa panchina?",
- "zh_Hans": "这个长椅(或座椅)是用什么材料做的?"
+ "zh_Hans": "这个长椅(或座椅)是用什么材料做的?",
+ "ru": "Из какого материала сделана скамейка?"
}
},
{
@@ -260,7 +261,8 @@
"fr": "Assis sur le banc, on regarde vers {direction}°.",
"hu": "A pad {direction}° felé néz.",
"it": "Quando si è seduti su questa panchina, si guarda verso {direction}°.",
- "zh_Hans": "坐在长椅上的时候目视方向为 {direction}°方位。"
+ "zh_Hans": "坐在长椅上的时候目视方向为 {direction}°方位。",
+ "ru": "Сидя на скамейке, вы смотрите в сторону {direction}°."
},
"freeform": {
"key": "direction",
@@ -277,7 +279,8 @@
"it": "Colore: {colour}",
"ru": "Цвет: {colour}",
"id": "Warna: {colour}",
- "zh_Hans": "颜色: {colour}"
+ "zh_Hans": "颜色: {colour}",
+ "zh_Hant": "顏色:{colour}"
},
"question": {
"en": "Which colour does this bench have?",
@@ -287,7 +290,8 @@
"hu": "Milyen színű a pad?",
"it": "Di che colore è questa panchina?",
"ru": "Какого цвета скамейка?",
- "zh_Hans": "这个长椅是什么颜色的?"
+ "zh_Hans": "这个长椅是什么颜色的?",
+ "zh_Hant": "這個長椅是什麼顏色的?"
},
"freeform": {
"key": "colour",
@@ -304,7 +308,8 @@
"hu": "Szín: barna",
"it": "Colore: marrone",
"ru": "Цвет: коричневый",
- "zh_Hans": "颜色:棕"
+ "zh_Hans": "颜色:棕",
+ "zh_Hant": "顏色:棕色"
}
},
{
@@ -317,7 +322,8 @@
"hu": "Szín: zöld",
"it": "Colore: verde",
"ru": "Цвет: зеленый",
- "zh_Hans": "颜色:绿"
+ "zh_Hans": "颜色:绿",
+ "zh_Hant": "顏色:綠色"
}
},
{
@@ -330,7 +336,8 @@
"hu": "Szín: szürke",
"it": "Colore: grigio",
"ru": "Цвет: серый",
- "zh_Hans": "颜色:灰"
+ "zh_Hans": "颜色:灰",
+ "zh_Hant": "顏色:灰色"
}
},
{
@@ -343,7 +350,8 @@
"hu": "Szín: fehér",
"it": "Colore: bianco",
"ru": "Цвет: белый",
- "zh_Hans": "颜色:白"
+ "zh_Hans": "颜色:白",
+ "zh_Hant": "顏色:白色"
}
},
{
@@ -356,7 +364,8 @@
"hu": "Szín: piros",
"it": "Colore: rosso",
"ru": "Цвет: красный",
- "zh_Hans": "颜色:红"
+ "zh_Hans": "颜色:红",
+ "zh_Hant": "顏色:紅色"
}
},
{
@@ -369,7 +378,8 @@
"hu": "Szín: fekete",
"it": "Colore: nero",
"ru": "Цвет: чёрный",
- "zh_Hans": "颜色:黑"
+ "zh_Hans": "颜色:黑",
+ "zh_Hant": "顏色:黑色"
}
},
{
@@ -382,7 +392,8 @@
"hu": "Szín: kék",
"it": "Colore: blu",
"ru": "Цвет: синий",
- "zh_Hans": "颜色:蓝"
+ "zh_Hans": "颜色:蓝",
+ "zh_Hant": "顏色:藍色"
}
},
{
@@ -395,7 +406,8 @@
"hu": "Szín: sárga",
"it": "Colore: giallo",
"ru": "Цвет: желтый",
- "zh_Hans": "颜色:黄"
+ "zh_Hans": "颜色:黄",
+ "zh_Hant": "顏色:黃色"
}
}
]
@@ -406,14 +418,19 @@
"nl": "Wanneer is deze laatste bank laatst gesurveyed?",
"fr": "Quand ce banc a-t-il été contrôlé pour la dernière fois ?",
"it": "Quando è stata verificata l’ultima volta questa panchina?",
- "zh_Hans": "上次对这个长椅实地调查是什么时候?"
+ "zh_Hans": "上次对这个长椅实地调查是什么时候?",
+ "de": "Wann wurde diese Bank zuletzt überprüft?",
+ "ru": "Когда последний раз обследовали эту скамейку?",
+ "zh_Hant": "上一次探察長椅是什麼時候?"
},
"render": {
"en": "This bench was last surveyed on {survey:date}",
"nl": "Deze bank is laatst gesurveyd op {survey:date}",
"fr": "Ce banc a été contrôlé pour la dernière fois le {survey:date}",
"it": "Questa panchina è stata controllata l’ultima volta in data {survey:date}",
- "zh_Hans": "这个长椅于 {survey:date}最后一次实地调查"
+ "zh_Hans": "这个长椅于 {survey:date}最后一次实地调查",
+ "de": "Die Bank wurde zuletzt am {survey:date} überprüft.",
+ "ru": "Последний раз обследование этой скамейки проводилось {survey:date}"
},
"freeform": {
"key": "survey:date",
diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json
index fa12a5e425..8765078620 100644
--- a/assets/layers/bench_at_pt/bench_at_pt.json
+++ b/assets/layers/bench_at_pt/bench_at_pt.json
@@ -66,7 +66,8 @@
"nl": "Zitbank in een schuilhokje",
"hu": "Pad fedett helyen",
"it": "Panchina in un riparo",
- "zh_Hans": "在庇护所的长椅"
+ "zh_Hans": "在庇护所的长椅",
+ "ru": "Скамейка в укрытии"
}
}
]
@@ -96,7 +97,8 @@
"fr": "Banc assis debout",
"nl": "Leunbank",
"it": "Panca in piedi",
- "zh_Hans": "站立长凳"
+ "zh_Hans": "站立长凳",
+ "ru": "Встаньте на скамейке"
},
"freeform": {
"key": "bench",
diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json
index ef02468688..c18aa6fdd6 100644
--- a/assets/layers/bicycle_library/bicycle_library.json
+++ b/assets/layers/bicycle_library/bicycle_library.json
@@ -4,7 +4,8 @@
"en": "Bicycle library",
"nl": "Fietsbibliotheek",
"fr": "Vélothèque",
- "it": "Bici in prestito"
+ "it": "Bici in prestito",
+ "ru": "Велосипедная библиотека"
},
"minzoom": 8,
"source": {
@@ -15,7 +16,8 @@
"en": "Bicycle library",
"nl": "Fietsbibliotheek",
"fr": "Vélothèque",
- "it": "Bici in prestito"
+ "it": "Bici in prestito",
+ "ru": "Велосипедная библиотека"
},
"mappings": [
{
@@ -41,7 +43,9 @@
"nl": "Een plaats waar men voor langere tijd een fiets kan lenen",
"fr": "Un lieu où des vélos peuvent être empruntés pour un temps plus long",
"hu": "Létesítmény, ahonnan kerékpár kölcsönözhető hosszabb időre",
- "it": "Una struttura dove le biciclette possono essere prestate per periodi di tempo più lunghi"
+ "it": "Una struttura dove le biciclette possono essere prestate per periodi di tempo più lunghi",
+ "de": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können",
+ "ru": "Учреждение, где велосипед может быть арендован на более длительный срок"
},
"tagRenderings": [
"images",
@@ -50,13 +54,15 @@
"en": "What is the name of this bicycle library?",
"nl": "Wat is de naam van deze fietsbieb?",
"fr": "Quel est le nom de cette vélothèque ?",
- "it": "Qual è il nome di questo “bici in prestito”?"
+ "it": "Qual è il nome di questo “bici in prestito”?",
+ "ru": "Как называется эта велосипедная библиотека?"
},
"render": {
"en": "This bicycle library is called {name}",
"nl": "Deze fietsbieb heet {name}",
"fr": "Cette vélothèque s'appelle {name}",
- "it": "Il “bici in prestito” è chiamato {name}"
+ "it": "Il “bici in prestito” è chiamato {name}",
+ "ru": "Эта велосипедная библиотека называется {name}"
},
"freeform": {
"key": "name"
@@ -73,7 +79,8 @@
"fr": "Combien coûte l'emprunt d'un vélo ?",
"hu": "Mennyibe kerül egy kerékpár kölcsönzése?",
"it": "Quanto costa il prestito di una bicicletta?",
- "ru": "Сколько стоит прокат велосипеда?"
+ "ru": "Сколько стоит прокат велосипеда?",
+ "de": "Wie viel kostet das Ausleihen eines Fahrrads?"
},
"render": {
"en": "Lending a bicycle costs {charge}",
@@ -81,7 +88,8 @@
"fr": "Emprunter un vélo coûte {charge}",
"hu": "Egy kerékpár kölcsönzése {charge}",
"it": "Il prestito di una bicicletta costa {charge}",
- "ru": "Стоимость аренды велосипеда {charge}"
+ "ru": "Стоимость аренды велосипеда {charge}",
+ "de": "Das Ausleihen eines Fahrrads kostet {charge}"
},
"freeform": {
"key": "charge",
@@ -102,7 +110,9 @@
"nl": "Een fiets huren is gratis",
"fr": "L'emprunt de vélo est gratuit",
"hu": "A kerékpárkölcsönzés ingyenes",
- "it": "Il prestito di una bicicletta è gratuito"
+ "it": "Il prestito di una bicicletta è gratuito",
+ "de": "Das Ausleihen eines Fahrrads ist kostenlos",
+ "ru": "Прокат велосипедов бесплатен"
}
},
{
@@ -116,7 +126,8 @@
"en": "Lending a bicycle costs €20/year and €20 warranty",
"nl": "Een fiets huren kost €20/jaar en €20 waarborg",
"fr": "Emprunter un vélo coûte 20 €/an et 20 € de garantie",
- "it": "Il prestito di una bicicletta costa 20 €/anno più 20 € di garanzia"
+ "it": "Il prestito di una bicicletta costa 20 €/anno più 20 € di garanzia",
+ "de": "Das Ausleihen eines Fahrrads kostet 20€ pro Jahr und 20€ Gebühr"
}
}
]
@@ -128,7 +139,9 @@
"fr": "Qui peut emprunter des vélos ici ?",
"hu": "Ki kölcsönözhet itt kerékpárt?",
"it": "Chi può prendere in prestito le biciclette qua?",
- "zh_Hans": "谁可以从这里借自行车?"
+ "zh_Hans": "谁可以从这里借自行车?",
+ "de": "Wer kann hier Fahrräder ausleihen?",
+ "ru": "Кто здесь может арендовать велосипед?"
},
"multiAnswer": true,
"mappings": [
@@ -139,7 +152,9 @@
"en": "Bikes for children available",
"fr": "Vélos pour enfants disponibles",
"hu": "",
- "it": "Sono disponibili biciclette per bambini"
+ "it": "Sono disponibili biciclette per bambini",
+ "de": "Fahrräder für Kinder verfügbar",
+ "ru": "Доступны детские велосипеды"
}
},
{
@@ -148,7 +163,9 @@
"nl": "Aanbod voor volwassenen",
"en": "Bikes for adult available",
"fr": "Vélos pour adultes disponibles",
- "it": "Sono disponibili biciclette per adulti"
+ "it": "Sono disponibili biciclette per adulti",
+ "de": "Fahrräder für Erwachsene verfügbar",
+ "ru": "Доступны велосипеды для взрослых"
}
},
{
@@ -157,7 +174,9 @@
"nl": "Aanbod voor personen met een handicap",
"en": "Bikes for disabled persons available",
"fr": "Vélos pour personnes handicapées disponibles",
- "it": "Sono disponibili biciclette per disabili"
+ "it": "Sono disponibili biciclette per disabili",
+ "de": "Fahrräder für Behinderte verfügbar",
+ "ru": "Доступны велосипеды для людей с ограниченными возможностями"
}
}
]
@@ -169,7 +188,8 @@
{
"title": {
"en": "Fietsbibliotheek",
- "nl": "Bicycle library"
+ "nl": "Bicycle library",
+ "ru": "Велосипедная библиотека"
},
"tags": [
"amenity=bicycle_library"
@@ -178,7 +198,8 @@
"nl": "Een fietsbieb heeft een collectie fietsen die leden mogen lenen",
"en": "A bicycle library has a collection of bikes which can be lent",
"fr": "Une vélothèque a une collection de vélos qui peuvent être empruntés",
- "it": "Una ciclo-teca o «bici in prestito» ha una collezione di bici che possno essere prestate"
+ "it": "Una ciclo-teca o «bici in prestito» ha una collezione di bici che possno essere prestate",
+ "ru": "В велосипедной библиотеке есть велосипеды для аренды"
}
}
],
diff --git a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
index 2814d4a6ea..dde49e6411 100644
--- a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
+++ b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
@@ -4,14 +4,18 @@
"en": "Bicycle tube vending machine",
"nl": "Fietsbanden-verkoopsautomaat",
"fr": "Distributeur automatique de chambre à air de vélo",
- "it": "Distributore automatico di camere d’aria per bici"
+ "it": "Distributore automatico di camere d’aria per bici",
+ "de": "Fahrradschlauch-Automat",
+ "ru": "Торговый автомат для велосипедистов"
},
"title": {
"render": {
"en": "Bicycle tube vending machine",
"nl": "Fietsbanden-verkoopsautomaat",
"fr": "Distributeur automatique de chambre à air de vélo",
- "it": "Distributore automatico di camere d’aria per bici"
+ "it": "Distributore automatico di camere d’aria per bici",
+ "de": "Fahrradschlauch-Automat",
+ "ru": "Торговый автомат для велосипедистов"
},
"mappings": [
{
@@ -59,7 +63,9 @@
"en": "Bicycle tube vending machine",
"nl": "Fietsbanden-verkoopsautomaat",
"fr": "Distributeur automatique de chambre à air de vélo",
- "it": "Distributore automatico di camere d’aria per bici"
+ "it": "Distributore automatico di camere d’aria per bici",
+ "de": "Fahrradschlauch-Automat",
+ "ru": "Торговый автомат для велосипедистов"
},
"tags": [
"amenity=vending_machine",
@@ -78,13 +84,16 @@
"nl": "Is deze verkoopsautomaat nog steeds werkende?",
"fr": "Cette machine est-elle encore opérationelle ?",
"it": "Questo distributore automatico funziona ancora?",
- "ru": "Этот торговый автомат все еще работает?"
+ "ru": "Этот торговый автомат все еще работает?",
+ "de": "Ist dieser Automat noch in Betrieb?"
},
"render": {
"en": "The operational status is {operational_status",
"nl": "Deze verkoopsautomaat is {operational_status}",
"fr": "L'état opérationnel est {operational_status}",
- "it": "Lo stato operativo è {operational_status}"
+ "it": "Lo stato operativo è {operational_status}",
+ "de": "Der Betriebszustand ist {operational_status",
+ "ru": "Рабочий статус: {operational_status"
},
"freeform": {
"key": "operational_status"
@@ -99,7 +108,8 @@
"hu": "Az automata működik",
"it": "Il distributore automatico funziona",
"ru": "Этот торговый автомат работает",
- "zh_Hans": "这个借还机正常工作"
+ "zh_Hans": "这个借还机正常工作",
+ "de": "Dieser Automat funktioniert"
}
},
{
@@ -111,7 +121,8 @@
"hu": "Az automata elromlott",
"it": "Il distributore automatico è guasto",
"ru": "Этот торговый автомат сломан",
- "zh_Hans": "这个借还机已经损坏"
+ "zh_Hans": "这个借还机已经损坏",
+ "de": "Dieser Automat ist kaputt"
}
},
{
@@ -123,7 +134,8 @@
"hu": "Az automata zárva van",
"it": "Il distributore automatico è spento",
"ru": "Этот торговый автомат закрыт",
- "zh_Hans": "这个借还机被关闭了"
+ "zh_Hans": "这个借还机被关闭了",
+ "de": "Dieser Automat ist geschlossen"
}
}
]
diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json
index caaf1c91ea..dc7ca06a7b 100644
--- a/assets/layers/bike_cafe/bike_cafe.json
+++ b/assets/layers/bike_cafe/bike_cafe.json
@@ -7,7 +7,8 @@
"gl": "Café de ciclistas",
"de": "Fahrrad-Café",
"it": "Caffè in bici",
- "zh_Hans": "自行车咖啡"
+ "zh_Hans": "自行车咖啡",
+ "ru": "Велосипедное кафе"
},
"minzoom": 13,
"source": {
@@ -42,7 +43,8 @@
"gl": "Café de ciclistas",
"de": "Fahrrad-Café",
"it": "Caffè in bici",
- "zh_Hans": "自行车咖啡"
+ "zh_Hans": "自行车咖啡",
+ "ru": "Велосипедное кафе"
},
"mappings": [
{
@@ -54,7 +56,8 @@
"gl": "Café de ciclistas {name}",
"de": "Fahrrad-Café {name}",
"it": "Caffè in bici {name}",
- "zh_Hans": "自行车咖啡 {name}"
+ "zh_Hans": "自行车咖啡 {name}",
+ "ru": "Велосипедное кафе {name}"
}
}
]
@@ -69,7 +72,8 @@
"gl": "Cal é o nome deste café de ciclistas?",
"de": "Wie heißt dieses Fahrrad-Café?",
"it": "Qual è il nome di questo caffè in bici?",
- "zh_Hans": "这个自行车咖啡的名字是什么?"
+ "zh_Hans": "这个自行车咖啡的名字是什么?",
+ "ru": "Как называется это байк-кафе?"
},
"render": {
"en": "This bike cafe is called {name}",
@@ -78,7 +82,8 @@
"gl": "Este café de ciclistas chámase {name}",
"de": "Dieses Fahrrad-Café heißt {name}",
"it": "Questo caffè in bici è chiamato {name}",
- "zh_Hans": "这家自行车咖啡叫做 {name}"
+ "zh_Hans": "这家自行车咖啡叫做 {name}",
+ "ru": "Это велосипедное кафе называется {name}"
},
"freeform": {
"key": "name"
@@ -92,7 +97,8 @@
"gl": "Este café de ciclistas ofrece unha bomba de ar para que calquera persoa poida usala?",
"de": "Bietet dieses Fahrrad-Café eine Fahrradpumpe an, die von jedem benutzt werden kann?",
"it": "Questo caffè in bici offre una pompa per bici che chiunque può utilizzare?",
- "zh_Hans": "这家自行车咖啡为每个使用者提供打气筒吗?"
+ "zh_Hans": "这家自行车咖啡为每个使用者提供打气筒吗?",
+ "ru": "Есть ли в этом велосипедном кафе велосипедный насос для всеобщего использования?"
},
"mappings": [
{
diff --git a/assets/layers/bike_cleaning/bike_cleaning.json b/assets/layers/bike_cleaning/bike_cleaning.json
index c7ab19f67b..9cf2b9e968 100644
--- a/assets/layers/bike_cleaning/bike_cleaning.json
+++ b/assets/layers/bike_cleaning/bike_cleaning.json
@@ -4,14 +4,16 @@
"en": "Bike cleaning service",
"nl": "Fietsschoonmaakpunt",
"fr": "Service de nettoyage de vélo",
- "it": "Servizio lavaggio bici"
+ "it": "Servizio lavaggio bici",
+ "de": "Fahrrad-Reinigungsdienst"
},
"title": {
"render": {
"en": "Bike cleaning service",
"nl": "Fietsschoonmaakpunt",
"fr": "Service de nettoyage de vélo",
- "it": "Servizio lavaggio bici"
+ "it": "Servizio lavaggio bici",
+ "de": "Fahrrad-Reinigungsdienst"
},
"mappings": [
{
@@ -20,7 +22,8 @@
"en": "Bike cleaning service {name}",
"nl": "Fietsschoonmaakpunt {name}",
"fr": "Service de nettoyage de vélo {name}",
- "it": "Servizio lavaggio bici {name}"
+ "it": "Servizio lavaggio bici {name}",
+ "de": "Fahrrad-Reinigungsdienst{name}"
}
}
]
@@ -46,7 +49,8 @@
"en": "Bike cleaning service",
"nl": "Fietsschoonmaakpunt",
"fr": "Service de nettoyage de vélo",
- "it": "Servizio lavaggio bici"
+ "it": "Servizio lavaggio bici",
+ "de": "Fahrrad-Reinigungsdienst"
},
"tags": [
"amenity=bicycle_wash"
diff --git a/assets/layers/bike_monitoring_station/bike_monitoring_station.json b/assets/layers/bike_monitoring_station/bike_monitoring_station.json
index 3f5c0a7384..bbefb44aa6 100644
--- a/assets/layers/bike_monitoring_station/bike_monitoring_station.json
+++ b/assets/layers/bike_monitoring_station/bike_monitoring_station.json
@@ -20,7 +20,8 @@
"nl": "Fietstelstation",
"en": "Bicycle counting station",
"fr": "Station de comptage de vélo",
- "it": "Stazione conta-biciclette"
+ "it": "Stazione conta-biciclette",
+ "de": "Fahrradzählstation"
},
"mappings": [
{
@@ -29,7 +30,8 @@
"en": "Bicycle counting station {name}",
"nl": "Fietstelstation {name}",
"fr": "Station de comptage de vélo {name}",
- "it": "Stazione conta-biciclette {name}"
+ "it": "Stazione conta-biciclette {name}",
+ "de": "Fahrradzählstation {name}"
}
},
{
@@ -38,7 +40,8 @@
"en": "Bicycle counting station {ref}",
"nl": "Fietstelstation {ref}",
"fr": "Station de comptage de vélo {ref}",
- "it": "Stazione conta-bicicletta {ref}"
+ "it": "Stazione conta-bicicletta {ref}",
+ "de": "Fahrradzählstation {ref}"
}
}
]
diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json
index 0f1e9790a1..645c1fad33 100644
--- a/assets/layers/bike_parking/bike_parking.json
+++ b/assets/layers/bike_parking/bike_parking.json
@@ -153,7 +153,8 @@
"en": "Bollard
",
"nl": "Paal met ring
",
"fr": "Bollard
",
- "it": "Colonnina
"
+ "it": "Colonnina
",
+ "de": "Poller
"
}
},
{
@@ -162,7 +163,8 @@
"en": "An area on the floor which is marked for bicycle parking",
"nl": "Een oppervlakte die gemarkeerd is om fietsen te parkeren",
"fr": "Zone au sol qui est marquée pour le stationnement des vélos",
- "it": "Una zona del pavimento che è marcata per il parcheggio delle bici"
+ "it": "Una zona del pavimento che è marcata per il parcheggio delle bici",
+ "de": "Ein Bereich auf dem Boden, der für das Abstellen von Fahrrädern gekennzeichnet ist"
}
}
]
@@ -183,7 +185,8 @@
"nl": "Ondergrondse parking",
"fr": "Parking souterrain",
"it": "Parcheggio sotterraneo",
- "ru": "Подземная парковка"
+ "ru": "Подземная парковка",
+ "de": "Tiefgarage"
}
},
{
@@ -193,7 +196,8 @@
"nl": "Ondergrondse parking",
"fr": "Parking souterrain",
"it": "Parcheggio sotterraneo",
- "ru": "Подземная парковка"
+ "ru": "Подземная парковка",
+ "de": "Tiefgarage"
}
},
{
@@ -203,7 +207,8 @@
"nl": "Parking op de begane grond",
"fr": "Parking en surface",
"hu": "Felszíni parkoló",
- "it": "Parcheggio in superficie"
+ "it": "Parcheggio in superficie",
+ "de": "Ebenerdiges Parken"
}
},
{
@@ -213,7 +218,8 @@
"nl": "Parking op de begane grond",
"fr": "Parking en surface",
"hu": "Felszíni parkoló",
- "it": "Parcheggio in superficie"
+ "it": "Parcheggio in superficie",
+ "de": "Ebenerdiges Parken"
},
"hideInAnwser": true
},
@@ -303,7 +309,8 @@
"en": "Who can use this bicycle parking?",
"nl": "Wie mag er deze fietsenstalling gebruiken?",
"fr": "Qui peut utiliser ce parking à vélo ?",
- "it": "Chi può usare questo parcheggio bici?"
+ "it": "Chi può usare questo parcheggio bici?",
+ "de": "Wer kann diesen Fahrradparplatz nutzen?"
},
"render": {
"en": "{access}",
@@ -327,7 +334,8 @@
"en": "Publicly accessible",
"nl": "Publiek toegankelijke fietsenstalling",
"fr": "Accessible publiquement",
- "it": "Accessibile pubblicamente"
+ "it": "Accessibile pubblicamente",
+ "de": "Öffentlich zugänglich"
}
},
{
diff --git a/assets/layers/bike_repair_station/bike_repair_station.json b/assets/layers/bike_repair_station/bike_repair_station.json
index 7136de22a2..6c3f222463 100644
--- a/assets/layers/bike_repair_station/bike_repair_station.json
+++ b/assets/layers/bike_repair_station/bike_repair_station.json
@@ -191,13 +191,15 @@
"en": "Who maintains this cycle pump?",
"nl": "Wie beheert deze fietspomp?",
"fr": "Qui maintient cette pompe à vélo ?",
- "it": "Chi gestisce questa pompa per bici?"
+ "it": "Chi gestisce questa pompa per bici?",
+ "de": "Wer wartet diese Fahrradpumpe?"
},
"render": {
"nl": "Beheer door {operator}",
"en": "Maintained by {operator}",
"fr": "Mantenue par {operator}",
- "it": "Manutenuta da {operator}"
+ "it": "Manutenuta da {operator}",
+ "de": "Gewartet von {operator}"
},
"freeform": {
"key": "operator"
@@ -215,7 +217,8 @@
"nl": "Wanneer is dit fietsherstelpunt open?",
"en": "When is this bicycle repair point open?",
"fr": "Quand ce point de réparation de vélo est-il ouvert ?",
- "it": "Quando è aperto questo punto riparazione bici?"
+ "it": "Quando è aperto questo punto riparazione bici?",
+ "de": "Wann ist diese Fahrradreparaturstelle geöffnet?"
},
"render": "{opening_hours_table()}",
"freeform": {
@@ -229,7 +232,8 @@
"nl": "Dag en nacht open",
"en": "Always open",
"fr": "Ouvert en permanence",
- "it": "Sempre aperto"
+ "it": "Sempre aperto",
+ "de": "Immer geöffnet"
}
},
{
@@ -238,7 +242,8 @@
"nl": "Dag en nacht open",
"en": "Always open",
"fr": "Ouvert en permanence",
- "it": "Sempre aperto"
+ "it": "Sempre aperto",
+ "de": "Immer geöffnet"
},
"hideInAnswer": true
}
@@ -589,7 +594,8 @@
"en": "A device to inflate your tires on a fixed location in the public space.Examples of bicycle pumps
",
"nl": "Een apparaat waar je je fietsbanden kan oppompen, beschikbaar in de publieke ruimte. De fietspomp in je kelder telt dus niet.Voorbeelden
Examples of bicycle pumps
",
"it": "Un dispositivo per gonfiare le proprie gomme in un luogo fisso pubblicamente accessibile.Esempi di pompe per biciclette
",
- "fr": "Un dispositif pour gonfler vos pneus sur un emplacement fixe dans l'espace public.Exemples de pompes à vélo
"
+ "fr": "Un dispositif pour gonfler vos pneus sur un emplacement fixe dans l'espace public.Exemples de pompes à vélo
",
+ "de": "Ein Gerät zum Aufpumpen von Reifen an einem festen Standort im öffentlichen Raum.Beispiele für Fahrradpumpen
"
}
},
{
@@ -610,7 +616,8 @@
"en": "A device with tools to repair your bike combined with a pump at a fixed location. The tools are often secured with chains against theft.Example
",
"nl": "Een apparaat met zowel gereedschap om je fiets te herstellen, met een pomp. Deze zijn op een vastgemaakt op een plaats in de publieke ruimte, bv. aan een paal.Voorbeeld
",
"fr": "Un dispositif avec des outils pour réparer votre vélo combiné à une pompe a un emplacement fixe. Les outils sont souvent attachés par une chaîne pour empêcher le vol.Exemple
",
- "it": "Un dispositivo con attrezzi per riparare la tua bici e una pompa in un luogo fisso. Gli attrezzi sono spesso attaccati ad una catena per prevenire il furto.Esempio
"
+ "it": "Un dispositivo con attrezzi per riparare la tua bici e una pompa in un luogo fisso. Gli attrezzi sono spesso attaccati ad una catena per prevenire il furto.Esempio
",
+ "de": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.Beispiel
"
}
},
{
diff --git a/assets/layers/bike_shop/bike_shop.json b/assets/layers/bike_shop/bike_shop.json
index 399335e487..72ced485e6 100644
--- a/assets/layers/bike_shop/bike_shop.json
+++ b/assets/layers/bike_shop/bike_shop.json
@@ -68,7 +68,8 @@
"nl": "Sportwinkel {name}",
"fr": "Magasin de sport {name}",
"it": "Negozio di articoli sportivi {name}",
- "ru": "Магазин спортивного инвентаря {name}"
+ "ru": "Магазин спортивного инвентаря {name}",
+ "de": "Sportartikelgeschäft {name}"
}
},
{
@@ -96,7 +97,8 @@
"en": "Bicycle rental {name}",
"fr": "Location de vélo {name}",
"it": "Noleggio di biciclette {name}",
- "ru": "Прокат велосипедов {name}"
+ "ru": "Прокат велосипедов {name}",
+ "de": "Fahrradverleih{name}"
}
},
{
@@ -219,7 +221,8 @@
"gl": "Cal é a páxina web de {name}?",
"it": "Qual è il sito web di {name}?",
"ru": "Какой сайт у {name}?",
- "id": "URL {name} apa?"
+ "id": "URL {name} apa?",
+ "de": "Was ist die Webseite von {name}?"
},
"render": "{website}",
"freeform": {
@@ -234,7 +237,8 @@
"fr": "Quel est le numéro de téléphone de {name} ?",
"gl": "Cal é o número de teléfono de {name}?",
"it": "Qual è il numero di telefono di {name}?",
- "ru": "Какой номер телефона у {name}?"
+ "ru": "Какой номер телефона у {name}?",
+ "de": "Wie lautet die Telefonnummer von {name}?"
},
"render": "{phone}",
"freeform": {
@@ -249,7 +253,8 @@
"fr": "Quelle est l'adresse électronique de {name} ?",
"gl": "Cal é o enderezo de correo electrónico de {name}?",
"it": "Qual è l’indirizzo email di {name}?",
- "ru": "Какой адрес электронной почты у {name}?"
+ "ru": "Какой адрес электронной почты у {name}?",
+ "de": "Wie lautet die E-Mail-Adresse von {name}?"
},
"render": "{email}",
"freeform": {
@@ -535,7 +540,8 @@
"en": "Tools for DIY repair are only available if you bought/hire the bike in the shop",
"nl": "Het gereedschap aan om je fiets zelf te herstellen is enkel voor als je de fiets er kocht of huurt",
"fr": "Des outils d'auto-réparation sont disponibles uniquement si vous avez acheté ou loué le vélo dans ce magasin",
- "it": "Gli attrezzi per la riparazione fai-da-te sono disponibili solamente se hai acquistato/noleggiato la bici nel negozio"
+ "it": "Gli attrezzi per la riparazione fai-da-te sono disponibili solamente se hai acquistato/noleggiato la bici nel negozio",
+ "de": "Werkzeuge für die Selbstreparatur sind nur verfügbar, wenn Sie das Fahrrad im Laden gekauft/gemietet haben"
}
}
]
@@ -546,7 +552,8 @@
"nl": "Biedt deze winkel een fietsschoonmaak aan?",
"fr": "Lave-t-on les vélos ici ?",
"it": "Vengono lavate le bici qua?",
- "ru": "Здесь моют велосипеды?"
+ "ru": "Здесь моют велосипеды?",
+ "de": "Werden hier Fahrräder gewaschen?"
},
"mappings": [
{
@@ -555,7 +562,8 @@
"en": "This shop cleans bicycles",
"nl": "Deze winkel biedt fietsschoonmaak aan",
"fr": "Ce magasin lave les vélos",
- "it": "Questo negozio lava le biciclette"
+ "it": "Questo negozio lava le biciclette",
+ "de": "Dieses Geschäft reinigt Fahrräder"
}
},
{
@@ -564,7 +572,8 @@
"en": "This shop has an installation where one can clean bicycles themselves",
"nl": "Deze winkel biedt een installatie aan om zelf je fiets schoon te maken",
"fr": "Ce magasin a une installation pour laver soi même des vélos",
- "it": "Questo negozio ha una struttura dove è possibile pulire la propria bici"
+ "it": "Questo negozio ha una struttura dove è possibile pulire la propria bici",
+ "de": "Dieser Laden hat eine Anlage, in der man Fahrräder selbst reinigen kann"
}
},
{
@@ -573,7 +582,8 @@
"en": "This shop doesn't offer bicycle cleaning",
"nl": "Deze winkel biedt geen fietsschoonmaak aan",
"fr": "Ce magasin ne fait pas le nettoyage de vélo",
- "it": "Questo negozio non offre la pulizia della bicicletta"
+ "it": "Questo negozio non offre la pulizia della bicicletta",
+ "de": "Dieser Laden bietet keine Fahrradreinigung an"
}
}
]
diff --git a/assets/layers/bike_themed_object/bike_themed_object.json b/assets/layers/bike_themed_object/bike_themed_object.json
index a0df6544f7..e3960b9d69 100644
--- a/assets/layers/bike_themed_object/bike_themed_object.json
+++ b/assets/layers/bike_themed_object/bike_themed_object.json
@@ -42,7 +42,8 @@
"nl": "Wielerpiste",
"en": "Cycle track",
"fr": "Piste cyclable",
- "it": "Pista ciclabile"
+ "it": "Pista ciclabile",
+ "de": "Radweg"
}
}
]
diff --git a/assets/layers/defibrillator/defibrillator.json b/assets/layers/defibrillator/defibrillator.json
index ad28265e1b..9638a1e01a 100644
--- a/assets/layers/defibrillator/defibrillator.json
+++ b/assets/layers/defibrillator/defibrillator.json
@@ -190,7 +190,8 @@
"en": "There is no info about the type of device",
"nl": "Er is geen info over het soort toestel",
"fr": "Il n'y a pas d'information sur le type de dispositif",
- "it": "Non vi sono informazioni riguardanti il tipo di questo dispositivo"
+ "it": "Non vi sono informazioni riguardanti il tipo di questo dispositivo",
+ "de": "Es gibt keine Informationen über den Gerätetyp"
},
"question": {
"en": "Is this a a regular automatic defibrillator or a manual defibrillator for professionals only?",
@@ -213,7 +214,8 @@
"en": "This is a manual defibrillator for professionals",
"nl": "Dit is een manueel toestel enkel voor professionals",
"fr": "C'est un défibrillateur manuel pour professionnel",
- "it": "Questo è un defibrillatore manuale per professionisti"
+ "it": "Questo è un defibrillatore manuale per professionisti",
+ "de": "Dies ist ein manueller Defibrillator für den professionellen Einsatz"
}
},
{
@@ -262,7 +264,8 @@
"en": "This defibrillator is on the ground floor",
"nl": "Deze defibrillator bevindt zich gelijkvloers",
"fr": "Ce défibrillateur est au rez-de-chaussée",
- "it": "Questo defibrillatore è al pian terreno"
+ "it": "Questo defibrillatore è al pian terreno",
+ "de": "Dieser Defibrillator befindet sich im Erdgeschoss"
}
},
{
@@ -271,7 +274,8 @@
"en": "This defibrillator is on the first floor",
"nl": "Deze defibrillator is op de eerste verdieping",
"fr": "Ce défibrillateur est au premier étage",
- "it": "Questo defibrillatore è al primo piano"
+ "it": "Questo defibrillatore è al primo piano",
+ "de": "Dieser Defibrillator befindet sich in der ersten Etage"
}
}
]
@@ -281,7 +285,8 @@
"nl": "Meer informatie over de locatie (lokale taal):
{defibrillator:location}",
"en": "Extra information about the location (in the local languagel):
{defibrillator:location}",
"fr": "Informations supplémentaires à propos de l'emplacement (dans la langue locale) :
{defibrillator:location}",
- "it": "Informazioni supplementari circa la posizione (in lingua locale):
{defibrillator:location}"
+ "it": "Informazioni supplementari circa la posizione (in lingua locale):
{defibrillator:location}",
+ "de": "Zusätzliche Informationen über den Standort (in der Landessprache):
{defibrillator:location}"
},
"question": {
"en": "Please give some explanation on where the defibrillator can be found (in the local language)",
@@ -302,7 +307,8 @@
"nl": "Meer informatie over de locatie (in het Engels):
{defibrillator:location:en}",
"en": "Extra information about the location (in English):
{defibrillator:location:en}",
"fr": "Informations supplémentaires à propos de l'emplacement (en anglais) :
{defibrillator:location}",
- "it": "Informazioni supplementari circa la posizione (in inglese):
{defibrillator:location:en}"
+ "it": "Informazioni supplementari circa la posizione (in inglese):
{defibrillator:location:en}",
+ "de": "Zusätzliche Informationen über den Standort (auf Englisch):
{defibrillator:location}"
},
"question": {
"en": "Please give some explanation on where the defibrillator can be found (in English)",
@@ -323,7 +329,8 @@
"nl": "Meer informatie over de locatie (in het Frans):
{defibrillator:location:fr}",
"en": "Extra information about the location (in French):
{defibrillator:location:fr}",
"fr": "Informations supplémentaires à propos de l'emplacement (en Français) :
{defibrillator:location}",
- "it": "Informazioni supplementari circa la posizione (in francese):
{defibrillator:location:fr}"
+ "it": "Informazioni supplementari circa la posizione (in francese):
{defibrillator:location:fr}",
+ "de": "Zusätzliche Informationen zum Standort (auf Französisch):
{defibrillator:Standort:fr}"
},
"question": {
"en": "Please give some explanation on where the defibrillator can be found (in French)",
@@ -344,7 +351,8 @@
"nl": "Is deze defibrillator rolstoeltoegankelijk?",
"en": "Is this defibrillator accessible with a wheelchair?",
"fr": "Ce défibrillatuer est-il accessible en fauteuil roulant ?",
- "it": "Questo defibrillatore è accessibile con la sedia a rotelle?"
+ "it": "Questo defibrillatore è accessibile con la sedia a rotelle?",
+ "de": "Ist dieser Defibrillator mit einem Rollstuhl erreichbar?"
},
"mappings": [
{
@@ -357,7 +365,8 @@
"nl": "Deze defibrillator is speciaal aangepast voor gebruikers van een rolstoel",
"en": "This defibrillator is specially adapated for wheelchair users",
"fr": "Ce défibrillateur est spécialement adapté aux utilisateurs en fauteuil roulant",
- "it": "Questo defibrillatore è stato appositamente adattato per gli utenti con la sedia a rotelle"
+ "it": "Questo defibrillatore è stato appositamente adattato per gli utenti con la sedia a rotelle",
+ "de": "Dieser Defibrillator ist speziell für Rollstuhlfahrer angepasst"
}
},
{
@@ -370,7 +379,8 @@
"nl": "Deze defibrillator is vlot bereikbaar met een rolstoel",
"en": "This defibrillator is easily reachable with a wheelchair",
"fr": "Ce défibrillateur est facilement atteignable en fauteuil roulant",
- "it": "Questo defibrillatore è facilmente raggiungibile con un sedia a rotelle"
+ "it": "Questo defibrillatore è facilmente raggiungibile con un sedia a rotelle",
+ "de": "Dieser Defibrillator ist mit einem Rollstuhl leicht zu erreichen"
}
},
{
@@ -383,7 +393,8 @@
"nl": "Je kan er raken met een rolstoel, maar het is niet makkelijk",
"en": "It is possible to reach the defibrillator in a wheelchair, but it is not easy",
"fr": "Il est possible d'atteindre ce défibrillateur en fauteuil roulant, mais ce n'est pas facile",
- "it": "È possibile raggiungere questo defibrillatore con la sedia a rotelle ma non è semplice"
+ "it": "È possibile raggiungere questo defibrillatore con la sedia a rotelle ma non è semplice",
+ "de": "Es ist möglich, den Defibrillator mit einem Rollstuhl zu erreichen, aber es ist nicht einfach"
}
},
{
@@ -396,7 +407,8 @@
"nl": "Niet rolstoeltoegankelijk",
"en": "This defibrillator is not reachable with a wheelchair",
"fr": "Ce défibrillateur n'est pas atteignable en fauteuil roulant",
- "it": "Questo defibrillatore non è raggiungibile con la sedia a rotelle"
+ "it": "Questo defibrillatore non è raggiungibile con la sedia a rotelle",
+ "de": "Dieser Defibrillator ist mit einem Rollstuhl nicht erreichbar"
}
}
]
@@ -406,13 +418,15 @@
"nl": "Officieel identificatienummer van het toestel: {ref}",
"en": "Official identification number of the device: {ref}",
"fr": "Numéro d'identification officiel de ce dispositif : {ref}",
- "it": "Numero identificativo ufficiale di questo dispositivo:{ref}"
+ "it": "Numero identificativo ufficiale di questo dispositivo:{ref}",
+ "de": "Offizielle Identifikationsnummer des Geräts: {ref}"
},
"question": {
"en": "What is the official identification number of the device? (if visible on device)",
"nl": "Wat is het officieel identificatienummer van het toestel? (indien zichtbaar op toestel)",
"fr": "Quel est le numéro d'identification officiel de ce dispositif ? (si il est visible sur le dispositif)",
- "it": "Qual è il numero identificativo ufficiale di questo dispositivo? (se visibile sul dispositivo)"
+ "it": "Qual è il numero identificativo ufficiale di questo dispositivo? (se visibile sul dispositivo)",
+ "de": "Wie lautet die offizielle Identifikationsnummer des Geräts? (falls am Gerät sichtbar)"
},
"freeform": {
"type": "text",
@@ -424,13 +438,15 @@
"en": "Email for questions about this defibrillator: {email}",
"nl": "Email voor vragen over deze defibrillator: {email}",
"fr": "Adresse électronique pour des questions à propos de ce défibrillateur : {email}",
- "it": "Indirizzo email per le domande su questo defibrillatore:{email}"
+ "it": "Indirizzo email per le domande su questo defibrillatore:{email}",
+ "de": "E-Mail für Fragen zu diesem Defibrillator: {email}"
},
"question": {
"en": "What is the email for questions about this defibrillator?",
"nl": "Wat is het email-adres voor vragen over deze defibrillator",
"fr": "Quelle est l'adresse électronique pour des questions à propos de ce défibrillateur ?",
- "it": "Qual è l’indirizzo email per le domande riguardanti questo defibrillatore?"
+ "it": "Qual è l’indirizzo email per le domande riguardanti questo defibrillatore?",
+ "de": "Wie lautet die E-Mail für Fragen zu diesem Defibrillator?"
},
"freeform": {
"key": "email",
@@ -442,13 +458,15 @@
"en": "Telephone for questions about this defibrillator: {phone}",
"fr": "Numéro de téléphone pour questions sur le défibrillateur : {phone}",
"nl": "Telefoonnummer voor vragen over deze defibrillator: {phone}",
- "it": "Numero di telefono per le domande su questo defibrillatore:{phone}"
+ "it": "Numero di telefono per le domande su questo defibrillatore:{phone}",
+ "de": "Telefonnummer für Fragen zu diesem Defibrillator: {phone}"
},
"question": {
"en": "What is the phone number for questions about this defibrillator?",
"fr": "Quel est le numéro de téléphone pour questions sur le défibrillateur ?",
"nl": "Wat is het telefoonnummer voor vragen over deze defibrillator",
- "it": "Qual è il numero di telefono per le domande riguardanti questo defibrillatore?"
+ "it": "Qual è il numero di telefono per le domande riguardanti questo defibrillatore?",
+ "de": "Wie lautet die Telefonnummer für Fragen zu diesem Defibrillator?"
},
"freeform": {
"key": "phone",
@@ -468,7 +486,8 @@
"nl": "Wanneer is deze defibrillator beschikbaar?",
"fr": "À quels horaires ce défibrillateur est-il accessible ?",
"it": "In quali orari è disponibile questo defibrillatore?",
- "ru": "В какое время доступен этот дефибриллятор?"
+ "ru": "В какое время доступен этот дефибриллятор?",
+ "de": "Zu welchen Zeiten ist dieser Defibrillator verfügbar?"
},
"freeform": {
"key": "opening_hours",
@@ -481,7 +500,8 @@
"en": "24/7 opened (including holidays)",
"nl": "24/7 open (inclusief feestdagen)",
"fr": "Ouvert 24/7 (jours feriés inclus)",
- "it": "Aperto 24/7 (festivi inclusi)"
+ "it": "Aperto 24/7 (festivi inclusi)",
+ "de": "24/7 geöffnet (auch an Feiertagen)"
}
}
]
@@ -492,13 +512,15 @@
"nl": "Aanvullende info: {description}",
"fr": "Informations supplémentaires : {description}",
"it": "Informazioni supplementari: {description}",
- "ru": "Дополнительная информация: {description}"
+ "ru": "Дополнительная информация: {description}",
+ "de": "Zusätzliche Informationen: {description}"
},
"question": {
"en": "Is there any useful information for users that you haven't been able to describe above? (leave blank if no)",
"nl": "Is er nog iets bijzonder aan deze defibrillator dat je nog niet hebt kunnen meegeven? (laat leeg indien niet)",
"fr": "Y a-t-il des informations utiles pour les utilisateurs que vous n'avez pas pu décrire ci-dessus ? (laisser vide sinon)",
- "it": "Vi sono altre informazioni utili agli utenti che non è stato possibile aggiungere prima? (lasciare vuoto in caso negativo)"
+ "it": "Vi sono altre informazioni utili agli utenti che non è stato possibile aggiungere prima? (lasciare vuoto in caso negativo)",
+ "de": "Gibt es nützliche Informationen für Benutzer, die Sie oben nicht beschreiben konnten? (leer lassen, wenn nein)"
},
"freeform": {
"key": "description",
@@ -510,13 +532,15 @@
"en": "When was this defibrillator last surveyed?",
"nl": "Wanneer is deze defibrillator het laatst gecontroleerd in OpenStreetMap?",
"fr": "Quand le défibrillateur a-t-il été vérifié pour la dernière fois ?",
- "it": "Quando è stato verificato per l’ultima volta questo defibrillatore?"
+ "it": "Quando è stato verificato per l’ultima volta questo defibrillatore?",
+ "de": "Wann wurde dieser Defibrillator zuletzt überprüft?"
},
"render": {
"en": "This defibrillator was last surveyed on {survey:date}",
"nl": "Deze defibrillator is nagekeken in OSM op {survey:date}",
"fr": "Ce défibrillateur a été vérifié pour la dernière fois le {survey:date}",
- "it": "Questo defibrillatore è stato verificato per l‘ultima volta in data {survey:date}"
+ "it": "Questo defibrillatore è stato verificato per l‘ultima volta in data {survey:date}",
+ "de": "Dieser Defibrillator wurde zuletzt am {survey:date} überprüft"
},
"freeform": {
"key": "survey:date",
@@ -530,7 +554,8 @@
"nl": "Vandaag nagekeken!",
"fr": "Vérifié aujourd'hui !",
"it": "Verificato oggi!",
- "ru": "Проверено сегодня!"
+ "ru": "Проверено сегодня!",
+ "de": "Heute überprüft!"
}
}
]
@@ -540,13 +565,15 @@
"en": "Extra information for OpenStreetMap experts: {fixme}",
"nl": "Extra informatie voor OpenStreetMap experts: {fixme}",
"fr": "Informations supplémentaires pour les experts d'OpenStreetMap : {fixme}",
- "it": "Informazioni supplementari per gli esperti di OpenStreetMap: {fixme}"
+ "it": "Informazioni supplementari per gli esperti di OpenStreetMap: {fixme}",
+ "de": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}"
},
"question": {
"en": "Is there something wrong with how this is mapped, that you weren't able to fix here? (leave a note to OpenStreetMap experts)",
"nl": "Is er iets mis met de informatie over deze defibrillator dat je hier niet opgelost kreeg? (laat hier een berichtje achter voor OpenStreetMap experts)",
"fr": "Y a-t-il quelque chose qui ne va pas dans la manière dont ça a été cartographié, et que vous n'avez pas pu réparer ici ? (laisser une note pour les experts d'OpenStreetMap)",
- "it": "C’è qualcosa di sbagliato riguardante come è stato mappato, che non si è potuto correggere qua? (lascia una nota agli esperti di OpenStreetMap)"
+ "it": "C’è qualcosa di sbagliato riguardante come è stato mappato, che non si è potuto correggere qua? (lascia una nota agli esperti di OpenStreetMap)",
+ "de": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlasse eine Notiz an OpenStreetMap-Experten)"
},
"freeform": {
"key": "fixme",
diff --git a/assets/layers/drinking_water/drinking_water.json b/assets/layers/drinking_water/drinking_water.json
index 7500d8be76..ecd9f4a21c 100644
--- a/assets/layers/drinking_water/drinking_water.json
+++ b/assets/layers/drinking_water/drinking_water.json
@@ -76,13 +76,15 @@
"en": "Is this drinking water spot still operational?",
"nl": "Is deze drinkwaterkraan nog steeds werkende?",
"it": "Questo punto di acqua potabile è sempre funzionante?",
- "fr": "Ce point d'eau potable est-il toujours opérationnel ?"
+ "fr": "Ce point d'eau potable est-il toujours opérationnel ?",
+ "de": "Ist diese Trinkwasserstelle noch in Betrieb?"
},
"render": {
"en": "The operational status is {operational_status",
"nl": "Deze waterkraan-status is {operational_status}",
"it": "Lo stato operativo è {operational_status}",
- "fr": "L'état opérationnel est {operational_status"
+ "fr": "L'état opérationnel est {operational_status",
+ "de": "Der Betriebsstatus ist {operational_status"
},
"freeform": {
"key": "operational_status"
@@ -153,7 +155,8 @@
"render": {
"en": "There is another drinking water fountain at {_closest_other_drinking_water_distance} meter",
"nl": "Er bevindt zich een ander drinkwaterpunt op {_closest_other_drinking_water_distance} meter",
- "it": "C’è un’altra fontanella a {_closest_other_drinking_water_distance} metri"
+ "it": "C’è un’altra fontanella a {_closest_other_drinking_water_distance} metri",
+ "de": "Ein weiterer Trinkwasserbrunnen befindet sich in {_closest_other_drinking_water_distance} Meter"
},
"condition": "_closest_other_drinking_water_id~*"
}
diff --git a/assets/layers/information_board/information_board.json b/assets/layers/information_board/information_board.json
index 13142ccdec..ad4970f869 100644
--- a/assets/layers/information_board/information_board.json
+++ b/assets/layers/information_board/information_board.json
@@ -4,7 +4,8 @@
"nl": "Informatieborden",
"en": "Information boards",
"it": "Pannelli informativi",
- "fr": "Panneaux d'informations"
+ "fr": "Panneaux d'informations",
+ "de": "Informationstafeln"
},
"minzoom": 12,
"source": {
@@ -19,7 +20,8 @@
"nl": "Informatiebord",
"en": "Information board",
"it": "Pannello informativo",
- "fr": "Panneau d'informations"
+ "fr": "Panneau d'informations",
+ "de": "Informationstafel"
}
},
"tagRenderings": [
@@ -48,7 +50,8 @@
"nl": "Informatiebord",
"en": "Information board",
"it": "Pannello informativo",
- "fr": "Panneau d'informations"
+ "fr": "Panneau d'informations",
+ "de": "Informationstafel"
}
}
]
diff --git a/assets/layers/map/map.json b/assets/layers/map/map.json
index cfbcaa3579..2c3cf3ea74 100644
--- a/assets/layers/map/map.json
+++ b/assets/layers/map/map.json
@@ -5,7 +5,8 @@
"nl": "Kaarten",
"it": "Mappe",
"ru": "Карты",
- "fr": "Cartes"
+ "fr": "Cartes",
+ "de": "Karten"
},
"minzoom": 12,
"source": {
@@ -22,7 +23,8 @@
"nl": "Kaart",
"it": "Mappa",
"ru": "Карта",
- "fr": "Carte"
+ "fr": "Carte",
+ "de": "Karte"
}
},
"description": {
@@ -38,7 +40,8 @@
"en": "On which data is this map based?",
"nl": "Op welke data is deze kaart gebaseerd?",
"it": "Su quali dati si basa questa mappa?",
- "fr": "Sur quelles données cette carte est-elle basée ?"
+ "fr": "Sur quelles données cette carte est-elle basée ?",
+ "de": "Auf welchen Daten basiert diese Karte?"
},
"mappings": [
{
@@ -53,7 +56,8 @@
"nl": "Deze kaart is gebaseerd op OpenStreetMap",
"it": "Questa mappa si basa su OpenStreetMap",
"ru": "Эта карта основана на OpenStreetMap",
- "fr": "Cette carte est basée sur OpenStreetMap"
+ "fr": "Cette carte est basée sur OpenStreetMap",
+ "de": "Diese Karte basiert auf OpenStreetMap"
}
}
],
@@ -65,14 +69,16 @@
"nl": "Deze kaart is gebaseerd op {map_source}",
"it": "Questa mappa si basa su {map_source}",
"ru": "Эта карта основана на {map_source}",
- "fr": "Cette carte est basée sur {map_source}"
+ "fr": "Cette carte est basée sur {map_source}",
+ "de": "Diese Karte basiert auf {map_source}"
}
},
{
"question": {
"en": "Is the OpenStreetMap-attribution given?",
"nl": "Is de attributie voor OpenStreetMap aanwezig?",
- "it": "L’attribuzione a OpenStreetMap è presente?"
+ "it": "L’attribuzione a OpenStreetMap è presente?",
+ "de": "Ist die OpenStreetMap-Attribution vorhanden?"
},
"mappings": [
{
@@ -84,7 +90,8 @@
"then": {
"en": "OpenStreetMap is clearly attributed, including the ODBL-license",
"nl": "De OpenStreetMap-attributie is duidelijk aangegeven, zelf met vermelding van \"ODBL\" ",
- "it": "L’attribuzione a OpenStreetMap è chiaramente specificata, inclusa la licenza ODBL"
+ "it": "L’attribuzione a OpenStreetMap è chiaramente specificata, inclusa la licenza ODBL",
+ "de": "OpenStreetMap ist eindeutig attributiert, einschließlich der ODBL-Lizenz"
}
},
{
@@ -96,7 +103,8 @@
"then": {
"en": "OpenStreetMap is clearly attributed, but the license is not mentioned",
"nl": "OpenStreetMap is duidelijk aangegeven, maar de licentievermelding ontbreekt",
- "it": "L’attribuzione a OpenStreetMap è chiaramente specificata ma la licenza non compare"
+ "it": "L’attribuzione a OpenStreetMap è chiaramente specificata ma la licenza non compare",
+ "de": "OpenStreetMap ist eindeutig attributiert, aber die Lizenz wird nicht erwähnt"
}
},
{
@@ -108,7 +116,8 @@
"then": {
"en": "OpenStreetMap wasn't mentioned, but someone put an OpenStreetMap-sticker on it",
"nl": "OpenStreetMap was oorspronkelijk niet aangeduid, maar iemand plaatste er een sticker",
- "it": "Non era presente alcun cenno a OpenStreetMap ma qualcuno vi ha attaccato un adesivo di OpenStreetMap"
+ "it": "Non era presente alcun cenno a OpenStreetMap ma qualcuno vi ha attaccato un adesivo di OpenStreetMap",
+ "de": "OpenStreetMap wurde nicht erwähnt, aber jemand hat einen OpenStreetMap-Aufkleber darauf geklebt"
}
},
{
@@ -121,7 +130,8 @@
"en": "There is no attribution at all",
"nl": "Er is geen attributie",
"it": "Non c’è alcuna attribuzione",
- "fr": "Il n'y a aucune attribution"
+ "fr": "Il n'y a aucune attribution",
+ "de": "Es gibt überhaupt keine Namensnennung"
}
},
{
@@ -134,7 +144,8 @@
"nl": "Er is geen attributie",
"en": "There is no attribution at all",
"it": "Non c’è alcuna attribuzione",
- "fr": "Il n'y a aucune attribution"
+ "fr": "Il n'y a aucune attribution",
+ "de": "Es gibt überhaupt keine Namensnennung"
},
"hideInAnswer": true
}
@@ -199,13 +210,15 @@
"nl": "Kaart",
"it": "Mappa",
"ru": "Карта",
- "fr": "Carte"
+ "fr": "Carte",
+ "de": "Karte"
},
"description": {
"en": "Add a missing map",
"nl": "Voeg een ontbrekende kaart toe",
"it": "Aggiungi una mappa mancante",
- "fr": "Ajouter une carte manquante"
+ "fr": "Ajouter une carte manquante",
+ "de": "Fehlende Karte hinzufügen"
}
}
],
diff --git a/assets/layers/nature_reserve/nature_reserve.json b/assets/layers/nature_reserve/nature_reserve.json
index d7e94c39a5..a0fd58df80 100644
--- a/assets/layers/nature_reserve/nature_reserve.json
+++ b/assets/layers/nature_reserve/nature_reserve.json
@@ -225,7 +225,8 @@
"nl": "Zijn honden toegelaten in dit gebied?",
"en": "Are dogs allowed in this nature reserve?",
"it": "I cani sono ammessi in questa riserva naturale?",
- "fr": "Les chiens sont-ils autorisés dans cette réserve naturelle ?"
+ "fr": "Les chiens sont-ils autorisés dans cette réserve naturelle ?",
+ "de": "Sind Hunde in diesem Naturschutzgebiet erlaubt?"
},
"condition": {
"or": [
@@ -241,7 +242,8 @@
"nl": "Honden moeten aan de leiband",
"en": "Dogs have to be leashed",
"it": "I cani devono essere tenuti al guinzaglio",
- "fr": "Les chiens doivent être tenus en laisse"
+ "fr": "Les chiens doivent être tenus en laisse",
+ "de": "Hunde müssen angeleint sein"
}
},
{
@@ -250,7 +252,8 @@
"nl": "Honden zijn niet toegestaan",
"en": "No dogs allowed",
"it": "I cani non sono ammessi",
- "fr": "Chiens interdits"
+ "fr": "Chiens interdits",
+ "de": "Hunde sind nicht erlaubt"
}
},
{
@@ -259,7 +262,8 @@
"nl": "Honden zijn welkom en mogen vrij rondlopen",
"en": "Dogs are allowed to roam freely",
"it": "I cani sono liberi di girare liberi",
- "fr": "Les chiens sont autorisés à se promener librement"
+ "fr": "Les chiens sont autorisés à se promener librement",
+ "de": "Hunde dürfen frei herumlaufen"
}
}
]
@@ -270,7 +274,8 @@
"en": "On which webpage can one find more information about this nature reserve?",
"nl": "Op welke webpagina kan men meer informatie vinden over dit natuurgebied?",
"it": "In quale pagina web si possono trovare altre informazioni riguardanti questa riserva naturale?",
- "fr": "Sur quelle page web peut-on trouver plus d'informations sur cette réserve naturelle ?"
+ "fr": "Sur quelle page web peut-on trouver plus d'informations sur cette réserve naturelle ?",
+ "de": "Auf welcher Webseite kann man mehr Informationen über dieses Naturschutzgebiet finden?"
},
"render": "{website}",
"freeform": {
diff --git a/assets/layers/picnic_table/picnic_table.json b/assets/layers/picnic_table/picnic_table.json
index 86a17a7f71..e5be9d0774 100644
--- a/assets/layers/picnic_table/picnic_table.json
+++ b/assets/layers/picnic_table/picnic_table.json
@@ -5,7 +5,8 @@
"nl": "Picnictafels",
"it": "Tavoli da picnic",
"ru": "Столы для пикника",
- "fr": "Tables de pique-nique"
+ "fr": "Tables de pique-nique",
+ "de": "Picknick-Tische"
},
"minzoom": 12,
"source": {
@@ -17,7 +18,8 @@
"nl": "Picnictafel",
"it": "Tavolo da picnic",
"ru": "Стол для пикника",
- "fr": "Table de pique-nique"
+ "fr": "Table de pique-nique",
+ "de": "Picknick-Tisch"
}
},
"description": {
@@ -31,12 +33,14 @@
"question": {
"en": "What material is this picnic table made of?",
"nl": "Van welk materiaal is deze picnictafel gemaakt?",
- "it": "Di che materiale è fatto questo tavolo da picnic?"
+ "it": "Di che materiale è fatto questo tavolo da picnic?",
+ "de": "Aus welchem Material besteht dieser Picknicktisch?"
},
"render": {
"en": "This picnic table is made of {material}",
"nl": "Deze picnictafel is gemaakt van {material}",
- "it": "Questo tavolo da picnic è fatto di {material}"
+ "it": "Questo tavolo da picnic è fatto di {material}",
+ "de": "Dieser Picknicktisch besteht aus {material}"
},
"freeform": {
"key": "material"
@@ -48,7 +52,8 @@
"en": "This is a wooden picnic table",
"nl": "Deze picnictafel is gemaakt uit hout",
"it": "È un tavolo da picnic in legno",
- "ru": "Это деревянный стол для пикника"
+ "ru": "Это деревянный стол для пикника",
+ "de": "Dies ist ein Picknicktisch aus Holz"
}
},
{
@@ -57,7 +62,8 @@
"en": "This is a concrete picnic table",
"nl": "Deze picnictafel is gemaakt uit beton",
"it": "È un tavolo da picnic in cemento",
- "ru": "Это бетонный стол для пикника"
+ "ru": "Это бетонный стол для пикника",
+ "de": "Dies ist ein Picknicktisch aus Beton"
}
}
]
@@ -85,7 +91,8 @@
"en": "Picnic table",
"nl": "Picnic-tafel",
"it": "Tavolo da picnic",
- "ru": "Стол для пикника"
+ "ru": "Стол для пикника",
+ "de": "Picknicktisch"
}
}
],
diff --git a/assets/layers/playground/playground.json b/assets/layers/playground/playground.json
index 51481f79df..ab0bbb8397 100644
--- a/assets/layers/playground/playground.json
+++ b/assets/layers/playground/playground.json
@@ -3,7 +3,8 @@
"name": {
"nl": "Speeltuinen",
"en": "Playgrounds",
- "ru": "Детские площадки"
+ "ru": "Детские площадки",
+ "de": "Spielplätze"
},
"minzoom": 13,
"source": {
@@ -21,14 +22,16 @@
"nl": "Speeltuinen",
"en": "Playgrounds",
"it": "Parchi giochi",
- "ru": "Детские площадки"
+ "ru": "Детские площадки",
+ "de": "Spielplätze"
},
"title": {
"render": {
"nl": "Speeltuin",
"en": "Playground",
"it": "Parco giochi",
- "ru": "Детская площадка"
+ "ru": "Детская площадка",
+ "de": "Spielplatz"
},
"mappings": [
{
@@ -37,7 +40,8 @@
"nl": "Speeltuin {name}",
"en": "Playground {name}",
"it": "Parco giochi {name}",
- "ru": "Детская площадка {name}"
+ "ru": "Детская площадка {name}",
+ "de": "Spielplatz {name}"
}
}
]
@@ -48,13 +52,15 @@
"question": {
"nl": "Wat is de ondergrond van deze speeltuin?
Indien er verschillende ondergronden zijn, neem de meest voorkomende",
"en": "Which is the surface of this playground?
If there are multiple, select the most occuring one",
- "it": "Qual è la superficie di questo parco giochi?
Se ve ne è più di una, seleziona quella predominante"
+ "it": "Qual è la superficie di questo parco giochi?
Se ve ne è più di una, seleziona quella predominante",
+ "de": "Welche Oberfläche hat dieser Spielplatz?
Wenn es mehrere gibt, wähle die am häufigsten vorkommende aus"
},
"render": {
"nl": "De ondergrond is {surface}",
"en": "The surface is {surface}",
"it": "La superficie è {surface}",
- "ru": "Поверхность - {surface}"
+ "ru": "Поверхность - {surface}",
+ "de": "Die Oberfläche ist {surface}"
},
"freeform": {
"key": "surface"
@@ -66,7 +72,8 @@
"nl": "De ondergrond is gras",
"en": "The surface is grass",
"it": "La superficie è prato",
- "ru": "Поверхность - трава"
+ "ru": "Поверхность - трава",
+ "de": "Die Oberfläche ist Gras"
}
},
{
@@ -75,7 +82,8 @@
"nl": "De ondergrond is zand",
"en": "The surface is sand",
"it": "La superficie è sabbia",
- "ru": "Поверхность - песок"
+ "ru": "Поверхность - песок",
+ "de": "Die Oberfläche ist Sand"
}
},
{
@@ -83,7 +91,8 @@
"then": {
"nl": "De ondergrond bestaat uit houtsnippers",
"en": "The surface consist of woodchips",
- "it": "La superficie consiste di trucioli di legno"
+ "it": "La superficie consiste di trucioli di legno",
+ "de": "Die Oberfläche besteht aus Holzschnitzeln"
}
},
{
@@ -92,7 +101,8 @@
"nl": "De ondergrond bestaat uit stoeptegels",
"en": "The surface is paving stones",
"it": "La superficie è mattonelle regolari",
- "ru": "Поверхность - брусчатка"
+ "ru": "Поверхность - брусчатка",
+ "de": "Die Oberfläche ist Pflastersteine"
}
},
{
@@ -101,7 +111,8 @@
"nl": "De ondergrond is asfalt",
"en": "The surface is asphalt",
"it": "La superficie è asfalto",
- "ru": "Поверхность - асфальт"
+ "ru": "Поверхность - асфальт",
+ "de": "Die Oberfläche ist Asphalt"
}
},
{
@@ -110,7 +121,8 @@
"nl": "De ondergrond is beton",
"en": "The surface is concrete",
"it": "La superficie è cemento",
- "ru": "Поверхность - бетон"
+ "ru": "Поверхность - бетон",
+ "de": "Die Oberfläche ist Beton"
}
},
{
@@ -118,7 +130,8 @@
"then": {
"nl": "De ondergrond is onverhard",
"en": "The surface is unpaved",
- "it": "La superficie è non pavimentato"
+ "it": "La superficie è non pavimentato",
+ "de": "Die Oberfläche ist unbefestigt"
},
"hideInAnswer": true
},
@@ -127,7 +140,8 @@
"then": {
"nl": "De ondergrond is verhard",
"en": "The surface is paved",
- "it": "La superficie è pavimentato"
+ "it": "La superficie è pavimentato",
+ "de": "Die Oberfläche ist befestigt"
},
"hideInAnswer": true
}
@@ -138,7 +152,8 @@
"nl": "Is deze speeltuin 's nachts verlicht?",
"en": "Is this playground lit at night?",
"it": "È illuminato di notte questo parco giochi?",
- "fr": "Ce terrain de jeux est-il éclairé la nuit ?"
+ "fr": "Ce terrain de jeux est-il éclairé la nuit ?",
+ "de": "Ist dieser Spielplatz nachts beleuchtet?"
},
"mappings": [
{
@@ -146,7 +161,8 @@
"then": {
"nl": "Deze speeltuin is 's nachts verlicht",
"en": "This playground is lit at night",
- "it": "Questo parco giochi è illuminato di notte"
+ "it": "Questo parco giochi è illuminato di notte",
+ "de": "Dieser Spielplatz ist nachts beleuchtet"
}
},
{
@@ -154,7 +170,8 @@
"then": {
"nl": "Deze speeltuin is 's nachts niet verlicht",
"en": "This playground is not lit at night",
- "it": "Questo parco giochi non è illuminato di notte"
+ "it": "Questo parco giochi non è illuminato di notte",
+ "de": "Dieser Spielplatz ist nachts nicht beleuchtet"
}
}
]
@@ -199,13 +216,15 @@
"question": {
"nl": "Wie beheert deze speeltuin?",
"en": "Who operates this playground?",
- "it": "Chi è il responsabile di questo parco giochi?"
+ "it": "Chi è il responsabile di questo parco giochi?",
+ "de": "Wer betreibt diesen Spielplatz?"
},
"render": {
"nl": "Beheer door {operator}",
"en": "Operated by {operator}",
"it": "Gestito da {operator}",
- "fr": "Exploité par {operator}"
+ "fr": "Exploité par {operator}",
+ "de": "Betrieben von {operator}"
},
"freeform": {
"key": "operator"
@@ -215,7 +234,8 @@
"question": {
"nl": "Is deze speeltuin vrij toegankelijk voor het publiek?",
"en": "Is this playground accessible to the general public?",
- "it": "Questo parco giochi è pubblicamente accessibile?"
+ "it": "Questo parco giochi è pubblicamente accessibile?",
+ "de": "Ist dieser Spielplatz für die Allgemeinheit zugänglich?"
},
"mappings": [
{
@@ -223,7 +243,8 @@
"then": {
"en": "Accessible to the general public",
"nl": "Vrij toegankelijk voor het publiek",
- "it": "Accessibile pubblicamente"
+ "it": "Accessibile pubblicamente",
+ "de": "Zugänglich für die Allgemeinheit"
},
"hideInAnswer": true
},
@@ -232,7 +253,8 @@
"then": {
"en": "Accessible to the general public",
"nl": "Vrij toegankelijk voor het publiek",
- "it": "Accessibile pubblicamente"
+ "it": "Accessibile pubblicamente",
+ "de": "Zugänglich für die Allgemeinheit"
}
},
{
@@ -240,7 +262,8 @@
"then": {
"en": "Only accessible for clients of the operating business",
"nl": "Enkel toegankelijk voor klanten van de bijhorende zaak",
- "it": "Accessibile solamente ai clienti dell’attività che lo gestisce"
+ "it": "Accessibile solamente ai clienti dell’attività che lo gestisce",
+ "de": "Nur für Kunden des Betreibers zugänglich"
}
},
{
@@ -248,7 +271,8 @@
"then": {
"en": "Only accessible to students of the school",
"nl": "Vrij toegankelijk voor scholieren van de school",
- "it": "Accessibile solamente agli studenti della scuola"
+ "it": "Accessibile solamente agli studenti della scuola",
+ "de": "Nur für Schüler der Schule zugänglich"
}
},
{
@@ -258,7 +282,8 @@
"nl": "Niet vrij toegankelijk",
"it": "Non accessibile",
"ru": "Недоступно",
- "fr": "Non accessible"
+ "fr": "Non accessible",
+ "de": "Nicht zugänglich"
}
}
]
@@ -268,7 +293,8 @@
"nl": "Wie kan men emailen indien er problemen zijn met de speeltuin?",
"en": "What is the email address of the playground maintainer?",
"it": "Qual è l’indirizzo email del gestore di questo parco giochi?",
- "fr": "Quelle est l'adresse électronique du responsable de l'aire de jeux ?"
+ "fr": "Quelle est l'adresse électronique du responsable de l'aire de jeux ?",
+ "de": "Wie lautet die E-Mail Adresse des Spielplatzbetreuers?"
},
"render": {
"nl": "De bevoegde dienst kan bereikt worden via {email}",
@@ -309,7 +335,8 @@
"question": {
"nl": "Is deze speeltuin toegankelijk voor rolstoelgebruikers?",
"en": "Is this playground accessible to wheelchair users?",
- "fr": "Ce terrain de jeux est-il accessible aux personnes en fauteuil roulant ?"
+ "fr": "Ce terrain de jeux est-il accessible aux personnes en fauteuil roulant ?",
+ "de": "Ist dieser Spielplatz für Rollstuhlfahrer zugänglich?"
},
"mappings": [
{
@@ -317,7 +344,8 @@
"then": {
"nl": "Geheel toegankelijk voor rolstoelgebruikers",
"en": "Completely accessible for wheelchair users",
- "fr": "Entièrement accessible aux personnes en fauteuil roulant"
+ "fr": "Entièrement accessible aux personnes en fauteuil roulant",
+ "de": "Vollständig zugänglich für Rollstuhlfahrer"
}
},
{
@@ -325,7 +353,8 @@
"then": {
"nl": "Beperkt toegankelijk voor rolstoelgebruikers",
"en": "Limited accessibility for wheelchair users",
- "fr": "Accessibilité limitée pour les personnes en fauteuil roulant"
+ "fr": "Accessibilité limitée pour les personnes en fauteuil roulant",
+ "de": "Eingeschränkte Zugänglichkeit für Rollstuhlfahrer"
}
},
{
@@ -333,7 +362,8 @@
"then": {
"nl": "Niet toegankelijk voor rolstoelgebruikers",
"en": "Not accessible for wheelchair users",
- "fr": "Non accessible aux personnes en fauteuil roulant"
+ "fr": "Non accessible aux personnes en fauteuil roulant",
+ "de": "Nicht zugänglich für Rollstuhlfahrer"
}
}
]
diff --git a/assets/themes/artwork/artwork.json b/assets/themes/artwork/artwork.json
index 01f24a68a9..e5bd0f1f15 100644
--- a/assets/themes/artwork/artwork.json
+++ b/assets/themes/artwork/artwork.json
@@ -355,7 +355,8 @@
"de": "Auf welcher Website gibt es mehr Informationen über dieses Kunstwerk?",
"it": "Su quale sito web è possibile trovare altre informazioni riguardanti quest’opera?",
"ru": "На каком сайте можно найти больше информации об этой работе?",
- "ja": "この作品についての詳しい情報はどのウェブサイトにありますか?"
+ "ja": "この作品についての詳しい情報はどのウェブサイトにありますか?",
+ "zh_Hant": "在那個網站能夠找到更多藝術品的資訊?"
},
"render": {
"en": "More information on this website",
@@ -365,7 +366,8 @@
"id": "Info lanjut tersedia di laman web ini.",
"it": "Ulteriori informazioni su questo sito web",
"ru": "Больше информации на этом сайте",
- "ja": "Webサイトに詳細情報がある"
+ "ja": "Webサイトに詳細情報がある",
+ "zh_Hant": "這個網站有更多資訊"
},
"freeform": {
"key": "website",
@@ -380,7 +382,8 @@
"de": "Welcher Wikidata-Eintrag entspricht diesem Kunstwerk?",
"it": "Quale elemento Wikidata corrisponde a quest’opera d’arte?",
"ru": "Какая запись в wikidata соответсвует этой работе?",
- "ja": "このアートワークに関するwikidataのエントリーはどれですか?"
+ "ja": "このアートワークに関するwikidataのエントリーはどれですか?",
+ "zh_Hant": "這個藝術品有那個對應的 wikidata 項目?"
},
"render": {
"en": "Corresponds with {wikidata}",
@@ -389,7 +392,8 @@
"de": "Entspricht {wikidata}",
"it": "Corrisponde a {wikidata}",
"ru": "Запись об этой работе в wikidata: {wikidata}",
- "ja": "{wikidata}に関連する"
+ "ja": "{wikidata}に関連する",
+ "zh_Hant": "與 {wikidata}對應"
},
"freeform": {
"key": "wikidata",
diff --git a/assets/themes/benches/benches.json b/assets/themes/benches/benches.json
index 330cb709b9..f0e35547e2 100644
--- a/assets/themes/benches/benches.json
+++ b/assets/themes/benches/benches.json
@@ -7,7 +7,8 @@
"nl": "Zitbanken",
"it": "Panchine",
"ru": "Скамейки",
- "ja": "ベンチ"
+ "ja": "ベンチ",
+ "zh_Hant": "長椅"
},
"shortDescription": {
"en": "A map of benches",
@@ -16,7 +17,8 @@
"nl": "Een kaart met zitbanken",
"it": "Una mappa delle panchine",
"ru": "Карта скамеек",
- "ja": "ベンチの地図"
+ "ja": "ベンチの地図",
+ "zh_Hant": "長椅的地圖"
},
"description": {
"en": "This map shows all benches that are recorded in OpenStreetMap: Individual benches, and benches belonging to public transport stops or shelters. With an OpenStreetMap account, you can map new benches or edit details of existing benches.",
@@ -34,7 +36,8 @@
"nl",
"it",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "Florian Edelmann",
"icon": "./assets/themes/benches/bench_poi.svg",
diff --git a/assets/themes/bicycle_library/bicycle_library.json b/assets/themes/bicycle_library/bicycle_library.json
index 3295bbe998..f4d9fb366d 100644
--- a/assets/themes/bicycle_library/bicycle_library.json
+++ b/assets/themes/bicycle_library/bicycle_library.json
@@ -8,7 +8,8 @@
"it",
"ru",
"ja",
- "fr"
+ "fr",
+ "zh_Hant"
],
"title": {
"en": "Bicycle libraries",
@@ -16,7 +17,8 @@
"it": "Biciclette in prestito",
"ru": "Велосипедные библиотеки",
"ja": "自転車ライブラリ",
- "fr": "Vélothèques"
+ "fr": "Vélothèques",
+ "zh_Hant": "單車圖書館"
},
"description": {
"nl": "Een fietsbibliotheek is een plaats waar men een fiets kan lenen, vaak voor een klein bedrag per jaar. Een typisch voorbeeld zijn kinderfietsbibliotheken, waar men een fiets op maat van het kind kan lenen. Is het kind de fiets ontgroeid, dan kan het te kleine fietsje omgeruild worden voor een grotere.",
@@ -24,7 +26,8 @@
"it": "«Biciclette in prestito» è un luogo dove le biciclette possono essere prese in prestito, spesso in cambio di un piccolo contributo annuale. Un caso degno di nota è quello delle biciclette in prestito per bambini che permettono loro di cambiare le dimensioni della propria bici quando quella attuale diventa troppo piccola",
"ru": "Велосипедная библиотека - это место, где велосипеды можно взять на время, часто за небольшую ежегодную плату. Примером использования являются библиотеки велосипедов для детей, что позволяет им сменить велосипед на больший, когда они перерастают свой нынешний велосипед",
"ja": "自転車ライブラリは、少額の年間料金で自転車を借りられる場所です。注目すべきユースケースとしては、子供向けの自転車ライブラリで、子どもの成長にあわせて大きな自転車へ借り替えられます",
- "fr": "Une vélothèque est un endroit où on peut emprunter des vélos, souvent moyennant une petite somme annuelle. Un cas d'utilisation notable est celui des vélothèques pour les enfants, qui leur permettent de passer à un vélo plus grand quand ils sont trop grands pour leur vélo actuel"
+ "fr": "Une vélothèque est un endroit où on peut emprunter des vélos, souvent moyennant une petite somme annuelle. Un cas d'utilisation notable est celui des vélothèques pour les enfants, qui leur permettent de passer à un vélo plus grand quand ils sont trop grands pour leur vélo actuel",
+ "zh_Hant": "單車圖書館是指每年支付小額費用,然後可以租用單車的地方。最有名的單車圖書館案例是給小孩的,能夠讓長大的小孩用目前的單車換成比較大的單車"
},
"icon": "./assets/themes/bicycle_library/logo.svg",
"socialImage": null,
diff --git a/assets/themes/bookcases/Bookcases.json b/assets/themes/bookcases/Bookcases.json
index 9cc00b6ac2..f33419ba70 100644
--- a/assets/themes/bookcases/Bookcases.json
+++ b/assets/themes/bookcases/Bookcases.json
@@ -8,7 +8,8 @@
"de",
"fr",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"title": {
"en": "Open Bookcase Map",
@@ -16,7 +17,8 @@
"de": "Öffentliche Bücherschränke Karte",
"fr": "Carte des microbibliothèques",
"ru": "Открытая карта книжных шкафов",
- "ja": "オープン本棚マップ"
+ "ja": "オープン本棚マップ",
+ "zh_Hant": "開放書架地圖"
},
"description": {
"en": "A public bookcase is a small streetside cabinet, box, old phone boot or some other objects where books are stored. Everyone can place or take a book. This map aims to collect all these bookcases. You can discover new bookcases nearby and, with a free OpenStreetMap account, quickly add your favourite bookcases.",
@@ -24,7 +26,8 @@
"de": "Ein öffentlicher Bücherschrank ist ein kleiner Bücherschrank am Straßenrand, ein Kasten, eine alte Telefonzelle oder andere Gegenstände, in denen Bücher aufbewahrt werden. Jeder kann ein Buch hinstellen oder mitnehmen. Diese Karte zielt darauf ab, all diese Bücherschränke zu sammeln. Sie können neue Bücherschränke in der Nähe entdecken und mit einem kostenlosen OpenStreetMap-Account schnell Ihre Lieblingsbücherschränke hinzufügen.",
"fr": "Une microbibliothèques, également appelée boite à livre, est un élément de mobilier urbain (étagère, armoire, etc) dans lequel sont stockés des livres et autres objets en accès libre. Découvrez les boites à livres prêt de chez vous, ou ajouter en une nouvelle à l'aide de votre compte OpenStreetMap.",
"ru": "Общественный книжный шкаф - это небольшой уличный шкаф, коробка, старый телефонный аппарат или другие предметы, где хранятся книги. Каждый может положить или взять книгу. Цель этой карты - собрать все эти книжные шкафы. Вы можете обнаружить новые книжные шкафы поблизости и, имея бесплатный аккаунт OpenStreetMap, быстро добавить свои любимые книжные шкафы.",
- "ja": "公共の本棚とは、本が保管されている小さな街角のキャビネット、箱、古い電話のトランク、その他の物のことです。誰でも本を置いたり持ったりすることができます。このマップは、すべての公共の本棚を収集することを目的としています。近くで新しい本棚を見つけることができ、無料のOpenStreetMapアカウントを使えば、お気に入りの本棚を簡単に追加できます。"
+ "ja": "公共の本棚とは、本が保管されている小さな街角のキャビネット、箱、古い電話のトランク、その他の物のことです。誰でも本を置いたり持ったりすることができます。このマップは、すべての公共の本棚を収集することを目的としています。近くで新しい本棚を見つけることができ、無料のOpenStreetMapアカウントを使えば、お気に入りの本棚を簡単に追加できます。",
+ "zh_Hant": "公共書架是街邊箱子、盒子、舊的電話亭或是其他存放書本的物件,每一個人都能放置或拿取書本。這份地圖收集所有類型的書架,你可以探索你附近新的書架,同時也能用免費的開放街圖帳號來快速新增你最愛的書架。"
},
"icon": "./assets/themes/bookcases/bookcase.svg",
"socialImage": null,
diff --git a/assets/themes/campersites/campersites.json b/assets/themes/campersites/campersites.json
index b4410ec272..28e6712bf6 100644
--- a/assets/themes/campersites/campersites.json
+++ b/assets/themes/campersites/campersites.json
@@ -6,7 +6,8 @@
"it": "Aree camper",
"ru": "Кемпинги",
"ja": "キャンプサイト",
- "fr": "Campings"
+ "fr": "Campings",
+ "zh_Hant": "露營地點"
},
"shortDescription": {
"en": "Find sites to spend the night with your camper",
@@ -28,6 +29,7 @@
"ru",
"ja",
"fr",
+ "zh_Hant",
"id"
],
"maintainer": "joost schouppe",
@@ -336,7 +338,8 @@
"en": "Does this place have toilets?",
"it": "Questo luogo dispone di servizi igienici?",
"ru": "Здесь есть туалеты?",
- "ja": "ここにトイレはありますか?"
+ "ja": "ここにトイレはありますか?",
+ "zh_Hant": "這個地方有廁所嗎?"
},
"mappings": [
{
@@ -350,7 +353,8 @@
"id": "Tempat sini ada tandas",
"it": "Questo luogo ha i servizi igienici",
"ru": "В этом месте есть туалеты",
- "ja": "ここにはトイレがある"
+ "ja": "ここにはトイレがある",
+ "zh_Hant": "這個地方有廁所"
}
},
{
@@ -364,7 +368,8 @@
"id": "Tempat sini tiada tandas",
"it": "Questo luogo non ha i servizi igienici",
"ru": "В этом месте нет туалетов",
- "ja": "ここにはトイレがない"
+ "ja": "ここにはトイレがない",
+ "zh_Hant": "這個地方並沒有廁所"
}
}
]
@@ -662,7 +667,8 @@
"question": {
"en": "Can you dispose of chemical toilet waste here?",
"ru": "Можно ли здесь утилизировать отходы химических туалетов?",
- "ja": "携帯トイレのゴミはこちらで処分できますか?"
+ "ja": "携帯トイレのゴミはこちらで処分できますか?",
+ "zh_Hant": "你能在這裡丟棄廁所化學廢棄物嗎?"
},
"mappings": [
{
@@ -674,7 +680,8 @@
"then": {
"en": "You can dispose of chemical toilet waste here",
"ru": "Вы можете утилизировать отходы химических туалетов здесь",
- "ja": "携帯トイレのゴミはここで処分できます"
+ "ja": "携帯トイレのゴミはここで処分できます",
+ "zh_Hant": "你可以在這邊丟棄廁所化學廢棄物"
}
},
{
@@ -686,7 +693,8 @@
"then": {
"en": "You cannot dispose of chemical toilet waste here",
"ru": "Здесь нельзя утилизировать отходы химических туалетов",
- "ja": "ここでは携帯トイレの廃棄物を処分することはできません"
+ "ja": "ここでは携帯トイレの廃棄物を処分することはできません",
+ "zh_Hant": "你不能在這邊丟棄廁所化學廢棄物"
}
}
]
diff --git a/assets/themes/charging_stations/charging_stations.json b/assets/themes/charging_stations/charging_stations.json
index a841c6f332..f4faca4d8e 100644
--- a/assets/themes/charging_stations/charging_stations.json
+++ b/assets/themes/charging_stations/charging_stations.json
@@ -4,23 +4,27 @@
"en": "Charging stations",
"id": "Stasiun pengisian daya",
"ru": "Зарядные станции",
- "ja": "充電ステーション"
+ "ja": "充電ステーション",
+ "zh_Hant": "充電站"
},
"shortDescription": {
"en": "A worldwide map of charging stations",
"ru": "Карта зарядных станций по всему миру",
- "ja": "充電ステーションの世界地図"
+ "ja": "充電ステーションの世界地図",
+ "zh_Hant": "全世界的充電站地圖"
},
"description": {
"en": "On this open map, one can find and mark information about charging stations",
"ru": "На этой карте вы можно найти и отметить информацию о зарядных станциях",
- "ja": "このオープンマップでは充電ステーションに関する情報を見つけてマークすることができます"
+ "ja": "このオープンマップでは充電ステーションに関する情報を見つけてマークすることができます",
+ "zh_Hant": "在這份開放地圖上,你可以尋找與標示充電站的資訊"
},
"language": [
"en",
"id",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "",
"icon": "./assets/themes/charging_stations/logo.svg",
@@ -36,7 +40,8 @@
"name": {
"en": "Charging stations",
"ru": "Зарядные станции",
- "ja": "充電ステーション"
+ "ja": "充電ステーション",
+ "zh_Hant": "充電站"
},
"minzoom": 10,
"source": {
@@ -50,13 +55,15 @@
"render": {
"en": "Charging station",
"ru": "Зарядная станция",
- "ja": "充電ステーション"
+ "ja": "充電ステーション",
+ "zh_Hant": "充電站"
}
},
"description": {
"en": "A charging station",
"ru": "Зарядная станция",
- "ja": "充電ステーション"
+ "ja": "充電ステーション",
+ "zh_Hant": "充電站"
},
"tagRenderings": [
"images",
@@ -186,7 +193,8 @@
"question": {
"en": "When is this charging station opened?",
"ru": "В какое время работает эта зарядная станция?",
- "ja": "この充電ステーションはいつオープンしますか?"
+ "ja": "この充電ステーションはいつオープンしますか?",
+ "zh_Hant": "何時是充電站開放使用的時間?"
},
"mappings": [
{
@@ -200,12 +208,14 @@
"render": {
"en": "{network}",
"ru": "{network}",
- "ja": "{network}"
+ "ja": "{network}",
+ "zh_Hant": "{network}"
},
"question": {
"en": "Which is the network of this charging stationg?",
"ru": "К какой сети относится эта станция?",
- "ja": "この充電ステーションの運営チェーンはどこですか?"
+ "ja": "この充電ステーションの運営チェーンはどこですか?",
+ "zh_Hant": "充電站所屬的網路是?"
},
"freeform": {
"key": "network"
@@ -220,7 +230,8 @@
"then": {
"en": "Not part of a bigger network",
"ru": "Не является частью более крупной сети",
- "ja": "大規模な運営チェーンの一部ではない"
+ "ja": "大規模な運営チェーンの一部ではない",
+ "zh_Hant": "不屬於大型網路"
}
},
{
@@ -232,7 +243,8 @@
"then": {
"en": "AeroVironment",
"ru": "AeroVironment",
- "ja": "AeroVironment"
+ "ja": "AeroVironment",
+ "zh_Hant": "AeroVironment"
}
},
{
@@ -244,7 +256,8 @@
"then": {
"en": "Blink",
"ru": "Blink",
- "ja": "Blink"
+ "ja": "Blink",
+ "zh_Hant": "Blink"
}
},
{
@@ -256,7 +269,8 @@
"then": {
"en": "eVgo",
"ru": "eVgo",
- "ja": "eVgo"
+ "ja": "eVgo",
+ "zh_Hant": "eVgo"
}
}
]
diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json
index 1ef9d747c7..a7e2bacc8f 100644
--- a/assets/themes/climbing/climbing.json
+++ b/assets/themes/climbing/climbing.json
@@ -5,21 +5,24 @@
"de": "Offene Kletterkarte",
"en": "Open Climbing Map",
"ru": "Открытая карта скалолазания",
- "ja": "登山地図を開く"
+ "ja": "登山地図を開く",
+ "zh_Hant": "開放攀爬地圖"
},
"description": {
"nl": "Op deze kaart vind je verschillende klimgelegenheden, zoals klimzalen, bolderzalen en klimmen in de natuur",
"de": "Auf dieser Karte finden Sie verschiedene Klettermöglichkeiten wie Kletterhallen, Boulderhallen und Felsen in der Natur.",
"en": "On this map you will find various climbing opportunities such as climbing gyms, bouldering halls and rocks in nature.",
"ru": "На этой карте вы найдете различные возможности для скалолазания, такие как скалодромы, залы для боулдеринга и скалы на природе.",
- "ja": "この地図には、自然の中のクライミングジム、ボルダリングホール、岩など、さまざまなクライミングの機会があります。"
+ "ja": "この地図には、自然の中のクライミングジム、ボルダリングホール、岩など、さまざまなクライミングの機会があります。",
+ "zh_Hant": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。"
},
"descriptionTail": {
"nl": "De Open Klimkaart is oorspronkelijk gemaakt door Christian Neumann op kletterspots.de.",
"en": "The climbing map was originally made by Christian Neumann. Please get in touch if you have feedback or questions.The project uses data of the OpenStreetMap project.
",
"de": "kletterspots.de wird betrieben von Christian Neumann. Bitte melden Sie sich, wenn Sie Feedback oder Fragen haben.
Das Projekt nutzt Daten des OpenStreetMap Projekts und basiert auf der freien Software MapComplete.
",
"ru": "Создатель карты скалолазания — Christian Neumann. Пожалуйста, пишите если у вас есть отзыв или вопросы.Проект использует данные OpenStreetMap.
",
- "ja": "登山地図はもともと Christian Neumann によって作成されたものです。フィードバックや質問がありましたら、ご連絡ください。このプロジェクトでは、OpenStreetMapプロジェクトのデータを使用します。
"
+ "ja": "登山地図はもともと Christian Neumann によって作成されたものです。フィードバックや質問がありましたら、ご連絡ください。このプロジェクトでは、OpenStreetMapプロジェクトのデータを使用します。
",
+ "zh_Hant": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
"
},
"language": [
"nl",
@@ -27,6 +30,7 @@
"en",
"ru",
"ja",
+ "zh_Hant",
"ca",
"fr",
"id"
@@ -47,7 +51,8 @@
"nl": "Klimclub",
"en": "Climbing club",
"ru": "Клуб скалолазания",
- "ja": "クライミングクラブ"
+ "ja": "クライミングクラブ",
+ "zh_Hant": "攀岩社團"
},
"minzoom": 10,
"source": {
@@ -74,7 +79,8 @@
"nl": "Klimclub",
"de": "Kletterverein",
"ru": "Клуб скалолазания",
- "ja": "クライミングクラブ"
+ "ja": "クライミングクラブ",
+ "zh_Hant": "攀岩社團"
},
"mappings": [
{
@@ -83,7 +89,8 @@
"nl": "Klimorganisatie",
"en": "Climbing NGO",
"de": "Kletter-Organisation",
- "ja": "クライミングNGO"
+ "ja": "クライミングNGO",
+ "zh_Hant": "攀岩 NGO"
}
}
]
@@ -92,7 +99,8 @@
"de": "Ein Kletterverein oder eine Organisation",
"nl": "Een klimclub of organisatie",
"en": "A climbing club or organisations",
- "ja": "クライミングクラブや団体"
+ "ja": "クライミングクラブや団体",
+ "zh_Hant": "攀岩社團或組織"
},
"tagRenderings": [
{
@@ -104,7 +112,8 @@
"fr": "{name}",
"id": "{name}",
"ru": "{name}",
- "ja": "{name}"
+ "ja": "{name}",
+ "zh_Hant": "{name}"
},
"question": {
"en": "What is the name of this climbing club or NGO?",
diff --git a/assets/themes/cyclestreets/cyclestreets.json b/assets/themes/cyclestreets/cyclestreets.json
index 4cb1cdcd6d..ba40ba4f07 100644
--- a/assets/themes/cyclestreets/cyclestreets.json
+++ b/assets/themes/cyclestreets/cyclestreets.json
@@ -4,23 +4,27 @@
"title": {
"nl": "Fietsstraten",
"en": "Cyclestreets",
- "ja": "Cyclestreets"
+ "ja": "Cyclestreets",
+ "zh_Hant": "單車街道"
},
"shortDescription": {
"nl": "Een kaart met alle gekende fietsstraten",
"en": "A map of cyclestreets",
- "ja": "cyclestreetsの地図"
+ "ja": "cyclestreetsの地図",
+ "zh_Hant": "單車街道的地圖"
},
"description": {
"nl": "Een fietsstraat is een straat waar - automobilisten geen fietsers mogen inhalen
- Er een maximumsnelheid van 30km/u geldt
- Fietsers gemotoriseerde voortuigen links mogen inhalen
- Fietsers nog steeds voorrang aan rechts moeten verlenen - ook aan auto's en voetgangers op het zebrapad
Op deze open kaart kan je alle gekende fietsstraten zien en kan je ontbrekende fietsstraten aanduiden. Om de kaart aan te passen, moet je je aanmelden met OpenStreetMap en helemaal inzoomen tot straatniveau.",
"en": "A cyclestreet is is a street where motorized traffic is not allowed to overtake cyclists. They are signposted by a special traffic sign. Cyclestreets can be found in the Netherlands and Belgium, but also in Germany and France. ",
- "ja": "cyclestreetとは、自動車がサイクリストを追い越すことができない道です。専用の道路標識で表示されます。Cyclestreetsはオランダやベルギーにもありますが、ドイツやフランスにもあります。 "
+ "ja": "cyclestreetとは、自動車がサイクリストを追い越すことができない道です。専用の道路標識で表示されます。Cyclestreetsはオランダやベルギーにもありますが、ドイツやフランスにもあります。 ",
+ "zh_Hant": "單車街道是機動車輛受限制,只允許單車通行的道路。通常會有路標顯示特別的交通指標。單車街道通常在荷蘭、比利時看到,但德國與法國也有。 "
},
"icon": "./assets/themes/cyclestreets/F111.svg",
"language": [
"nl",
"en",
- "ja"
+ "ja",
+ "zh_Hant"
],
"startLat": 51.2095,
"startZoom": 14,
@@ -117,7 +121,8 @@
"name": {
"nl": "Fietsstraten",
"en": "Cyclestreets",
- "ja": "Cyclestreets"
+ "ja": "Cyclestreets",
+ "zh_Hant": "單車街道"
},
"minzoom": 7,
"source": {
@@ -154,7 +159,8 @@
"name": {
"nl": "Toekomstige fietsstraat",
"en": "Future cyclestreet",
- "ja": "将来のcyclestreet"
+ "ja": "将来のcyclestreet",
+ "zh_Hant": "將來的單車街道"
},
"description": {
"nl": "Deze straat wordt binnenkort een fietsstraat",
diff --git a/assets/themes/cyclofix/cyclofix.json b/assets/themes/cyclofix/cyclofix.json
index 8f5d240feb..77530e1ef8 100644
--- a/assets/themes/cyclofix/cyclofix.json
+++ b/assets/themes/cyclofix/cyclofix.json
@@ -7,7 +7,8 @@
"gl": "Cyclofix - Un mapa aberto para os ciclistas",
"de": "Cyclofix - eine offene Karte für Radfahrer",
"ru": "Cyclofix - открытая карта для велосипедистов",
- "ja": "Cyclofix - サイクリストのためのオープンマップ"
+ "ja": "Cyclofix - サイクリストのためのオープンマップ",
+ "zh_Hant": "單車修正 - 單車騎士的開放地圖"
},
"description": {
"en": "The goal of this map is to present cyclists with an easy-to-use solution to find the appropriate infrastructure for their needs.
You can track your precise location (mobile only) and select layers that are relevant for you in the bottom left corner. You can also use this tool to add or edit pins (points of interest) to the map and provide more data by answering the questions.
All changes you make will automatically be saved in the global database of OpenStreetMap and can be freely re-used by others.
For more information about the cyclofix project, go to cyclofix.osm.be.",
@@ -15,7 +16,8 @@
"fr": "Le but de cette carte est de présenter aux cyclistes une solution facile à utiliser pour trouver l'infrastructure appropriée à leurs besoins.
Vous pouvez suivre votre localisation précise (mobile uniquement) et sélectionner les couches qui vous concernent dans le coin inférieur gauche. Vous pouvez également utiliser cet outil pour ajouter ou modifier des épingles (points d'intérêt) sur la carte et fournir plus de données en répondant aux questions.
Toutes les modifications que vous apportez seront automatiquement enregistrées dans la base de données mondiale d'OpenStreetMap et peuvent être librement réutilisées par d'autres.
Pour plus d'informations sur le projet cyclofix, rendez-vous sur cyclofix.osm.be.",
"gl": "O obxectivo deste mapa é amosar ós ciclistas unha solución doada de empregar para atopar a infraestrutura axeitada para as súas necesidades.
Podes obter a túa localización precisa (só para dispositivos móbiles) e escoller as capas que sexan relevantes para ti na esquina inferior esquerda. Tamén podes empregar esta ferramenta para engadir ou editar puntos de interese ó mapa e fornecer máis datos respondendo as cuestións.
Todas as modificacións que fagas serán gardadas de xeito automático na base de datos global do OpenStreetMap e outros poderán reutilizalos libremente.
Para máis información sobre o proxecto cyclofix, vai a cyclofix.osm.be.",
"de": "Das Ziel dieser Karte ist es, den Radfahrern eine einfach zu benutzende Lösung zu präsentieren, um die geeignete Infrastruktur für ihre Bedürfnisse zu finden.
Sie können Ihren genauen Standort verfolgen (nur mobil) und in der linken unteren Ecke die für Sie relevanten Ebenen auswählen. Sie können dieses Tool auch verwenden, um Pins (Points of Interest/Interessante Orte) zur Karte hinzuzufügen oder zu bearbeiten und mehr Daten durch Beantwortung der Fragen bereitstellen.
Alle Änderungen, die Sie vornehmen, werden automatisch in der globalen Datenbank von OpenStreetMap gespeichert und können von anderen frei wiederverwendet werden.
Weitere Informationen über das Projekt Cyclofix finden Sie unter cyclofix.osm.be.",
- "ja": "このマップの目的は、サイクリストのニーズに適した施設を見つけるための使いやすいソリューションを提供することです。
正確な位置を追跡し(モバイルのみ)、左下コーナーで関連するレイヤを選択できます。このツールを使用して、マップにピン(注目点)を追加または編集したり、質問に答えることでより多くのデータを提供することもできます。
変更内容はすべてOpenStreetMapのグローバルデータベースに自動的に保存され、他のユーザーが自由に再利用できます。
cyclofixプロジェクトの詳細については、 cyclofix.osm.be を参照してください。"
+ "ja": "このマップの目的は、サイクリストのニーズに適した施設を見つけるための使いやすいソリューションを提供することです。
正確な位置を追跡し(モバイルのみ)、左下コーナーで関連するレイヤを選択できます。このツールを使用して、マップにピン(注目点)を追加または編集したり、質問に答えることでより多くのデータを提供することもできます。
変更内容はすべてOpenStreetMapのグローバルデータベースに自動的に保存され、他のユーザーが自由に再利用できます。
cyclofixプロジェクトの詳細については、 cyclofix.osm.be を参照してください。",
+ "zh_Hant": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。
你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。
所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。
你可以到 cyclofix.osm.be 閱讀更多資訊。"
},
"language": [
"en",
@@ -24,7 +26,8 @@
"gl",
"de",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "MapComplete",
"credits": "Originally created during Open Summer of Code by Pieter Fiers, Thibault Declercq, Pierre Barban, Joost Schouppe and Pieter Vander Vennet",
diff --git a/assets/themes/drinking_water/drinking_water.json b/assets/themes/drinking_water/drinking_water.json
index 32e93ef79f..edecd4f3ac 100644
--- a/assets/themes/drinking_water/drinking_water.json
+++ b/assets/themes/drinking_water/drinking_water.json
@@ -5,20 +5,23 @@
"nl": "Drinkwaterpunten",
"fr": "Eau potable",
"ru": "Питьевая вода",
- "ja": "飲料水"
+ "ja": "飲料水",
+ "zh_Hant": "飲用水"
},
"description": {
"en": "On this map, publicly accessible drinking water spots are shown and can be easily added",
"nl": "Op deze kaart staan publiek toegankelijke drinkwaterpunten en kan je makkelijk een nieuw drinkwaterpunt toevoegen",
"fr": "Cette carte affiche les points d'accès public à de l'eau potable, et permet d'en ajouter facilement",
- "ja": "この地図には、一般にアクセス可能な飲料水スポットが示されており、簡単に追加することができる"
+ "ja": "この地図には、一般にアクセス可能な飲料水スポットが示されており、簡単に追加することができる",
+ "zh_Hant": "在這份地圖上,公共可及的飲水點可以顯示出來,也能輕易的增加"
},
"language": [
"en",
"nl",
"fr",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "MapComplete",
"icon": "./assets/themes/drinking_water/logo.svg",
diff --git a/assets/themes/facadegardens/facadegardens.json b/assets/themes/facadegardens/facadegardens.json
index 25a2442dda..e48c2711f4 100644
--- a/assets/themes/facadegardens/facadegardens.json
+++ b/assets/themes/facadegardens/facadegardens.json
@@ -3,12 +3,14 @@
"title": {
"nl": "Straatgeveltuintjes",
"en": "Facade gardens",
- "ja": "ファサード庭園"
+ "ja": "ファサード庭園",
+ "zh_Hant": "立面花園"
},
"shortDescription": {
"nl": "Deze kaart toont geveltuintjes met foto's en bruikbare info over oriëntatie, zonlicht en planttypes.",
"en": "This map shows facade gardens with pictures and useful info about orientation, sunshine and plant types.",
- "ja": "このマップには、ファサード庭園が図とともに表示され、方向、日照、植物のタイプに関する有用な情報が示されます。"
+ "ja": "このマップには、ファサード庭園が図とともに表示され、方向、日照、植物のタイプに関する有用な情報が示されます。",
+ "zh_Hant": "這地圖顯示立面花園的照片以及其他像是方向、日照以及植栽種類等實用訊息。"
},
"description": {
"nl": "Ontharde voortuintjes, groene gevels en bomen ín de stad brengen naast rust ook een mooiere stad, een grotere biodiversiteit, een verkoelend effect en een betere luchtkwaliteit.
Klimaan VZW en 'Mechelen Klimaatneutraal' willen met het project Klim(t)aan je Gevel bestaande en nieuwe geveltuintjes in kaart brengen als voorbeeld voor mensen zelf een tuintje willen aanleggen of voor stadwandelaars die houden van de natuur.
Meer info over het project op klimaan.be.",
@@ -19,6 +21,7 @@
"nl",
"en",
"ja",
+ "zh_Hant",
"ru"
],
"maintainer": "joost schouppe; stla",
@@ -35,7 +38,8 @@
"name": {
"nl": "Geveltuintjes",
"en": "Facade gardens",
- "ja": "ファサード庭園"
+ "ja": "ファサード庭園",
+ "zh_Hant": "立面花園"
},
"minzoom": 12,
"source": {
@@ -50,13 +54,15 @@
"render": {
"nl": "Geveltuintje",
"en": "Facade garden",
- "ja": "ファサード庭園"
+ "ja": "ファサード庭園",
+ "zh_Hant": "立面花園"
}
},
"description": {
"nl": "Geveltuintjes",
"en": "Facade gardens",
- "ja": "ファサード庭園"
+ "ja": "ファサード庭園",
+ "zh_Hant": "立面花園"
},
"iconOverlays": [
{
diff --git a/assets/themes/hailhydrant/hailhydrant.json b/assets/themes/hailhydrant/hailhydrant.json
index 7eb833a700..babff046c4 100644
--- a/assets/themes/hailhydrant/hailhydrant.json
+++ b/assets/themes/hailhydrant/hailhydrant.json
@@ -2,19 +2,23 @@
"id": "hailhydrant",
"title": {
"en": "Hydrants, Extinguishers, Fire stations, and Ambulance stations.",
- "ja": "消火栓、消火器、消防署、救急ステーションです。"
+ "ja": "消火栓、消火器、消防署、救急ステーションです。",
+ "zh_Hant": "消防栓、滅火器、消防隊、以及急救站。"
},
"shortDescription": {
"en": "Map to show hydrants, extinguishers, fire stations, and ambulance stations.",
- "ja": "消火栓、消火器、消防署消火栓、消火器、消防署、および救急ステーションを表示します。"
+ "ja": "消火栓、消火器、消防署消火栓、消火器、消防署、および救急ステーションを表示します。",
+ "zh_Hant": "顯示消防栓、滅火器、消防隊與急救站的地圖。"
},
"description": {
"en": "On this map you can find and update hydrants, fire stations, ambulance stations, and extinguishers in your favorite neighborhoods. \n\nYou can track your precise location (mobile only) and select layers that are relevant for you in the bottom left corner. You can also use this tool to add or edit pins (points of interest) to the map and provide additional details by answering available questions. \n\nAll changes you make will automatically be saved in the global database of OpenStreetMap and can be freely re-used by others.",
- "ja": "このマップでは、お気に入りの近隣にある消火栓、消防署、救急ステーション、消火器を検索して更新できます。\n\n正確な位置を追跡し(モバイルのみ)、左下コーナーで関連するレイヤを選択できます。このツールを使用して、マップにピン(注視点)を追加または編集したり、利用可能な質問に答えることによって追加の詳細を提供することもできます。\n\nすべての変更は自動的にOpenStreetMapのグローバルデータベースに保存され、他のユーザが自由に再利用できます。"
+ "ja": "このマップでは、お気に入りの近隣にある消火栓、消防署、救急ステーション、消火器を検索して更新できます。\n\n正確な位置を追跡し(モバイルのみ)、左下コーナーで関連するレイヤを選択できます。このツールを使用して、マップにピン(注視点)を追加または編集したり、利用可能な質問に答えることによって追加の詳細を提供することもできます。\n\nすべての変更は自動的にOpenStreetMapのグローバルデータベースに保存され、他のユーザが自由に再利用できます。",
+ "zh_Hant": "在這份地圖上面你可以在你喜愛的社區尋找與更新消防栓、消防隊、急救站與滅火器。\n\n你可以追蹤確切位置 (只有行動版) 以及在左下角選擇與你相關的圖層。你也可以使用這工具新增或編輯地圖上的釘子 (興趣點),以及透過回答一些問題提供額外的資訊。\n\n所有你做出的變動都會自動存到開放街圖這個全球資料庫,而且能自由讓其他人取用。"
},
"language": [
"en",
"ja",
+ "zh_Hant",
"ru",
"id"
],
@@ -31,7 +35,8 @@
"id": "hydrants",
"name": {
"en": "Map of hydrants",
- "ja": "消火栓の地図"
+ "ja": "消火栓の地図",
+ "zh_Hant": "消防栓地圖"
},
"minzoom": 14,
"source": {
@@ -50,7 +55,8 @@
},
"description": {
"en": "Map layer to show fire hydrants.",
- "ja": "消火栓を表示するマップレイヤ。"
+ "ja": "消火栓を表示するマップレイヤ。",
+ "zh_Hant": "顯示消防栓的地圖圖層。"
},
"tagRenderings": [
{
@@ -282,7 +288,8 @@
},
"description": {
"en": "Map layer to show fire hydrants.",
- "ja": "消火栓を表示するマップレイヤ。"
+ "ja": "消火栓を表示するマップレイヤ。",
+ "zh_Hant": "顯示消防栓的地圖圖層。"
},
"tagRenderings": [
{
diff --git a/assets/themes/maps/maps.json b/assets/themes/maps/maps.json
index 9e0d832ba6..cc0d114e3f 100644
--- a/assets/themes/maps/maps.json
+++ b/assets/themes/maps/maps.json
@@ -4,25 +4,29 @@
"en": "A map of maps",
"nl": "Een kaart met Kaarten",
"fr": "Carte des cartes",
- "ja": "マップのマップ"
+ "ja": "マップのマップ",
+ "zh_Hant": "地圖的地圖"
},
"shortDescription": {
"en": "This theme shows all (touristic) maps that OpenStreetMap knows of",
"nl": "Een kaart met alle kaarten die OpenStreetMap kent",
"fr": "Cette carte affiche toutes les cartes (plans) mappés dans OpenStreetMap",
- "ja": "このテーマには、OpenStreetMapが知っているすべての(観光)マップが表示されます"
+ "ja": "このテーマには、OpenStreetMapが知っているすべての(観光)マップが表示されます",
+ "zh_Hant": "這份主題顯示所有已知的開放街圖上的 (旅遊) 地圖"
},
"description": {
"en": "On this map you can find all maps OpenStreetMap knows - typically a big map on an information board showing the area, city or region, e.g. a tourist map on the back of a billboard, a map of a nature reserve, a map of cycling networks in the region, ...)
If a map is missing, you can easily map this map on OpenStreetMap.",
"nl": "Op deze kaart kan je alle kaarten zien die OpenStreetMap kent.
Ontbreekt er een kaart, dan kan je die kaart hier ook gemakelijk aan deze kaart toevoegen.",
"fr": "Sur cette carte sont affichées les cartes (plans) mappées dans OpenStreetMap.
Si une carte est manquante, vous pouvez l'ajouer facilement avec un compte OpenStreetMap.",
- "ja": "このマップには、OpenStreetMapが知っているすべてのマップが表示されます。通常は、エリア、都市、または地域を示す情報ボード上の大きなマップが表示されます。たとえば、ビルボードの背面にある観光マップ、自然保護区のマップ、地域内のサイクリングネットワークのマップなどです。)
マップがない場合は、このマップをOpenStreetMapに簡単にマップできます。"
+ "ja": "このマップには、OpenStreetMapが知っているすべてのマップが表示されます。通常は、エリア、都市、または地域を示す情報ボード上の大きなマップが表示されます。たとえば、ビルボードの背面にある観光マップ、自然保護区のマップ、地域内のサイクリングネットワークのマップなどです。)
マップがない場合は、このマップをOpenStreetMapに簡単にマップできます。",
+ "zh_Hant": "在這份地圖你可以找到所在在開放街圖上已知的地圖 - 特別是顯示地區、城市、區域的資訊版面上的大型地圖,例如佈告欄背面的旅遊地圖,自然保護區的地圖,區域的單車網路地圖,...)
如果有缺少的地圖,你可以輕易在開放街圖上新增這地圖。"
},
"language": [
"en",
"nl",
"fr",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "MapComplete",
"icon": "./assets/themes/maps/logo.svg",
diff --git a/assets/themes/personalLayout/personalLayout.json b/assets/themes/personalLayout/personalLayout.json
index 0e0ece986f..b834fbdc3c 100644
--- a/assets/themes/personalLayout/personalLayout.json
+++ b/assets/themes/personalLayout/personalLayout.json
@@ -8,7 +8,8 @@
"gl": "Tema personalizado",
"fr": "Thème personnalisé",
"de": "Persönliches Thema",
- "ja": "個人的なテーマ"
+ "ja": "個人的なテーマ",
+ "zh_Hant": "個人化主題"
},
"description": {
"en": "Create a personal theme based on all the available layers of all themes",
@@ -18,7 +19,8 @@
"gl": "Crea un tema baseado en todas as capas dispoñíbeis de todos os temas",
"fr": "Crée un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes",
"de": "Erstellen Sie ein persönliches Thema auf der Grundlage aller verfügbaren Ebenen aller Themen",
- "ja": "すべてのテーマの使用可能なすべてのレイヤーに基づいて個人用テーマを作成する"
+ "ja": "すべてのテーマの使用可能なすべてのレイヤーに基づいて個人用テーマを作成する",
+ "zh_Hant": "從所有可用的主題圖層創建個人化主題"
},
"language": [
"en",
@@ -28,7 +30,8 @@
"gl",
"fr",
"de",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "MapComplete",
"icon": "./assets/svg/addSmall.svg",
diff --git a/assets/themes/playgrounds/playgrounds.json b/assets/themes/playgrounds/playgrounds.json
index a0e197019d..ce3a2b398b 100644
--- a/assets/themes/playgrounds/playgrounds.json
+++ b/assets/themes/playgrounds/playgrounds.json
@@ -4,25 +4,29 @@
"nl": "Speelplekken",
"en": "Playgrounds",
"fr": "Aires de jeux",
- "ja": "遊び場"
+ "ja": "遊び場",
+ "zh_Hant": "遊樂場"
},
"shortDescription": {
"nl": "Een kaart met speeltuinen",
"en": "A map with playgrounds",
"fr": "Une carte des aires de jeux",
- "ja": "遊び場のある地図"
+ "ja": "遊び場のある地図",
+ "zh_Hant": "遊樂場的地圖"
},
"description": {
"nl": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen",
"en": "On this map, you find playgrounds and can add more information",
"fr": "Cette carte affiche les aires de jeux et permet d'ajouter plus d'informations",
- "ja": "この地図では遊び場を見つけ情報を追加することができます"
+ "ja": "この地図では遊び場を見つけ情報を追加することができます",
+ "zh_Hant": "在這份地圖上,你可以尋找遊樂場以及其相關資訊"
},
"language": [
"nl",
"en",
"fr",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "",
"icon": "./assets/themes/playgrounds/playground.svg",
diff --git a/assets/themes/shops/shops.json b/assets/themes/shops/shops.json
index 78791abd6c..e50029a62b 100644
--- a/assets/themes/shops/shops.json
+++ b/assets/themes/shops/shops.json
@@ -3,7 +3,8 @@
"title": {
"en": "Open Shop Map",
"fr": "Carte des magasins",
- "ja": "オープン ショップ マップ"
+ "ja": "オープン ショップ マップ",
+ "zh_Hant": "開放商店地圖"
},
"shortDescription": {
"en": "An editable map with basic shop information",
@@ -13,12 +14,14 @@
"description": {
"en": "On this map, one can mark basic information about shops, add opening hours and phone numbers",
"fr": "Sur cette carte, vous pouvez ajouter des informations sur les magasins, horaires d'ouverture et numéro de téléphone",
- "ja": "この地図には店の基本情報を記入したり営業時間や電話番号を追加することができます"
+ "ja": "この地図には店の基本情報を記入したり営業時間や電話番号を追加することができます",
+ "zh_Hant": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話"
},
"language": [
"en",
"fr",
"ja",
+ "zh_Hant",
"ru",
"ca",
"id"
diff --git a/assets/themes/sport_pitches/sport_pitches.json b/assets/themes/sport_pitches/sport_pitches.json
index ed58210388..5d872c8dca 100644
--- a/assets/themes/sport_pitches/sport_pitches.json
+++ b/assets/themes/sport_pitches/sport_pitches.json
@@ -4,25 +4,29 @@
"nl": "Sportvelden",
"fr": "Terrains de sport",
"en": "Sport pitches",
- "ja": "スポーツ競技場"
+ "ja": "スポーツ競技場",
+ "zh_Hant": "運動場地"
},
"shortDescription": {
"nl": "Deze kaart toont sportvelden",
"fr": "Une carte montrant les terrains de sport",
"en": "A map showing sport pitches",
- "ja": "スポーツ競技場を示す地図"
+ "ja": "スポーツ競技場を示す地図",
+ "zh_Hant": "顯示運動場地的地圖"
},
"description": {
"nl": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen",
"fr": "Un terrain de sport est une zone faite pour pratiquer un sport",
"en": "A sport pitch is an area where sports are played",
- "ja": "スポーツ競技場は、スポーツが行われる場所です"
+ "ja": "スポーツ競技場は、スポーツが行われる場所です",
+ "zh_Hant": "運動場地是進行運動的地方"
},
"language": [
"nl",
"fr",
"en",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "",
"icon": "./assets/layers/sport_pitch/table_tennis.svg",
diff --git a/assets/themes/surveillance_cameras/surveillance_cameras.json b/assets/themes/surveillance_cameras/surveillance_cameras.json
index d6e4716478..dbe5b6540d 100644
--- a/assets/themes/surveillance_cameras/surveillance_cameras.json
+++ b/assets/themes/surveillance_cameras/surveillance_cameras.json
@@ -3,7 +3,8 @@
"title": {
"en": "Surveillance under Surveillance",
"nl": "Surveillance under Surveillance",
- "ja": "監視カメラの監視"
+ "ja": "監視カメラの監視",
+ "zh_Hant": "被監視的監視器"
},
"shortDescription": {
"en": "Surveillance cameras and other means of surveillance",
@@ -18,7 +19,8 @@
"language": [
"en",
"nl",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "",
"icon": "./assets/themes/surveillance_cameras/logo.svg",
diff --git a/assets/themes/toilets/toilets.json b/assets/themes/toilets/toilets.json
index 465b0f53f0..a0bb3600af 100644
--- a/assets/themes/toilets/toilets.json
+++ b/assets/themes/toilets/toilets.json
@@ -6,7 +6,8 @@
"fr": "Carte des WC et toilettes publiques",
"nl": "Open Toilettenkaart",
"ru": "Открытая карта туалетов",
- "ja": "オープントイレマップ"
+ "ja": "オープントイレマップ",
+ "zh_Hant": "開放廁所地圖"
},
"description": {
"en": "A map of public toilets",
@@ -14,7 +15,8 @@
"fr": "Carte affichant les WC et toilettes publiques",
"nl": "Een kaart met openbare toiletten",
"ru": "Карта общественных туалетов",
- "ja": "公衆トイレの地図"
+ "ja": "公衆トイレの地図",
+ "zh_Hant": "公共廁所的地圖"
},
"maintainer": "MapComplete",
"version": "2020-08-29",
@@ -24,7 +26,8 @@
"fr",
"nl",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"startZoom": 12,
"startLat": 51.2095,
diff --git a/assets/themes/trees/trees.json b/assets/themes/trees/trees.json
index 77f96012bc..daf26fe5b7 100644
--- a/assets/themes/trees/trees.json
+++ b/assets/themes/trees/trees.json
@@ -6,21 +6,24 @@
"fr": "Arbres",
"it": "Alberi",
"ru": "Деревья",
- "ja": "樹木"
+ "ja": "樹木",
+ "zh_Hant": "樹木"
},
"shortDescription": {
"nl": "Breng bomen in kaart",
"en": "Map all the trees",
"fr": "Carte des arbres",
"it": "Mappa tutti gli alberi",
- "ja": "すべての樹木をマッピングする"
+ "ja": "すべての樹木をマッピングする",
+ "zh_Hant": "所有樹木的地圖"
},
"description": {
"nl": "Breng bomen in kaart!",
"en": "Map all the trees!",
"fr": "Cartographions tous les arbres !",
"it": "Mappa tutti gli alberi!",
- "ja": "すべての樹木をマッピングします!"
+ "ja": "すべての樹木をマッピングします!",
+ "zh_Hant": "繪製所有樹木!"
},
"language": [
"nl",
@@ -28,7 +31,8 @@
"fr",
"it",
"ru",
- "ja"
+ "ja",
+ "zh_Hant"
],
"maintainer": "Midgard",
"icon": "./assets/themes/trees/logo.svg",
diff --git a/langs/layers/de.json b/langs/layers/de.json
index deb4376a21..9c68f819e9 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -80,8 +80,8 @@
}
},
"6": {
- "render": "Die Bank wurde zuletzt am {survey:date} überprüft.",
- "question": "Wann wurde diese Bank zuletzt überprüft?"
+ "question": "Wann wurde diese Bank zuletzt überprüft?",
+ "render": "Die Bank wurde zuletzt am {survey:date} überprüft."
}
},
"presets": {
@@ -113,6 +113,65 @@
}
}
},
+ "bicycle_library": {
+ "description": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können",
+ "tagRenderings": {
+ "6": {
+ "question": "Wie viel kostet das Ausleihen eines Fahrrads?",
+ "render": "Das Ausleihen eines Fahrrads kostet {charge}",
+ "mappings": {
+ "0": {
+ "then": "Das Ausleihen eines Fahrrads ist kostenlos"
+ },
+ "1": {
+ "then": "Das Ausleihen eines Fahrrads kostet 20€ pro Jahr und 20€ Gebühr"
+ }
+ }
+ },
+ "7": {
+ "question": "Wer kann hier Fahrräder ausleihen?",
+ "mappings": {
+ "0": {
+ "then": "Fahrräder für Kinder verfügbar"
+ },
+ "1": {
+ "then": "Fahrräder für Erwachsene verfügbar"
+ },
+ "2": {
+ "then": "Fahrräder für Behinderte verfügbar"
+ }
+ }
+ }
+ }
+ },
+ "bicycle_tube_vending_machine": {
+ "name": "Fahrradschlauch-Automat",
+ "title": {
+ "render": "Fahrradschlauch-Automat"
+ },
+ "presets": {
+ "0": {
+ "title": "Fahrradschlauch-Automat"
+ }
+ },
+ "tagRenderings": {
+ "1": {
+ "question": "Ist dieser Automat noch in Betrieb?",
+ "render": "Der Betriebszustand ist {operational_status",
+ "mappings": {
+ "0": {
+ "then": "Dieser Automat funktioniert"
+ },
+ "1": {
+ "then": "Dieser Automat ist kaputt"
+ },
+ "2": {
+ "then": "Dieser Automat ist geschlossen"
+ }
+ }
+ }
+ }
+ },
"bike_cafe": {
"name": "Fahrrad-Café",
"title": {
@@ -177,6 +236,35 @@
}
}
},
+ "bike_cleaning": {
+ "name": "Fahrrad-Reinigungsdienst",
+ "title": {
+ "render": "Fahrrad-Reinigungsdienst",
+ "mappings": {
+ "0": {
+ "then": "Fahrrad-Reinigungsdienst{name}"
+ }
+ }
+ },
+ "presets": {
+ "0": {
+ "title": "Fahrrad-Reinigungsdienst"
+ }
+ }
+ },
+ "bike_monitoring_station": {
+ "title": {
+ "render": "Fahrradzählstation",
+ "mappings": {
+ "0": {
+ "then": "Fahrradzählstation {name}"
+ },
+ "1": {
+ "then": "Fahrradzählstation {ref}"
+ }
+ }
+ }
+ },
"bike_parking": {
"name": "Fahrrad-Parkplätze",
"presets": {
@@ -210,11 +298,27 @@
"5": {
"then": "Schuppen
"
},
- "7": {
- "then": "Ein Bereich auf dem Boden, der für das Abstellen von Fahrrädern gekennzeichnet ist"
- },
"6": {
"then": "Poller
"
+ },
+ "7": {
+ "then": "Ein Bereich auf dem Boden, der für das Abstellen von Fahrrädern gekennzeichnet ist"
+ }
+ }
+ },
+ "2": {
+ "mappings": {
+ "0": {
+ "then": "Tiefgarage"
+ },
+ "1": {
+ "then": "Tiefgarage"
+ },
+ "2": {
+ "then": "Ebenerdiges Parken"
+ },
+ "3": {
+ "then": "Ebenerdiges Parken"
}
}
},
@@ -234,13 +338,13 @@
"render": "Platz für {capacity} Fahrräder"
},
"5": {
+ "question": "Wer kann diesen Fahrradparplatz nutzen?",
"render": "{access}",
"mappings": {
"0": {
"then": "Öffentlich zugänglich"
}
- },
- "question": "Wer kann diesen Fahrradparplatz nutzen?"
+ }
},
"6": {
"question": "Gibt es auf diesem Fahrrad-Parkplatz Plätze für Lastenfahrräder?",
@@ -259,22 +363,6 @@
"7": {
"question": "Wie viele Lastenfahrräder passen auf diesen Fahrrad-Parkplatz?",
"render": "Auf diesen Parkplatz passen {capacity:cargo_bike} Lastenfahrräder"
- },
- "2": {
- "mappings": {
- "3": {
- "then": "Ebenerdiges Parken"
- },
- "2": {
- "then": "Ebenerdiges Parken"
- },
- "1": {
- "then": "Tiefgarage"
- },
- "0": {
- "then": "Tiefgarage"
- }
- }
}
}
},
@@ -315,6 +403,21 @@
}
}
},
+ "2": {
+ "question": "Wer wartet diese Fahrradpumpe?",
+ "render": "Gewartet von {operator}"
+ },
+ "3": {
+ "question": "Wann ist diese Fahrradreparaturstelle geöffnet?",
+ "mappings": {
+ "0": {
+ "then": "Immer geöffnet"
+ },
+ "1": {
+ "then": "Immer geöffnet"
+ }
+ }
+ },
"4": {
"question": "Verfügt diese Fahrrad-Reparaturstation über Spezialwerkzeug zur Reparatur von Fahrradketten?",
"mappings": {
@@ -387,21 +490,6 @@
"then": "Es gibt ein Manometer, aber es ist kaputt"
}
}
- },
- "3": {
- "mappings": {
- "1": {
- "then": "Immer geöffnet"
- },
- "0": {
- "then": "Immer geöffnet"
- }
- },
- "question": "Wann ist diese Fahrradreparaturstelle geöffnet?"
- },
- "2": {
- "render": "Gewartet von {operator}",
- "question": "Wer wartet diese Fahrradpumpe?"
}
},
"presets": {
@@ -423,6 +511,12 @@
"title": {
"render": "Fahrradwerkstatt/geschäft",
"mappings": {
+ "0": {
+ "then": "Sportartikelgeschäft {name}"
+ },
+ "2": {
+ "then": "Fahrradverleih{name}"
+ },
"3": {
"then": "Fahrradwerkstatt {name}"
},
@@ -431,12 +525,6 @@
},
"5": {
"then": "Fahrradwerkstatt/geschäft {name}"
- },
- "2": {
- "then": "Fahrradverleih{name}"
- },
- "0": {
- "then": "Sportartikelgeschäft {name}"
}
}
},
@@ -445,6 +533,15 @@
"question": "Wie heißt dieser Fahrradladen?",
"render": "Dieses Fahrradgeschäft heißt {name}"
},
+ "3": {
+ "question": "Was ist die Webseite von {name}?"
+ },
+ "4": {
+ "question": "Wie lautet die Telefonnummer von {name}?"
+ },
+ "5": {
+ "question": "Wie lautet die E-Mail-Adresse von {name}?"
+ },
"9": {
"question": "Verkauft dieser Laden Fahrräder?",
"mappings": {
@@ -524,27 +621,18 @@
}
},
"15": {
+ "question": "Werden hier Fahrräder gewaschen?",
"mappings": {
- "2": {
- "then": "Dieser Laden bietet keine Fahrradreinigung an"
+ "0": {
+ "then": "Dieses Geschäft reinigt Fahrräder"
},
"1": {
"then": "Dieser Laden hat eine Anlage, in der man Fahrräder selbst reinigen kann"
},
- "0": {
- "then": "Dieses Geschäft reinigt Fahrräder"
+ "2": {
+ "then": "Dieser Laden bietet keine Fahrradreinigung an"
}
- },
- "question": "Werden hier Fahrräder gewaschen?"
- },
- "5": {
- "question": "Wie lautet die E-Mail-Adresse von {name}?"
- },
- "4": {
- "question": "Wie lautet die Telefonnummer von {name}?"
- },
- "3": {
- "question": "Was ist die Webseite von {name}?"
+ }
}
},
"presets": {
@@ -604,91 +692,91 @@
}
}
},
+ "3": {
+ "render": "Es gibt keine Informationen über den Gerätetyp",
+ "mappings": {
+ "0": {
+ "then": "Dies ist ein manueller Defibrillator für den professionellen Einsatz"
+ }
+ }
+ },
"4": {
"question": "In welchem Stockwerk befindet sich dieser Defibrillator?",
"render": "Dieser Defibrallator befindet sich im {level}. Stockwerk",
"mappings": {
- "1": {
- "then": "Dieser Defibrillator befindet sich in der ersten Etage"
- },
"0": {
"then": "Dieser Defibrillator befindet sich im Erdgeschoss"
+ },
+ "1": {
+ "then": "Dieser Defibrillator befindet sich in der ersten Etage"
}
}
},
"5": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (in der lokalen Sprache)",
- "render": "Zusätzliche Informationen über den Standort (in der Landessprache):
{defibrillator:location}"
+ "render": "Zusätzliche Informationen über den Standort (in der Landessprache):
{defibrillator:location}",
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (in der lokalen Sprache)"
},
"6": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Englisch)",
- "render": "Zusätzliche Informationen über den Standort (auf Englisch):
{defibrillator:location}"
+ "render": "Zusätzliche Informationen über den Standort (auf Englisch):
{defibrillator:location}",
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Englisch)"
},
"7": {
- "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Französisch)",
- "render": "Zusätzliche Informationen zum Standort (auf Französisch):
{defibrillator:Standort:fr}"
+ "render": "Zusätzliche Informationen zum Standort (auf Französisch):
{defibrillator:Standort:fr}",
+ "question": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Französisch)"
},
- "12": {
+ "8": {
+ "question": "Ist dieser Defibrillator mit einem Rollstuhl erreichbar?",
"mappings": {
"0": {
- "then": "24/7 geöffnet (auch an Feiertagen)"
+ "then": "Dieser Defibrillator ist speziell für Rollstuhlfahrer angepasst"
+ },
+ "1": {
+ "then": "Dieser Defibrillator ist mit einem Rollstuhl leicht zu erreichen"
+ },
+ "2": {
+ "then": "Es ist möglich, den Defibrillator mit einem Rollstuhl zu erreichen, aber es ist nicht einfach"
+ },
+ "3": {
+ "then": "Dieser Defibrillator ist mit einem Rollstuhl nicht erreichbar"
}
- },
- "question": "Zu welchen Zeiten ist dieser Defibrillator verfügbar?"
+ }
+ },
+ "9": {
+ "render": "Offizielle Identifikationsnummer des Geräts: {ref}",
+ "question": "Wie lautet die offizielle Identifikationsnummer des Geräts? (falls am Gerät sichtbar)"
+ },
+ "10": {
+ "render": "E-Mail für Fragen zu diesem Defibrillator: {email}",
+ "question": "Wie lautet die E-Mail für Fragen zu diesem Defibrillator?"
},
"11": {
"render": "Telefonnummer für Fragen zu diesem Defibrillator: {phone}",
"question": "Wie lautet die Telefonnummer für Fragen zu diesem Defibrillator?"
},
- "10": {
- "question": "Wie lautet die E-Mail für Fragen zu diesem Defibrillator?",
- "render": "E-Mail für Fragen zu diesem Defibrillator: {email}"
- },
- "9": {
- "question": "Wie lautet die offizielle Identifikationsnummer des Geräts? (falls am Gerät sichtbar)",
- "render": "Offizielle Identifikationsnummer des Geräts: {ref}"
- },
- "8": {
- "mappings": {
- "3": {
- "then": "Dieser Defibrillator ist mit einem Rollstuhl nicht erreichbar"
- },
- "2": {
- "then": "Es ist möglich, den Defibrillator mit einem Rollstuhl zu erreichen, aber es ist nicht einfach"
- },
- "1": {
- "then": "Dieser Defibrillator ist mit einem Rollstuhl leicht zu erreichen"
- },
- "0": {
- "then": "Dieser Defibrillator ist speziell für Rollstuhlfahrer angepasst"
- }
- },
- "question": "Ist dieser Defibrillator mit einem Rollstuhl erreichbar?"
- },
- "3": {
+ "12": {
+ "question": "Zu welchen Zeiten ist dieser Defibrillator verfügbar?",
"mappings": {
"0": {
- "then": "Dies ist ein manueller Defibrillator für den professionellen Einsatz"
+ "then": "24/7 geöffnet (auch an Feiertagen)"
}
- },
- "render": "Es gibt keine Informationen über den Gerätetyp"
+ }
},
- "15": {
- "question": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlasse eine Notiz an OpenStreetMap-Experten)",
- "render": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}"
+ "13": {
+ "render": "Zusätzliche Informationen: {description}",
+ "question": "Gibt es nützliche Informationen für Benutzer, die Sie oben nicht beschreiben konnten? (leer lassen, wenn nein)"
},
"14": {
+ "question": "Wann wurde dieser Defibrillator zuletzt überprüft?",
+ "render": "Dieser Defibrillator wurde zuletzt am {survey:date} überprüft",
"mappings": {
"0": {
"then": "Heute überprüft!"
}
- },
- "render": "Dieser Defibrillator wurde zuletzt am {survey:date} überprüft",
- "question": "Wann wurde dieser Defibrillator zuletzt überprüft?"
+ }
},
- "13": {
- "question": "Gibt es nützliche Informationen für Benutzer, die Sie oben nicht beschreiben konnten? (leer lassen, wenn nein)",
- "render": "Zusätzliche Informationen: {description}"
+ "15": {
+ "render": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}",
+ "question": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlasse eine Notiz an OpenStreetMap-Experten)"
}
}
},
@@ -703,6 +791,10 @@
}
},
"tagRenderings": {
+ "1": {
+ "question": "Ist diese Trinkwasserstelle noch in Betrieb?",
+ "render": "Der Betriebsstatus ist {operational_status"
+ },
"2": {
"question": "Wie einfach ist es, Wasserflaschen zu füllen?",
"mappings": {
@@ -716,10 +808,6 @@
},
"3": {
"render": "Ein weiterer Trinkwasserbrunnen befindet sich in {_closest_other_drinking_water_distance} Meter"
- },
- "1": {
- "render": "Der Betriebsstatus ist {operational_status",
- "question": "Ist diese Trinkwasserstelle noch in Betrieb?"
}
}
},
@@ -761,132 +849,211 @@
}
}
},
+ "information_board": {
+ "name": "Informationstafeln",
+ "title": {
+ "render": "Informationstafel"
+ },
+ "presets": {
+ "0": {
+ "title": "Informationstafel"
+ }
+ }
+ },
+ "map": {
+ "name": "Karten",
+ "title": {
+ "render": "Karte"
+ },
+ "tagRenderings": {
+ "1": {
+ "question": "Auf welchen Daten basiert diese Karte?",
+ "mappings": {
+ "0": {
+ "then": "Diese Karte basiert auf OpenStreetMap"
+ }
+ },
+ "render": "Diese Karte basiert auf {map_source}"
+ },
+ "2": {
+ "question": "Ist die OpenStreetMap-Attribution vorhanden?",
+ "mappings": {
+ "0": {
+ "then": "OpenStreetMap ist eindeutig attributiert, einschließlich der ODBL-Lizenz"
+ },
+ "1": {
+ "then": "OpenStreetMap ist eindeutig attributiert, aber die Lizenz wird nicht erwähnt"
+ },
+ "2": {
+ "then": "OpenStreetMap wurde nicht erwähnt, aber jemand hat einen OpenStreetMap-Aufkleber darauf geklebt"
+ },
+ "3": {
+ "then": "Es gibt überhaupt keine Namensnennung"
+ },
+ "4": {
+ "then": "Es gibt überhaupt keine Namensnennung"
+ }
+ }
+ }
+ },
+ "presets": {
+ "0": {
+ "title": "Karte",
+ "description": "Fehlende Karte hinzufügen"
+ }
+ }
+ },
"nature_reserve": {
"tagRenderings": {
+ "5": {
+ "question": "Sind Hunde in diesem Naturschutzgebiet erlaubt?",
+ "mappings": {
+ "0": {
+ "then": "Hunde müssen angeleint sein"
+ },
+ "1": {
+ "then": "Hunde sind nicht erlaubt"
+ },
+ "2": {
+ "then": "Hunde dürfen frei herumlaufen"
+ }
+ }
+ },
+ "6": {
+ "question": "Auf welcher Webseite kann man mehr Informationen über dieses Naturschutzgebiet finden?"
+ },
"8": {
"render": "{email}"
},
"9": {
"render": "{phone}"
- },
- "6": {
- "question": "Auf welcher Webseite kann man mehr Informationen über dieses Naturschutzgebiet finden?"
- },
- "5": {
+ }
+ }
+ },
+ "picnic_table": {
+ "name": "Picknick-Tische",
+ "title": {
+ "render": "Picknick-Tisch"
+ },
+ "tagRenderings": {
+ "0": {
+ "question": "Aus welchem Material besteht dieser Picknicktisch?",
+ "render": "Dieser Picknicktisch besteht aus {material}",
"mappings": {
- "2": {
- "then": "Hunde dürfen frei herumlaufen"
+ "0": {
+ "then": "Dies ist ein Picknicktisch aus Holz"
},
"1": {
- "then": "Hunde sind nicht erlaubt"
- },
- "0": {
- "then": "Hunde müssen angeleint sein"
+ "then": "Dies ist ein Picknicktisch aus Beton"
}
- },
- "question": "Sind Hunde in diesem Naturschutzgebiet erlaubt?"
+ }
+ }
+ },
+ "presets": {
+ "0": {
+ "title": "Picknicktisch"
}
}
},
"playground": {
+ "name": "Spielplätze",
+ "description": "Spielplätze",
+ "title": {
+ "render": "Spielplatz",
+ "mappings": {
+ "0": {
+ "then": "Spielplatz {name}"
+ }
+ }
+ },
"tagRenderings": {
+ "1": {
+ "question": "Welche Oberfläche hat dieser Spielplatz?
Wenn es mehrere gibt, wähle die am häufigsten vorkommende aus",
+ "render": "Die Oberfläche ist {surface}",
+ "mappings": {
+ "0": {
+ "then": "Die Oberfläche ist Gras"
+ },
+ "1": {
+ "then": "Die Oberfläche ist Sand"
+ },
+ "2": {
+ "then": "Die Oberfläche besteht aus Holzschnitzeln"
+ },
+ "3": {
+ "then": "Die Oberfläche ist Pflastersteine"
+ },
+ "4": {
+ "then": "Die Oberfläche ist Asphalt"
+ },
+ "5": {
+ "then": "Die Oberfläche ist Beton"
+ },
+ "6": {
+ "then": "Die Oberfläche ist unbefestigt"
+ },
+ "7": {
+ "then": "Die Oberfläche ist befestigt"
+ }
+ }
+ },
+ "2": {
+ "question": "Ist dieser Spielplatz nachts beleuchtet?",
+ "mappings": {
+ "0": {
+ "then": "Dieser Spielplatz ist nachts beleuchtet"
+ },
+ "1": {
+ "then": "Dieser Spielplatz ist nachts nicht beleuchtet"
+ }
+ }
+ },
+ "5": {
+ "question": "Wer betreibt diesen Spielplatz?",
+ "render": "Betrieben von {operator}"
+ },
+ "6": {
+ "question": "Ist dieser Spielplatz für die Allgemeinheit zugänglich?",
+ "mappings": {
+ "0": {
+ "then": "Zugänglich für die Allgemeinheit"
+ },
+ "1": {
+ "then": "Zugänglich für die Allgemeinheit"
+ },
+ "2": {
+ "then": "Nur für Kunden des Betreibers zugänglich"
+ },
+ "3": {
+ "then": "Nur für Schüler der Schule zugänglich"
+ },
+ "4": {
+ "then": "Nicht zugänglich"
+ }
+ }
+ },
"7": {
- "render": "{email}",
- "question": "Wie lautet die E-Mail Adresse des Spielplatzbetreuers?"
+ "question": "Wie lautet die E-Mail Adresse des Spielplatzbetreuers?",
+ "render": "{email}"
},
"8": {
"render": "{phone}"
},
"9": {
+ "question": "Ist dieser Spielplatz für Rollstuhlfahrer zugänglich?",
"mappings": {
- "2": {
- "then": "Nicht zugänglich für Rollstuhlfahrer"
+ "0": {
+ "then": "Vollständig zugänglich für Rollstuhlfahrer"
},
"1": {
"then": "Eingeschränkte Zugänglichkeit für Rollstuhlfahrer"
},
- "0": {
- "then": "Vollständig zugänglich für Rollstuhlfahrer"
- }
- },
- "question": "Ist dieser Spielplatz für Rollstuhlfahrer zugänglich?"
- },
- "6": {
- "mappings": {
- "4": {
- "then": "Nicht zugänglich"
- },
- "3": {
- "then": "Nur für Schüler der Schule zugänglich"
- },
"2": {
- "then": "Nur für Kunden des Betreibers zugänglich"
- },
- "1": {
- "then": "Zugänglich für die Allgemeinheit"
- },
- "0": {
- "then": "Zugänglich für die Allgemeinheit"
+ "then": "Nicht zugänglich für Rollstuhlfahrer"
}
- },
- "question": "Ist dieser Spielplatz für die Allgemeinheit zugänglich?"
- },
- "5": {
- "render": "Betrieben von {operator}",
- "question": "Wer betreibt diesen Spielplatz?"
- },
- "2": {
- "mappings": {
- "1": {
- "then": "Dieser Spielplatz ist nachts nicht beleuchtet"
- },
- "0": {
- "then": "Dieser Spielplatz ist nachts beleuchtet"
- }
- },
- "question": "Ist dieser Spielplatz nachts beleuchtet?"
- },
- "1": {
- "mappings": {
- "7": {
- "then": "Die Oberfläche ist befestigt"
- },
- "6": {
- "then": "Die Oberfläche ist unbefestigt"
- },
- "5": {
- "then": "Die Oberfläche ist Beton"
- },
- "4": {
- "then": "Die Oberfläche ist Asphalt"
- },
- "3": {
- "then": "Die Oberfläche ist Pflastersteine"
- },
- "2": {
- "then": "Die Oberfläche besteht aus Holzschnitzeln"
- },
- "1": {
- "then": "Die Oberfläche ist Sand"
- },
- "0": {
- "then": "Die Oberfläche ist Gras"
- }
- },
- "render": "Die Oberfläche ist {surface}",
- "question": "Welche Oberfläche hat dieser Spielplatz?
Wenn es mehrere gibt, wähle die am häufigsten vorkommende aus"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Spielplatz {name}"
}
- },
- "render": "Spielplatz"
- },
- "description": "Spielplätze",
- "name": "Spielplätze"
+ }
+ }
},
"public_bookcase": {
"name": "Bücherschränke",
@@ -1125,172 +1292,5 @@
"question": "Möchten Sie eine Beschreibung hinzufügen?"
}
}
- },
- "bike_monitoring_station": {
- "title": {
- "mappings": {
- "1": {
- "then": "Fahrradzählstation {ref}"
- },
- "0": {
- "then": "Fahrradzählstation {name}"
- }
- },
- "render": "Fahrradzählstation"
- }
- },
- "bike_cleaning": {
- "presets": {
- "0": {
- "title": "Fahrrad-Reinigungsdienst"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Fahrrad-Reinigungsdienst{name}"
- }
- },
- "render": "Fahrrad-Reinigungsdienst"
- },
- "name": "Fahrrad-Reinigungsdienst"
- },
- "bicycle_tube_vending_machine": {
- "tagRenderings": {
- "1": {
- "mappings": {
- "2": {
- "then": "Dieser Automat ist geschlossen"
- },
- "1": {
- "then": "Dieser Automat ist kaputt"
- },
- "0": {
- "then": "Dieser Automat funktioniert"
- }
- },
- "render": "Der Betriebszustand ist {operational_status",
- "question": "Ist dieser Automat noch in Betrieb?"
- }
- },
- "presets": {
- "0": {
- "title": "Fahrradschlauch-Automat"
- }
- },
- "title": {
- "render": "Fahrradschlauch-Automat"
- },
- "name": "Fahrradschlauch-Automat"
- },
- "bicycle_library": {
- "tagRenderings": {
- "7": {
- "mappings": {
- "2": {
- "then": "Fahrräder für Behinderte verfügbar"
- },
- "1": {
- "then": "Fahrräder für Erwachsene verfügbar"
- },
- "0": {
- "then": "Fahrräder für Kinder verfügbar"
- }
- },
- "question": "Wer kann hier Fahrräder ausleihen?"
- },
- "6": {
- "mappings": {
- "1": {
- "then": "Das Ausleihen eines Fahrrads kostet 20€ pro Jahr und 20€ Gebühr"
- },
- "0": {
- "then": "Das Ausleihen eines Fahrrads ist kostenlos"
- }
- },
- "render": "Das Ausleihen eines Fahrrads kostet {charge}",
- "question": "Wie viel kostet das Ausleihen eines Fahrrads?"
- }
- },
- "description": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können"
- },
- "picnic_table": {
- "presets": {
- "0": {
- "title": "Picknicktisch"
- }
- },
- "tagRenderings": {
- "0": {
- "mappings": {
- "1": {
- "then": "Dies ist ein Picknicktisch aus Beton"
- },
- "0": {
- "then": "Dies ist ein Picknicktisch aus Holz"
- }
- },
- "render": "Dieser Picknicktisch besteht aus {material}",
- "question": "Aus welchem Material besteht dieser Picknicktisch?"
- }
- },
- "title": {
- "render": "Picknick-Tisch"
- },
- "name": "Picknick-Tische"
- },
- "map": {
- "presets": {
- "0": {
- "description": "Fehlende Karte hinzufügen",
- "title": "Karte"
- }
- },
- "tagRenderings": {
- "2": {
- "mappings": {
- "4": {
- "then": "Es gibt überhaupt keine Namensnennung"
- },
- "3": {
- "then": "Es gibt überhaupt keine Namensnennung"
- },
- "2": {
- "then": "OpenStreetMap wurde nicht erwähnt, aber jemand hat einen OpenStreetMap-Aufkleber darauf geklebt"
- },
- "1": {
- "then": "OpenStreetMap ist eindeutig attributiert, aber die Lizenz wird nicht erwähnt"
- },
- "0": {
- "then": "OpenStreetMap ist eindeutig attributiert, einschließlich der ODBL-Lizenz"
- }
- },
- "question": "Ist die OpenStreetMap-Attribution vorhanden?"
- },
- "1": {
- "render": "Diese Karte basiert auf {map_source}",
- "mappings": {
- "0": {
- "then": "Diese Karte basiert auf OpenStreetMap"
- }
- },
- "question": "Auf welchen Daten basiert diese Karte?"
- }
- },
- "title": {
- "render": "Karte"
- },
- "name": "Karten"
- },
- "information_board": {
- "presets": {
- "0": {
- "title": "Informationstafel"
- }
- },
- "title": {
- "render": "Informationstafel"
- },
- "name": "Informationstafeln"
}
-}
+}
\ No newline at end of file
diff --git a/langs/layers/ru.json b/langs/layers/ru.json
index e521b86662..e54a786a5b 100644
--- a/langs/layers/ru.json
+++ b/langs/layers/ru.json
@@ -80,8 +80,8 @@
}
},
"6": {
- "render": "Последний раз обследование этой скамейки проводилось {survey:date}",
- "question": "Когда последний раз обследовали эту скамейку?"
+ "question": "Когда последний раз обследовали эту скамейку?",
+ "render": "Последний раз обследование этой скамейки проводилось {survey:date}"
}
},
"presets": {
@@ -114,7 +114,16 @@
}
},
"bicycle_library": {
+ "name": "Велосипедная библиотека",
+ "title": {
+ "render": "Велосипедная библиотека"
+ },
+ "description": "Учреждение, где велосипед может быть арендован на более длительный срок",
"tagRenderings": {
+ "1": {
+ "question": "Как называется эта велосипедная библиотека?",
+ "render": "Эта велосипедная библиотека называется {name}"
+ },
"6": {
"question": "Сколько стоит прокат велосипеда?",
"render": "Стоимость аренды велосипеда {charge}",
@@ -125,40 +134,41 @@
}
},
"7": {
+ "question": "Кто здесь может арендовать велосипед?",
"mappings": {
- "2": {
- "then": "Доступны велосипеды для людей с ограниченными возможностями"
+ "0": {
+ "then": "Доступны детские велосипеды"
},
"1": {
"then": "Доступны велосипеды для взрослых"
},
- "0": {
- "then": "Доступны детские велосипеды"
+ "2": {
+ "then": "Доступны велосипеды для людей с ограниченными возможностями"
}
- },
- "question": "Кто здесь может арендовать велосипед?"
- },
- "1": {
- "render": "Эта велосипедная библиотека называется {name}",
- "question": "Как называется эта велосипедная библиотека?"
+ }
}
},
"presets": {
"0": {
- "description": "В велосипедной библиотеке есть велосипеды для аренды",
- "title": "Велосипедная библиотека"
+ "title": "Велосипедная библиотека",
+ "description": "В велосипедной библиотеке есть велосипеды для аренды"
}
- },
- "description": "Учреждение, где велосипед может быть арендован на более длительный срок",
- "title": {
- "render": "Велосипедная библиотека"
- },
- "name": "Велосипедная библиотека"
+ }
},
"bicycle_tube_vending_machine": {
+ "name": "Торговый автомат для велосипедистов",
+ "title": {
+ "render": "Торговый автомат для велосипедистов"
+ },
+ "presets": {
+ "0": {
+ "title": "Торговый автомат для велосипедистов"
+ }
+ },
"tagRenderings": {
"1": {
"question": "Этот торговый автомат все еще работает?",
+ "render": "Рабочий статус: {operational_status",
"mappings": {
"0": {
"then": "Этот торговый автомат работает"
@@ -169,22 +179,28 @@
"2": {
"then": "Этот торговый автомат закрыт"
}
- },
- "render": "Рабочий статус: {operational_status"
+ }
}
- },
- "presets": {
- "0": {
- "title": "Торговый автомат для велосипедистов"
- }
- },
- "title": {
- "render": "Торговый автомат для велосипедистов"
- },
- "name": "Торговый автомат для велосипедистов"
+ }
},
"bike_cafe": {
+ "name": "Велосипедное кафе",
+ "title": {
+ "render": "Велосипедное кафе",
+ "mappings": {
+ "0": {
+ "then": "Велосипедное кафе {name}"
+ }
+ }
+ },
"tagRenderings": {
+ "1": {
+ "question": "Как называется это байк-кафе?",
+ "render": "Это велосипедное кафе называется {name}"
+ },
+ "2": {
+ "question": "Есть ли в этом велосипедном кафе велосипедный насос для всеобщего использования?"
+ },
"5": {
"question": "Какой сайт у {name}?"
},
@@ -193,24 +209,8 @@
},
"7": {
"question": "Какой адрес электронной почты у {name}?"
- },
- "1": {
- "render": "Это велосипедное кафе называется {name}",
- "question": "Как называется это байк-кафе?"
- },
- "2": {
- "question": "Есть ли в этом велосипедном кафе велосипедный насос для всеобщего использования?"
}
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Велосипедное кафе {name}"
- }
- },
- "render": "Велосипедное кафе"
- },
- "name": "Велосипедное кафе"
+ }
},
"bike_parking": {
"tagRenderings": {
@@ -754,4 +754,4 @@
}
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/layers/zh_Hant.json b/langs/layers/zh_Hant.json
index f0e76d8dd6..2cedca48f1 100644
--- a/langs/layers/zh_Hant.json
+++ b/langs/layers/zh_Hant.json
@@ -24,39 +24,39 @@
"3": {
"render": "材質:{material}"
},
- "6": {
- "question": "上一次探察長椅是什麼時候?"
- },
"5": {
+ "render": "顏色:{colour}",
+ "question": "這個長椅是什麼顏色的?",
"mappings": {
- "7": {
- "then": "顏色:黃色"
- },
- "6": {
- "then": "顏色:藍色"
- },
- "5": {
- "then": "顏色:黑色"
- },
- "4": {
- "then": "顏色:紅色"
- },
- "3": {
- "then": "顏色:白色"
- },
- "2": {
- "then": "顏色:灰色"
+ "0": {
+ "then": "顏色:棕色"
},
"1": {
"then": "顏色:綠色"
},
- "0": {
- "then": "顏色:棕色"
+ "2": {
+ "then": "顏色:灰色"
+ },
+ "3": {
+ "then": "顏色:白色"
+ },
+ "4": {
+ "then": "顏色:紅色"
+ },
+ "5": {
+ "then": "顏色:黑色"
+ },
+ "6": {
+ "then": "顏色:藍色"
+ },
+ "7": {
+ "then": "顏色:黃色"
}
- },
- "question": "這個長椅是什麼顏色的?",
- "render": "顏色:{colour}"
+ }
+ },
+ "6": {
+ "question": "上一次探察長椅是什麼時候?"
}
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index b41692a9eb..c1d001d81d 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -70,207 +70,207 @@
"question": "創造這個的藝術家是誰?",
"render": "{artist_name} 創作"
},
- "4": {
- "render": "與 {wikidata}對應",
- "question": "這個藝術品有那個對應的 wikidata 項目?"
- },
"3": {
- "render": "這個網站有更多資訊",
- "question": "在那個網站能夠找到更多藝術品的資訊?"
+ "question": "在那個網站能夠找到更多藝術品的資訊?",
+ "render": "這個網站有更多資訊"
+ },
+ "4": {
+ "question": "這個藝術品有那個對應的 wikidata 項目?",
+ "render": "與 {wikidata}對應"
+ }
+ }
+ }
+ }
+ },
+ "benches": {
+ "title": "長椅",
+ "shortDescription": "長椅的地圖"
+ },
+ "bicyclelib": {
+ "title": "單車圖書館",
+ "description": "單車圖書館是指每年支付小額費用,然後可以租用單車的地方。最有名的單車圖書館案例是給小孩的,能夠讓長大的小孩用目前的單車換成比較大的單車"
+ },
+ "bookcases": {
+ "title": "開放書架地圖",
+ "description": "公共書架是街邊箱子、盒子、舊的電話亭或是其他存放書本的物件,每一個人都能放置或拿取書本。這份地圖收集所有類型的書架,你可以探索你附近新的書架,同時也能用免費的開放街圖帳號來快速新增你最愛的書架。"
+ },
+ "campersite": {
+ "title": "露營地點",
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "8": {
+ "question": "這個地方有廁所嗎?",
+ "mappings": {
+ "0": {
+ "then": "這個地方有廁所"
+ },
+ "1": {
+ "then": "這個地方並沒有廁所"
+ }
+ }
+ }
+ }
+ },
+ "1": {
+ "tagRenderings": {
+ "5": {
+ "question": "你能在這裡丟棄廁所化學廢棄物嗎?",
+ "mappings": {
+ "0": {
+ "then": "你可以在這邊丟棄廁所化學廢棄物"
+ },
+ "1": {
+ "then": "你不能在這邊丟棄廁所化學廢棄物"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "charging_stations": {
+ "title": "充電站",
+ "shortDescription": "全世界的充電站地圖",
+ "description": "在這份開放地圖上,你可以尋找與標示充電站的資訊",
+ "layers": {
+ "0": {
+ "name": "充電站",
+ "title": {
+ "render": "充電站"
+ },
+ "description": "充電站",
+ "tagRenderings": {
+ "5": {
+ "question": "何時是充電站開放使用的時間?"
+ },
+ "6": {
+ "render": "{network}",
+ "question": "充電站所屬的網路是?",
+ "mappings": {
+ "0": {
+ "then": "不屬於大型網路"
+ },
+ "1": {
+ "then": "AeroVironment"
+ },
+ "2": {
+ "then": "Blink"
+ },
+ "3": {
+ "then": "eVgo"
+ }
+ }
}
}
}
}
},
"climbing": {
- "descriptionTail": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
",
- "description": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。",
"title": "開放攀爬地圖",
+ "description": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。",
+ "descriptionTail": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
",
"layers": {
"0": {
"name": "攀岩社團",
- "tagRenderings": {
- "0": {
- "render": "{name}"
- }
- },
- "description": "攀岩社團或組織",
"title": {
+ "render": "攀岩社團",
"mappings": {
"0": {
"then": "攀岩 NGO"
}
- },
- "render": "攀岩社團"
+ }
+ },
+ "description": "攀岩社團或組織",
+ "tagRenderings": {
+ "0": {
+ "render": "{name}"
+ }
}
}
}
},
- "trees": {
- "description": "繪製所有樹木!",
- "shortDescription": "所有樹木的地圖",
- "title": "樹木"
- },
- "drinking_water": {
- "description": "在這份地圖上,公共可及的飲水點可以顯示出來,也能輕易的增加",
- "title": "飲用水"
- },
- "maps": {
- "description": "在這份地圖你可以找到所在在開放街圖上已知的地圖 - 特別是顯示地區、城市、區域的資訊版面上的大型地圖,例如佈告欄背面的旅遊地圖,自然保護區的地圖,區域的單車網路地圖,...)
如果有缺少的地圖,你可以輕易在開放街圖上新增這地圖。",
- "shortDescription": "這份主題顯示所有已知的開放街圖上的 (旅遊) 地圖",
- "title": "地圖的地圖"
- },
- "charging_stations": {
- "layers": {
- "0": {
- "tagRenderings": {
- "6": {
- "mappings": {
- "3": {
- "then": "eVgo"
- },
- "2": {
- "then": "Blink"
- },
- "1": {
- "then": "AeroVironment"
- },
- "0": {
- "then": "不屬於大型網路"
- }
- },
- "question": "充電站所屬的網路是?",
- "render": "{network}"
- },
- "5": {
- "question": "何時是充電站開放使用的時間?"
- }
- },
- "description": "充電站",
- "title": {
- "render": "充電站"
- },
- "name": "充電站"
- }
- },
- "description": "在這份開放地圖上,你可以尋找與標示充電站的資訊",
- "shortDescription": "全世界的充電站地圖",
- "title": "充電站"
- },
- "bicyclelib": {
- "description": "單車圖書館是指每年支付小額費用,然後可以租用單車的地方。最有名的單車圖書館案例是給小孩的,能夠讓長大的小孩用目前的單車換成比較大的單車",
- "title": "單車圖書館"
- },
- "toilets": {
- "description": "公共廁所的地圖",
- "title": "開放廁所地圖"
- },
- "campersite": {
- "layers": {
- "1": {
- "tagRenderings": {
- "5": {
- "mappings": {
- "1": {
- "then": "你不能在這邊丟棄廁所化學廢棄物"
- },
- "0": {
- "then": "你可以在這邊丟棄廁所化學廢棄物"
- }
- },
- "question": "你能在這裡丟棄廁所化學廢棄物嗎?"
- }
- }
- },
- "0": {
- "tagRenderings": {
- "8": {
- "mappings": {
- "1": {
- "then": "這個地方並沒有廁所"
- },
- "0": {
- "then": "這個地方有廁所"
- }
- },
- "question": "這個地方有廁所嗎?"
- }
- }
- }
- },
- "title": "露營地點"
- },
- "cyclofix": {
- "description": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。
你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。
所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。
你可以到 cyclofix.osm.be 閱讀更多資訊。",
- "title": "單車修正 - 單車騎士的開放地圖"
- },
- "hailhydrant": {
- "layers": {
- "1": {
- "description": "顯示消防栓的地圖圖層。"
- },
- "0": {
- "description": "顯示消防栓的地圖圖層。",
- "name": "消防栓地圖"
- }
- },
- "description": "在這份地圖上面你可以在你喜愛的社區尋找與更新消防栓、消防隊、急救站與滅火器。\n\n你可以追蹤確切位置 (只有行動版) 以及在左下角選擇與你相關的圖層。你也可以使用這工具新增或編輯地圖上的釘子 (興趣點),以及透過回答一些問題提供額外的資訊。\n\n所有你做出的變動都會自動存到開放街圖這個全球資料庫,而且能自由讓其他人取用。",
- "shortDescription": "顯示消防栓、滅火器、消防隊與急救站的地圖。",
- "title": "消防栓、滅火器、消防隊、以及急救站。"
- },
- "bookcases": {
- "description": "公共書架是街邊箱子、盒子、舊的電話亭或是其他存放書本的物件,每一個人都能放置或拿取書本。這份地圖收集所有類型的書架,你可以探索你附近新的書架,同時也能用免費的開放街圖帳號來快速新增你最愛的書架。",
- "title": "開放書架地圖"
- },
- "personal": {
- "description": "從所有可用的主題圖層創建個人化主題",
- "title": "個人化主題"
- },
- "benches": {
- "shortDescription": "長椅的地圖",
- "title": "長椅"
- },
"fietsstraten": {
+ "title": "單車街道",
+ "shortDescription": "單車街道的地圖",
+ "description": "單車街道是機動車輛受限制,只允許單車通行的道路。通常會有路標顯示特別的交通指標。單車街道通常在荷蘭、比利時看到,但德國與法國也有。 ",
"layers": {
- "1": {
- "name": "將來的單車街道"
- },
"0": {
"name": "單車街道"
+ },
+ "1": {
+ "name": "將來的單車街道"
}
- },
- "description": "單車街道是機動車輛受限制,只允許單車通行的道路。通常會有路標顯示特別的交通指標。單車街道通常在荷蘭、比利時看到,但德國與法國也有。 ",
- "shortDescription": "單車街道的地圖",
- "title": "單車街道"
+ }
+ },
+ "cyclofix": {
+ "title": "單車修正 - 單車騎士的開放地圖",
+ "description": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。
你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。
所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。
你可以到 cyclofix.osm.be 閱讀更多資訊。"
+ },
+ "drinking_water": {
+ "title": "飲用水",
+ "description": "在這份地圖上,公共可及的飲水點可以顯示出來,也能輕易的增加"
},
"facadegardens": {
+ "title": "立面花園",
+ "shortDescription": "這地圖顯示立面花園的照片以及其他像是方向、日照以及植栽種類等實用訊息。",
"layers": {
"0": {
- "description": "立面花園",
+ "name": "立面花園",
"title": {
"render": "立面花園"
},
- "name": "立面花園"
+ "description": "立面花園"
}
- },
- "shortDescription": "這地圖顯示立面花園的照片以及其他像是方向、日照以及植栽種類等實用訊息。",
- "title": "立面花園"
+ }
+ },
+ "hailhydrant": {
+ "title": "消防栓、滅火器、消防隊、以及急救站。",
+ "shortDescription": "顯示消防栓、滅火器、消防隊與急救站的地圖。",
+ "description": "在這份地圖上面你可以在你喜愛的社區尋找與更新消防栓、消防隊、急救站與滅火器。\n\n你可以追蹤確切位置 (只有行動版) 以及在左下角選擇與你相關的圖層。你也可以使用這工具新增或編輯地圖上的釘子 (興趣點),以及透過回答一些問題提供額外的資訊。\n\n所有你做出的變動都會自動存到開放街圖這個全球資料庫,而且能自由讓其他人取用。",
+ "layers": {
+ "0": {
+ "name": "消防栓地圖",
+ "description": "顯示消防栓的地圖圖層。"
+ },
+ "1": {
+ "description": "顯示消防栓的地圖圖層。"
+ }
+ }
+ },
+ "maps": {
+ "title": "地圖的地圖",
+ "shortDescription": "這份主題顯示所有已知的開放街圖上的 (旅遊) 地圖",
+ "description": "在這份地圖你可以找到所在在開放街圖上已知的地圖 - 特別是顯示地區、城市、區域的資訊版面上的大型地圖,例如佈告欄背面的旅遊地圖,自然保護區的地圖,區域的單車網路地圖,...)
如果有缺少的地圖,你可以輕易在開放街圖上新增這地圖。"
+ },
+ "personal": {
+ "title": "個人化主題",
+ "description": "從所有可用的主題圖層創建個人化主題"
},
"playgrounds": {
- "description": "在這份地圖上,你可以尋找遊樂場以及其相關資訊",
+ "title": "遊樂場",
"shortDescription": "遊樂場的地圖",
- "title": "遊樂場"
+ "description": "在這份地圖上,你可以尋找遊樂場以及其相關資訊"
},
"shops": {
- "description": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話",
- "title": "開放商店地圖"
+ "title": "開放商店地圖",
+ "description": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話"
},
"sport_pitches": {
- "description": "運動場地是進行運動的地方",
+ "title": "運動場地",
"shortDescription": "顯示運動場地的地圖",
- "title": "運動場地"
+ "description": "運動場地是進行運動的地方"
},
"surveillance": {
"title": "被監視的監視器"
+ },
+ "toilets": {
+ "title": "開放廁所地圖",
+ "description": "公共廁所的地圖"
+ },
+ "trees": {
+ "title": "樹木",
+ "shortDescription": "所有樹木的地圖",
+ "description": "繪製所有樹木!"
}
-}
+}
\ No newline at end of file
From d86801ebed6fb739e92f0c751f7447f7f78c08ec Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 17:00:54 +0200
Subject: [PATCH 28/67] Documentation update
---
Docs/URL_Parameters.md | 32 +++++++++++++++++++-------------
State.ts | 4 ++--
2 files changed, 21 insertions(+), 15 deletions(-)
diff --git a/Docs/URL_Parameters.md b/Docs/URL_Parameters.md
index 0d71e0b712..fa0e0aaead 100644
--- a/Docs/URL_Parameters.md
+++ b/Docs/URL_Parameters.md
@@ -18,11 +18,11 @@ the URL-parameters are stated in the part between the `?` and the `#`. There are
Finally, the URL-hash is the part after the `#`. It is `node/1234` in this case.
-
-custom-css
+custom-css (broken)
------------
If specified, the custom css from the given link will be loaded additionaly
+
test
------
If true, 'dryrun' mode is activated. The app will behave as normal, except that changes to OSM will be printed onto the console instead of actually uploaded to osm.org
@@ -34,7 +34,6 @@ The layout to load into MapComplete
userlayout
------------
-
If not 'false', a custom (non-official) theme is loaded. This custom layout can be done in multiple ways:
- The hash of the URL contains a base64-encoded .json-file containing the theme definition
@@ -42,8 +41,6 @@ If not 'false', a custom (non-official) theme is loaded. This custom layout can
- The parameter itself is an URL, in which case that URL will be downloaded. It should point to a .json of a theme
The default value is _false_
-The default value is _false_
-
layer-control-toggle
----------------------
Whether or not the layer control is shown
@@ -57,17 +54,17 @@ The default value is _0_
z
---
The initial/current zoom level
-The default value is set by the loaded theme
+The default value is set by the theme
lat
-----
The initial/current latitude
-The default value is set by the loaded theme
+The default value is set by the theme
lon
-----
The initial/current longitude of the app
-The default value is set by the loaded theme
+The default value is set by the theme
fs-userbadge
--------------
@@ -114,11 +111,21 @@ fs-geolocation
Disables/Enables the geolocation button
The default value is _true_
+fs-all-questions
+------------------
+Always show all questions
+The default value is _false_
+
debug
-------
If true, shows some extra debugging help such as all the available tags on every object
The default value is _false_
+backend
+---------
+The OSM backend to use - can be used to redirect mapcomplete to the testing backend when using osm-test
+The default value is _osm_
+
oauth_token
-------------
Used to complete the login
@@ -127,10 +134,9 @@ No default value set
background
------------
The id of the background layer to start with
-The default value is set by the loaded theme
+The default value is _OSM_ (overridden by the theme)
-layer-
------------------
-Wether or not layer with __ is shown
+layer-
+--------------
+Wether or not layer with layer-id is shown
The default value is _true_
-
diff --git a/State.ts b/State.ts
index 2a17a48ad9..45c72fbcfb 100644
--- a/State.ts
+++ b/State.ts
@@ -210,8 +210,8 @@ export default class State {
"If true, shows some extra debugging help such as all the available tags on every object")
.map(str => str === "true", [], b => "" + b)
- this.featureSwitchApiURL = QueryParameters.GetQueryParameter("backend","https://openstreetmap.org",
- "The OSM backend to use - can be used to redirect mapcomplete to a testing backend or e.g. openHistoricalMap")
+ this.featureSwitchApiURL = QueryParameters.GetQueryParameter("backend","osm",
+ "The OSM backend to use - can be used to redirect mapcomplete to the testing backend when using 'osm-test'")
}
From ebe3a8138aa8b0a6ed8b84ebdddd221fefaa4eb5 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 17:13:25 +0200
Subject: [PATCH 29/67] Fix url
---
Logic/Osm/OsmConnection.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Logic/Osm/OsmConnection.ts b/Logic/Osm/OsmConnection.ts
index 1bba8d7d52..a732becd95 100644
--- a/Logic/Osm/OsmConnection.ts
+++ b/Logic/Osm/OsmConnection.ts
@@ -27,7 +27,7 @@ export class OsmConnection {
"osm": {
oauth_consumer_key: 'hivV7ec2o49Two8g9h8Is1VIiVOgxQ1iYexCbvem',
oauth_secret: 'wDBRTCem0vxD7txrg1y6p5r8nvmz8tAhET7zDASI',
- url: "https://openstreetmap.org"
+ url: "https://www.openstreetmap.org"
},
"osm-test": {
oauth_consumer_key: 'Zgr7EoKb93uwPv2EOFkIlf3n9NLwj5wbyfjZMhz2',
From de4c31902e260e194c20ad39f716a2b6de372178 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 17:23:05 +0200
Subject: [PATCH 30/67] Remove debug logging
---
Logic/Osm/OsmPreferences.ts | 2 --
1 file changed, 2 deletions(-)
diff --git a/Logic/Osm/OsmPreferences.ts b/Logic/Osm/OsmPreferences.ts
index e802b8abb0..bff50eae60 100644
--- a/Logic/Osm/OsmPreferences.ts
+++ b/Logic/Osm/OsmPreferences.ts
@@ -96,13 +96,11 @@ export class OsmPreferences {
}
public GetPreference(key: string, prefix: string = "mapcomplete-"): UIEventSource {
- console.warn(key)
key = prefix + key;
key = key.replace(/[:\\\/"' {}.%]/g, '')
if (key.length >= 255) {
throw "Preferences: key length to big";
}
- console.warn(key)
if (this.preferenceSources[key] !== undefined) {
return this.preferenceSources[key];
}
From 9a13df913029e432b0ee4f5ea9cec6352161d9ad Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 18:54:29 +0200
Subject: [PATCH 31/67] Fix warning
---
UI/i18n/Translation.ts | 3 +++
1 file changed, 3 insertions(+)
diff --git a/UI/i18n/Translation.ts b/UI/i18n/Translation.ts
index 5bdfa82495..673a5efbd9 100644
--- a/UI/i18n/Translation.ts
+++ b/UI/i18n/Translation.ts
@@ -58,6 +58,9 @@ export class Translation extends UIElement {
if (translationsKey === "#") {
continue;
}
+ if(!this.translations.hasOwnProperty(translationsKey)){
+ continue
+ }
langs.push(translationsKey)
}
return langs;
From a8a4b797fdee3b212549f2f25319696b82900b31 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Tue, 8 Jun 2021 19:08:19 +0200
Subject: [PATCH 32/67] Add translation files for shared questions
---
assets/tagRenderings/questions.json | 8 +++++---
langs/shared-questions/de.json | 11 +++++++++++
langs/shared-questions/en.json | 20 ++++++++++++++++++++
langs/shared-questions/fr.json | 20 ++++++++++++++++++++
langs/shared-questions/gl.json | 7 +++++++
langs/shared-questions/nl.json | 20 ++++++++++++++++++++
scripts/generateTranslations.ts | 20 ++++++++++++++------
7 files changed, 97 insertions(+), 9 deletions(-)
create mode 100644 langs/shared-questions/de.json
create mode 100644 langs/shared-questions/en.json
create mode 100644 langs/shared-questions/fr.json
create mode 100644 langs/shared-questions/gl.json
create mode 100644 langs/shared-questions/nl.json
diff --git a/assets/tagRenderings/questions.json b/assets/tagRenderings/questions.json
index 2bd63ab005..634c82e7dd 100644
--- a/assets/tagRenderings/questions.json
+++ b/assets/tagRenderings/questions.json
@@ -71,12 +71,14 @@
"question": {
"en": "What are the opening hours of {name}?",
"fr": "Quelles sont les horaires d'ouverture de {name}?",
- "de": "Was sind die Öffnungszeiten von {name}?"
+ "de": "Was sind die Öffnungszeiten von {name}?",
+ "nl": "Wat zijn de openingsuren van {name}?"
},
"render": {
"de": "Öffnungszeiten
{opening_hours_table(opening_hours)}",
"fr": "Horaires d'ouverture
{opening_hours_table(opening_hours)}",
- "en": "Opening hours
{opening_hours_table(opening_hours)}"
+ "en": "Opening hours
{opening_hours_table(opening_hours)}",
+ "nl": "Openingsuren
{opening_hours_table(opening_hours)}"
},
"freeform": {
"key": "opening_hours",
@@ -92,4 +94,4 @@
"#": "Prints all the tags",
"render": "{all_tags()}"
}
-}
+}
\ No newline at end of file
diff --git a/langs/shared-questions/de.json b/langs/shared-questions/de.json
new file mode 100644
index 0000000000..ff0b97af86
--- /dev/null
+++ b/langs/shared-questions/de.json
@@ -0,0 +1,11 @@
+{
+ "undefined": {
+ "phone": {
+ "question": "Was ist die Telefonnummer von {name}?"
+ },
+ "opening_hours": {
+ "question": "Was sind die Öffnungszeiten von {name}?",
+ "render": "Öffnungszeiten
{opening_hours_table(opening_hours)}"
+ }
+ }
+}
\ No newline at end of file
diff --git a/langs/shared-questions/en.json b/langs/shared-questions/en.json
new file mode 100644
index 0000000000..a8b983d9e6
--- /dev/null
+++ b/langs/shared-questions/en.json
@@ -0,0 +1,20 @@
+{
+ "undefined": {
+ "phone": {
+ "question": "What is the phone number of {name}?"
+ },
+ "email": {
+ "question": "What is the email address of {name}?"
+ },
+ "website": {
+ "question": "What is the website of {name}?"
+ },
+ "description": {
+ "question": "Is there still something relevant you couldn't give in the previous questions? Add it here.
Don't repeat already stated facts"
+ },
+ "opening_hours": {
+ "question": "What are the opening hours of {name}?",
+ "render": "Opening hours
{opening_hours_table(opening_hours)}"
+ }
+ }
+}
\ No newline at end of file
diff --git a/langs/shared-questions/fr.json b/langs/shared-questions/fr.json
new file mode 100644
index 0000000000..4d440d34f7
--- /dev/null
+++ b/langs/shared-questions/fr.json
@@ -0,0 +1,20 @@
+{
+ "undefined": {
+ "phone": {
+ "question": "Quel est le numéro de téléphone de {name} ?"
+ },
+ "email": {
+ "question": "Quelle est l'adresse courriel de {name} ?"
+ },
+ "website": {
+ "question": "Quel est le site internet de {name}?"
+ },
+ "description": {
+ "question": "Y a-t-il quelque chose de pertinent que vous n'avez pas pu donner à la dernière question ? Ajoutez-le ici.
Ne répétez pas des réponses déjà données"
+ },
+ "opening_hours": {
+ "question": "Quelles sont les horaires d'ouverture de {name}?",
+ "render": "Horaires d'ouverture
{opening_hours_table(opening_hours)}"
+ }
+ }
+}
\ No newline at end of file
diff --git a/langs/shared-questions/gl.json b/langs/shared-questions/gl.json
new file mode 100644
index 0000000000..2d52f7307a
--- /dev/null
+++ b/langs/shared-questions/gl.json
@@ -0,0 +1,7 @@
+{
+ "undefined": {
+ "website": {
+ "question": "Cal é a páxina web de {name}?"
+ }
+ }
+}
\ No newline at end of file
diff --git a/langs/shared-questions/nl.json b/langs/shared-questions/nl.json
new file mode 100644
index 0000000000..2e50d77b1e
--- /dev/null
+++ b/langs/shared-questions/nl.json
@@ -0,0 +1,20 @@
+{
+ "undefined": {
+ "phone": {
+ "question": "Wat is het telefoonnummer van {name}?"
+ },
+ "email": {
+ "question": "Wat is het email-adres van {name}?"
+ },
+ "website": {
+ "question": "Wat is de website van {name}?"
+ },
+ "description": {
+ "question": "Zijn er extra zaken die je niet in de bovenstaande vragen kwijt kon? Zet deze in de descriptionHerhaal geen antwoorden die je reeds gaf"
+ },
+ "opening_hours": {
+ "question": "Wat zijn de openingsuren van {name}?",
+ "render": "Openingsuren
{opening_hours_table(opening_hours)}"
+ }
+ }
+}
\ No newline at end of file
diff --git a/scripts/generateTranslations.ts b/scripts/generateTranslations.ts
index 48ac1302de..a490bff545 100644
--- a/scripts/generateTranslations.ts
+++ b/scripts/generateTranslations.ts
@@ -232,8 +232,8 @@ function MergeTranslation(source: any, target: any, language: string, context: s
targetV[language] = sourceV;
let was = ""
- if(targetV[language] !== undefined && targetV[language] !== sourceV){
- was = " (overwritten "+targetV[language]+")"
+ if (targetV[language] !== undefined && targetV[language] !== sourceV) {
+ was = " (overwritten " + targetV[language] + ")"
}
console.log(" + ", context + "." + language, "-->", sourceV, was)
continue
@@ -307,17 +307,25 @@ function mergeThemeTranslations() {
const themeOverwritesWeblate = process.argv[2] === "--ignore-weblate"
-
-if(!themeOverwritesWeblate) {
+const questionsPath = "assets/tagRenderings/questions.json"
+const questionsParsed = JSON.parse(readFileSync(questionsPath, 'utf8'))
+if (!themeOverwritesWeblate) {
mergeLayerTranslations();
mergeThemeTranslations();
-}else{
+
+ mergeLayerTranslation(questionsParsed, questionsPath, loadTranslationFilesFrom("shared-questions"))
+ writeFileSync(questionsPath, JSON.stringify(questionsParsed, null, " "))
+
+} else {
console.log("Ignore weblate")
}
generateTranslationsObjectFrom(ScriptUtils.getLayerFiles(), "layers")
generateTranslationsObjectFrom(ScriptUtils.getThemeFiles(), "themes")
-if(!themeOverwritesWeblate) {
+
+generateTranslationsObjectFrom([{path: questionsPath, parsed: questionsParsed}], "shared-questions")
+
+if (!themeOverwritesWeblate) {
// Generates the core translations
compileTranslationsFromWeblate();
}
From 070083907231332341a6afa62b6f60e23c636677 Mon Sep 17 00:00:00 2001
From: Jan Zabel
Date: Tue, 8 Jun 2021 23:42:52 +0000
Subject: [PATCH 33/67] Translated using Weblate (German)
Currently translated at 99.2% (138 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/de/
---
langs/de.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/de.json b/langs/de.json
index 374b8c2615..b7e74d3d78 100644
--- a/langs/de.json
+++ b/langs/de.json
@@ -19,7 +19,7 @@
"loadingData": "Daten werden geladen…",
"zoomIn": "Vergrößern, um die Daten anzuzeigen oder zu bearbeiten",
"ready": "Erledigt!",
- "retrying": "Laden von Daten fehlgeschlagen. Erneuter Versuch in ({count}) Sekunden…"
+ "retrying": "Laden von Daten fehlgeschlagen. Erneuter Versuch in {count} Sekunden…"
},
"index": {
"#": "Dieser Text wird über den Thema Auswahlbuttons gezeigt, wenn kein Thema geladen ist.",
From 0e9f52340a072e2c52244cfab8516ade21ea940b Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:19 +0200
Subject: [PATCH 34/67] Added translation using Weblate (Portuguese (Brazil))
---
langs/shared-questions/pt_BR.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/pt_BR.json
diff --git a/langs/shared-questions/pt_BR.json b/langs/shared-questions/pt_BR.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/pt_BR.json
@@ -0,0 +1 @@
+{}
From afa87ca38f53f89d29dcafd2805958fc922de554 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:20 +0200
Subject: [PATCH 35/67] Added translation using Weblate (Russian)
---
langs/shared-questions/ru.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/ru.json
diff --git a/langs/shared-questions/ru.json b/langs/shared-questions/ru.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/ru.json
@@ -0,0 +1 @@
+{}
From f47ad03291028f13a30ebc9b33c489890f9a2654 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:21 +0200
Subject: [PATCH 36/67] Added translation using Weblate (Japanese)
---
langs/shared-questions/ja.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/ja.json
diff --git a/langs/shared-questions/ja.json b/langs/shared-questions/ja.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/ja.json
@@ -0,0 +1 @@
+{}
From 94b3261b527aa5076867adc6677f92f4d9e1481f Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:22 +0200
Subject: [PATCH 37/67] Added translation using Weblate (Catalan)
---
langs/shared-questions/ca.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/ca.json
diff --git a/langs/shared-questions/ca.json b/langs/shared-questions/ca.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/ca.json
@@ -0,0 +1 @@
+{}
From 5d72323a1947e48b61445fbdb0acfeef00e996e9 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:23 +0200
Subject: [PATCH 38/67] Added translation using Weblate (Hungarian)
---
langs/shared-questions/hu.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/hu.json
diff --git a/langs/shared-questions/hu.json b/langs/shared-questions/hu.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/hu.json
@@ -0,0 +1 @@
+{}
From c23133f1c2efbd884ae0c7cae9604a742f00f1fa Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:24 +0200
Subject: [PATCH 39/67] Added translation using Weblate (Polish)
---
langs/shared-questions/pl.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/pl.json
diff --git a/langs/shared-questions/pl.json b/langs/shared-questions/pl.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/pl.json
@@ -0,0 +1 @@
+{}
From 20067e2b1298d9471adca978fe164bbf4ac50fd4 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:25 +0200
Subject: [PATCH 40/67] Added translation using Weblate (Italian)
---
langs/shared-questions/it.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/it.json
diff --git a/langs/shared-questions/it.json b/langs/shared-questions/it.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/it.json
@@ -0,0 +1 @@
+{}
From 08c9d36fa5d1eb9dd910129b706ab865d47baf68 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:26 +0200
Subject: [PATCH 41/67] Added translation using Weblate (Indonesian)
---
langs/shared-questions/id.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/id.json
diff --git a/langs/shared-questions/id.json b/langs/shared-questions/id.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/id.json
@@ -0,0 +1 @@
+{}
From 21ec15746415e1f042c988b50713ed63ce7d9473 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:27 +0200
Subject: [PATCH 42/67] Added translation using Weblate (Spanish)
---
langs/shared-questions/es.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/es.json
diff --git a/langs/shared-questions/es.json b/langs/shared-questions/es.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/es.json
@@ -0,0 +1 @@
+{}
From 3410000c22991f7d26e12577f1f2f6b81741d230 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:29 +0200
Subject: [PATCH 43/67] Added translation using Weblate (Swedish)
---
langs/shared-questions/sv.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/sv.json
diff --git a/langs/shared-questions/sv.json b/langs/shared-questions/sv.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/sv.json
@@ -0,0 +1 @@
+{}
From 5cb03135728b3cc07f696434dc1a601c63e41c09 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:33 +0200
Subject: [PATCH 44/67] Added translation using Weblate (Chinese (Traditional))
---
langs/shared-questions/zh_Hant.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/zh_Hant.json
diff --git a/langs/shared-questions/zh_Hant.json b/langs/shared-questions/zh_Hant.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/zh_Hant.json
@@ -0,0 +1 @@
+{}
From d33f941b8fe832a779fdf4cfd9afead16785e295 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 15:03:36 +0200
Subject: [PATCH 45/67] Added translation using Weblate (Chinese (Simplified))
---
langs/shared-questions/zh_Hans.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/zh_Hans.json
diff --git a/langs/shared-questions/zh_Hans.json b/langs/shared-questions/zh_Hans.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/zh_Hans.json
@@ -0,0 +1 @@
+{}
From 3f8d968efb58e618a5c551572ae12486ca3ec6e9 Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:45:41 +0000
Subject: [PATCH 46/67] Translated using Weblate (German)
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/de/
---
langs/de.json | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/langs/de.json b/langs/de.json
index b7e74d3d78..8e15773eec 100644
--- a/langs/de.json
+++ b/langs/de.json
@@ -19,10 +19,10 @@
"loadingData": "Daten werden geladen…",
"zoomIn": "Vergrößern, um die Daten anzuzeigen oder zu bearbeiten",
"ready": "Erledigt!",
- "retrying": "Laden von Daten fehlgeschlagen. Erneuter Versuch in {count} Sekunden…"
+ "retrying": "Laden von Daten fehlgeschlagen. Erneuter Versuch in {count} Sekunden …"
},
"index": {
- "#": "Dieser Text wird über den Thema Auswahlbuttons gezeigt, wenn kein Thema geladen ist.",
+ "#": "Dieser Text wird über die Thema-Auswahlschaltfläche gezeigt, wenn kein Thema geladen ist",
"title": "Willkommen bei MapComplete",
"intro": "MapComplete ist eine OpenStreetMap-Anwendung, mit der Informationen zu einem bestimmten Thema angezeigt und angepasst werden können.",
"pickTheme": "Wähle unten ein Thema, um zu starten."
@@ -33,7 +33,7 @@
"loginToStart": "Anmelden, um diese Frage zu beantworten",
"search": {
"search": "Einen Ort suchen",
- "searching": "Suchen…",
+ "searching": "Suchen …",
"nothing": "Nichts gefunden…",
"error": "Etwas ging schief…"
},
@@ -53,7 +53,7 @@
"zoomInFurther": "Weiter einzoomen, um einen Punkt hinzuzufügen.",
"stillLoading": "Die Daten werden noch geladen. Bitte warten Sie etwas, bevor Sie einen neuen Punkt hinzufügen.",
"confirmIntro": "Hier einen {title} hinzufügen?
Der Punkt, den Sie hier anlegen, wird für alle sichtbar sein. Bitte fügen Sie der Karte nur dann Dinge hinzu, wenn sie wirklich existieren. Viele Anwendungen verwenden diese Daten.",
- "confirmButton": "Hier eine {category} hinzufügen",
+ "confirmButton": "Fügen Sie hier eine {category} hinzu.
Ihre Ergänzung ist für alle sichtbar
",
"openLayerControl": "Das Ebenen-Kontrollkästchen öffnen",
"layerNotEnabled": "Die Ebene {layer} ist nicht aktiviert. Aktivieren Sie diese Ebene, um einen Punkt hinzuzufügen"
},
@@ -91,7 +91,7 @@
},
"morescreen": {
"intro": "Weitere Quests
Sammeln Sie gerne Geodaten?
Es sind weitere Themen verfügbar.",
- "requestATheme": "Wenn Sie einen speziell angefertigte Quest wünschen, können Sie diesen hier anfragen.",
+ "requestATheme": "Wenn Sie einen speziell angefertigte Quest wünschen, fragen Sie im Problem-Tracker an.",
"streetcomplete": "Eine andere, ähnliche Anwendung ist StreetComplete.",
"createYourOwnTheme": "Erstellen Sie Ihr eigenes MapComplete-Thema von Grund auf neu"
},
From b87d24192d24654ca307436251f5639008f1108a Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:38:03 +0000
Subject: [PATCH 47/67] Translated using Weblate (French)
Currently translated at 100.0% (139 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/fr/
---
langs/fr.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/fr.json b/langs/fr.json
index 46a6d4254c..4bae24b4c4 100644
--- a/langs/fr.json
+++ b/langs/fr.json
@@ -75,7 +75,7 @@
"attributionContent": "Toutes les données sont fournies par OpenStreetMap, librement réutilisables sous Open DataBase License.
",
"themeBy": "Thème maintenu par {author}",
"iconAttribution": {
- "title": "Icones utilisées"
+ "title": "Icônes utilisées"
},
"mapContributionsByAndHidden": "La partie actuellement visible des données comporte des modifications par {contributors} et {hiddenCount} contributeurs de plus",
"mapContributionsBy": "La partie actuellement visible des données comporte des modifications par {contributors}",
From 0301d2f9d12e0863592d51333110421864398796 Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:36:44 +0000
Subject: [PATCH 48/67] Translated using Weblate (French)
Currently translated at 28.2% (106 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/fr/
---
langs/themes/fr.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/themes/fr.json b/langs/themes/fr.json
index cf7413ee45..4f752b070c 100644
--- a/langs/themes/fr.json
+++ b/langs/themes/fr.json
@@ -369,4 +369,4 @@
"shortDescription": "Carte des arbres",
"description": "Cartographions tous les arbres !"
}
-}
\ No newline at end of file
+}
From 5f88dd74e1d7177c09db1a804786be556b02b975 Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:39:50 +0000
Subject: [PATCH 49/67] Translated using Weblate (French)
Currently translated at 100.0% (6 of 6 strings)
Translation: MapComplete/shared-questions
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/shared-questions/fr/
---
langs/shared-questions/fr.json | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/langs/shared-questions/fr.json b/langs/shared-questions/fr.json
index 4d440d34f7..a572741dba 100644
--- a/langs/shared-questions/fr.json
+++ b/langs/shared-questions/fr.json
@@ -1,20 +1,20 @@
{
"undefined": {
"phone": {
- "question": "Quel est le numéro de téléphone de {name} ?"
+ "question": "Quel est le numéro de téléphone de {name} ?"
},
"email": {
- "question": "Quelle est l'adresse courriel de {name} ?"
+ "question": "Quelle est l'adresse courriel de {name} ?"
},
"website": {
- "question": "Quel est le site internet de {name}?"
+ "question": "Quel est le site web de {name} ?"
},
"description": {
- "question": "Y a-t-il quelque chose de pertinent que vous n'avez pas pu donner à la dernière question ? Ajoutez-le ici.
Ne répétez pas des réponses déjà données"
+ "question": "Y a-t-il quelque chose de pertinent que vous n'avez pas pu donner à la dernière question ? Ajoutez-le ici.
Ne répétez pas des réponses déjà données"
},
"opening_hours": {
- "question": "Quelles sont les horaires d'ouverture de {name}?",
+ "question": "Quelles sont les horaires d'ouverture de {name} ?",
"render": "Horaires d'ouverture
{opening_hours_table(opening_hours)}"
}
}
-}
\ No newline at end of file
+}
From c582a6fb31657cc5436169ac6d53ef7e2f65ddd8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Wed, 9 Jun 2021 20:40:36 +0200
Subject: [PATCH 50/67] =?UTF-8?q?Added=20translation=20using=20Weblate=20(?=
=?UTF-8?q?Norwegian=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
langs/shared-questions/nb_NO.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/shared-questions/nb_NO.json
diff --git a/langs/shared-questions/nb_NO.json b/langs/shared-questions/nb_NO.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/shared-questions/nb_NO.json
@@ -0,0 +1 @@
+{}
From 014caf3233fce30be5e10211151c71f322e89356 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 20:40:37 +0200
Subject: [PATCH 51/67] =?UTF-8?q?Added=20translation=20using=20Weblate=20(?=
=?UTF-8?q?Norwegian=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
langs/nb_NO.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/nb_NO.json
diff --git a/langs/nb_NO.json b/langs/nb_NO.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/nb_NO.json
@@ -0,0 +1 @@
+{}
From e5ffb12e3093dd37c65bb44a6b0321489bfbbe50 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 20:40:48 +0200
Subject: [PATCH 52/67] =?UTF-8?q?Added=20translation=20using=20Weblate=20(?=
=?UTF-8?q?Norwegian=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
langs/themes/nb_NO.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/themes/nb_NO.json
diff --git a/langs/themes/nb_NO.json b/langs/themes/nb_NO.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/themes/nb_NO.json
@@ -0,0 +1 @@
+{}
From adaf95c07214767dd85937fb1e15ba5cd3acaba3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Wed, 9 Jun 2021 18:43:42 +0000
Subject: [PATCH 53/67] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?=
=?UTF-8?q?=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently translated at 83.3% (5 of 6 strings)
Translation: MapComplete/shared-questions
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/shared-questions/nb_NO/
---
langs/shared-questions/nb_NO.json | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/langs/shared-questions/nb_NO.json b/langs/shared-questions/nb_NO.json
index 0967ef424b..4f87520b74 100644
--- a/langs/shared-questions/nb_NO.json
+++ b/langs/shared-questions/nb_NO.json
@@ -1 +1,20 @@
-{}
+{
+ "undefined": {
+ "description": {
+ "question": "Er det noe mer som er relevant du ikke kunne opplyse om i tidligere svar? Legg det til her.
Ikke gjenta fakta som allerede er nevnt"
+ },
+ "opening_hours": {
+ "render": "Åpningstider
{opening_hours_table(opening_hours)}",
+ "question": "Hva er åpningstidene for {name})"
+ },
+ "website": {
+ "question": "Hva er nettsiden til {name}?"
+ },
+ "email": {
+ "question": "Hva er e-postadressen til {name}?"
+ },
+ "phone": {
+ "question": "Hva er telefonnummeret til {name}?"
+ }
+ }
+}
From 96ec6b0197efaf6a49443da5f3ff9cd92e08fdd0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Wed, 9 Jun 2021 18:47:20 +0000
Subject: [PATCH 54/67] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?=
=?UTF-8?q?=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently translated at 11.5% (16 of 139 strings)
Translation: MapComplete/Core
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/core/nb_NO/
---
langs/nb_NO.json | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/langs/nb_NO.json b/langs/nb_NO.json
index 0967ef424b..6e8b5aa604 100644
--- a/langs/nb_NO.json
+++ b/langs/nb_NO.json
@@ -1 +1,28 @@
-{}
+{
+ "general": {
+ "skip": "Hopp over dette spørsmålet",
+ "cancel": "Avbryt",
+ "save": "Lagre",
+ "search": {
+ "searching": "Søker …"
+ },
+ "welcomeBack": "Du er innlogget. Velkommen tilbake."
+ },
+ "index": {
+ "pickTheme": "Begynn ved å velge en av draktene nedenfor.",
+ "title": "Velkommen til MapComplete"
+ },
+ "centerMessage": {
+ "ready": "Ferdig",
+ "zoomIn": "Forstørr for å vise eller redigere data",
+ "loadingData": "Laster inn data …"
+ },
+ "image": {
+ "isDeleted": "Slettet",
+ "doDelete": "Fjern bilde",
+ "dontDelete": "Avbryt",
+ "uploadingMultiple": "Laster opp {count} bilder …",
+ "uploadingPicture": "Laster opp bildet ditt …",
+ "addPicture": "Legg til bilde"
+ }
+}
From 2b9fefb63cbfaaa32af3a9bb5607b2d07d1cb1e0 Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:42:20 +0000
Subject: [PATCH 55/67] Translated using Weblate (German)
Currently translated at 71.0% (396 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/de/
---
langs/layers/de.json | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/langs/layers/de.json b/langs/layers/de.json
index 9c68f819e9..d65f725ffc 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -81,7 +81,7 @@
},
"6": {
"question": "Wann wurde diese Bank zuletzt überprüft?",
- "render": "Die Bank wurde zuletzt am {survey:date} überprüft."
+ "render": "Diese Bank wurde zuletzt überprüft am {survey:date}"
}
},
"presets": {
@@ -202,10 +202,10 @@
"question": "Gibt es hier Werkzeuge, um das eigene Fahrrad zu reparieren?",
"mappings": {
"0": {
- "then": "Dieses Fahrrad-Café bietet Werkzeuge für die selbständige Reparatur an."
+ "then": "Dieses Fahrrad-Café bietet Werkzeuge für die selbständige Reparatur an"
},
"1": {
- "then": "Dieses Fahrrad-Café bietet keine Werkzeuge für die selbständige Reparatur an."
+ "then": "Dieses Fahrrad-Café bietet keine Werkzeuge für die selbständige Reparatur an"
}
}
},
@@ -329,7 +329,7 @@
"then": "Dieser Parkplatz ist überdacht (er hat ein Dach)"
},
"1": {
- "then": "Dieser Parkplatz ist nicht überdacht."
+ "then": "Dieser Parkplatz ist nicht überdacht"
}
}
},
@@ -1229,7 +1229,7 @@
"then": "Hier gibt es nur Pissoirs"
},
"2": {
- "then": "Es gibt hier nur Hocktoiletten."
+ "then": "Es gibt hier nur Hocktoiletten"
},
"3": {
"then": "Sowohl Sitztoiletten als auch Pissoirs sind hier verfügbar"
@@ -1293,4 +1293,4 @@
}
}
}
-}
\ No newline at end of file
+}
From de779c644e2e3db4be481d98406e3ae3c6b9b628 Mon Sep 17 00:00:00 2001
From: "J. Lavoie"
Date: Tue, 8 Jun 2021 23:40:04 +0000
Subject: [PATCH 56/67] Translated using Weblate (French)
Currently translated at 89.4% (498 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/fr/
---
langs/layers/fr.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/langs/layers/fr.json b/langs/layers/fr.json
index 0f0a41d814..3e96faa58a 100644
--- a/langs/layers/fr.json
+++ b/langs/layers/fr.json
@@ -1609,4 +1609,4 @@
}
}
}
-}
\ No newline at end of file
+}
From e0fef9e88220576cae690e07c937b1ca7ea6d062 Mon Sep 17 00:00:00 2001
From: Weblate
Date: Wed, 9 Jun 2021 20:40:41 +0200
Subject: [PATCH 57/67] =?UTF-8?q?Added=20translation=20using=20Weblate=20(?=
=?UTF-8?q?Norwegian=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
langs/layers/nb_NO.json | 1 +
1 file changed, 1 insertion(+)
create mode 100644 langs/layers/nb_NO.json
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/langs/layers/nb_NO.json
@@ -0,0 +1 @@
+{}
From 02264eba25c2a9c145c6be7372b7c5b7fe496ce1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Thu, 10 Jun 2021 06:15:14 +0000
Subject: [PATCH 58/67] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?=
=?UTF-8?q?=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently translated at 4.8% (27 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/nb_NO/
---
langs/layers/nb_NO.json | 90 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 89 insertions(+), 1 deletion(-)
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
index 0967ef424b..3b5df39b44 100644
--- a/langs/layers/nb_NO.json
+++ b/langs/layers/nb_NO.json
@@ -1 +1,89 @@
-{}
+{
+ "bench_at_pt": {
+ "title": {
+ "render": "Benk"
+ }
+ },
+ "bench": {
+ "presets": {
+ "0": {
+ "description": "Legg til en ny benk",
+ "title": "Benk"
+ }
+ },
+ "tagRenderings": {
+ "5": {
+ "mappings": {
+ "7": {
+ "then": "Farge: gul"
+ },
+ "6": {
+ "then": "Farge: blå"
+ },
+ "5": {
+ "then": "Farge: svart"
+ },
+ "4": {
+ "then": "Farge: rød"
+ },
+ "3": {
+ "then": "Farge: hvit"
+ },
+ "2": {
+ "then": "Farge: grå"
+ },
+ "1": {
+ "then": "Farge: grønn"
+ },
+ "0": {
+ "then": "Farge: brun"
+ }
+ },
+ "render": "Farge: {colour}"
+ },
+ "3": {
+ "mappings": {
+ "4": {
+ "then": "Materiale: plastikk"
+ },
+ "5": {
+ "then": "Materiale: stål"
+ },
+ "3": {
+ "then": "Materiale: betong"
+ },
+ "2": {
+ "then": "Materiale: stein"
+ },
+ "1": {
+ "then": "Materiale: metall"
+ },
+ "0": {
+ "then": "Materiale: tre"
+ }
+ },
+ "render": "Materiale: {material}"
+ },
+ "2": {
+ "question": "Hvor mange sitteplasser har denne benken?",
+ "render": "{seats} seter"
+ },
+ "1": {
+ "question": "Har denne beken et rygglene?",
+ "mappings": {
+ "1": {
+ "then": "Rygglene: Nei"
+ },
+ "0": {
+ "then": "Rygglene: Ja"
+ }
+ },
+ "render": "Rygglene"
+ }
+ },
+ "title": {
+ "render": "Benk"
+ },
+ "name": "Benker"
+ }
+}
From 061abd4a76d37bd5b730c8446942c9be46f52e74 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Thu, 10 Jun 2021 14:06:28 +0200
Subject: [PATCH 59/67] Translation sync
---
assets/layers/bench/bench.json | 80 ++++++++-----
assets/layers/bench_at_pt/bench_at_pt.json | 3 +-
assets/layers/bike_cafe/bike_cafe.json | 4 +-
assets/layers/bike_parking/bike_parking.json | 2 +-
assets/layers/toilet/toilet.json | 2 +-
assets/tagRenderings/questions.json | 28 +++--
langs/layers/de.json | 2 +-
langs/layers/fr.json | 2 +-
langs/layers/nb_NO.json | 120 +++++++++----------
langs/shared-questions/fr.json | 2 +-
langs/shared-questions/nb_NO.json | 24 ++--
langs/themes/fr.json | 2 +-
12 files changed, 152 insertions(+), 119 deletions(-)
diff --git a/assets/layers/bench/bench.json b/assets/layers/bench/bench.json
index 4f8fbe2c1f..2c12f08002 100644
--- a/assets/layers/bench/bench.json
+++ b/assets/layers/bench/bench.json
@@ -11,7 +11,8 @@
"it": "Panchine",
"ru": "Скамейки",
"zh_Hans": "长椅",
- "zh_Hant": "長椅"
+ "zh_Hant": "長椅",
+ "nb_NO": "Benker"
},
"minzoom": 14,
"source": {
@@ -29,7 +30,8 @@
"it": "Panchina",
"ru": "Скамейка",
"zh_Hans": "长椅",
- "zh_Hant": "長椅"
+ "zh_Hant": "長椅",
+ "nb_NO": "Benk"
}
},
"tagRenderings": [
@@ -46,7 +48,8 @@
"it": "Schienale",
"ru": "Спинка",
"zh_Hans": "靠背",
- "zh_Hant": "靠背"
+ "zh_Hant": "靠背",
+ "nb_NO": "Rygglene"
},
"freeform": {
"key": "backrest"
@@ -65,7 +68,8 @@
"it": "Schienale: Sì",
"ru": "Со спинкой",
"zh_Hans": "靠背:有",
- "zh_Hant": "靠背:有"
+ "zh_Hant": "靠背:有",
+ "nb_NO": "Rygglene: Ja"
}
},
{
@@ -81,7 +85,8 @@
"it": "Schienale: No",
"ru": "Без спинки",
"zh_Hans": "靠背:无",
- "zh_Hant": "靠背:無"
+ "zh_Hant": "靠背:無",
+ "nb_NO": "Rygglene: Nei"
}
}
],
@@ -96,7 +101,8 @@
"it": "Questa panchina ha lo schienale?",
"ru": "Есть ли у этой скамейки спинка?",
"zh_Hans": "这个长椅有靠背吗?",
- "zh_Hant": "這個長椅是否有靠背?"
+ "zh_Hant": "這個長椅是否有靠背?",
+ "nb_NO": "Har denne beken et rygglene?"
}
},
{
@@ -110,7 +116,8 @@
"id": "{seats} kursi",
"it": "{seats} posti",
"ru": "{seats} мест",
- "zh_Hant": "{seats} 座位數"
+ "zh_Hant": "{seats} 座位數",
+ "nb_NO": "{seats} seter"
},
"freeform": {
"key": "seats",
@@ -126,7 +133,8 @@
"it": "Quanti posti ha questa panchina?",
"ru": "Сколько мест на этой скамейке?",
"zh_Hans": "这个长椅有几个座位?",
- "zh_Hant": "這個長椅有幾個位子?"
+ "zh_Hant": "這個長椅有幾個位子?",
+ "nb_NO": "Hvor mange sitteplasser har denne benken?"
}
},
{
@@ -140,7 +148,8 @@
"it": "Materiale: {material}",
"ru": "Материал: {material}",
"zh_Hans": "材质: {material}",
- "zh_Hant": "材質:{material}"
+ "zh_Hant": "材質:{material}",
+ "nb_NO": "Materiale: {material}"
},
"freeform": {
"key": "material",
@@ -158,7 +167,8 @@
"hu": "Anyag: fa",
"it": "Materiale: legno",
"ru": "Материал: дерево",
- "zh_Hans": "材质:木"
+ "zh_Hans": "材质:木",
+ "nb_NO": "Materiale: tre"
}
},
{
@@ -172,7 +182,8 @@
"hu": "Anyag: fém",
"it": "Materiale: metallo",
"ru": "Материал: металл",
- "zh_Hans": "材质:金属"
+ "zh_Hans": "材质:金属",
+ "nb_NO": "Materiale: metall"
}
},
{
@@ -186,7 +197,8 @@
"hu": "Anyag: kő",
"it": "Materiale: pietra",
"ru": "Материал: камень",
- "zh_Hans": "材质:石头"
+ "zh_Hans": "材质:石头",
+ "nb_NO": "Materiale: stein"
}
},
{
@@ -200,7 +212,8 @@
"hu": "Anyag: beton",
"it": "Materiale: cemento",
"ru": "Материал: бетон",
- "zh_Hans": "材质:混凝土"
+ "zh_Hans": "材质:混凝土",
+ "nb_NO": "Materiale: betong"
}
},
{
@@ -214,7 +227,8 @@
"hu": "Anyag: műanyag",
"it": "Materiale: plastica",
"ru": "Материал: пластик",
- "zh_Hans": "材质:塑料"
+ "zh_Hans": "材质:塑料",
+ "nb_NO": "Materiale: plastikk"
}
},
{
@@ -228,7 +242,8 @@
"hu": "Anyag: acél",
"it": "Materiale: acciaio",
"ru": "Материал: сталь",
- "zh_Hans": "材质:不锈钢"
+ "zh_Hans": "材质:不锈钢",
+ "nb_NO": "Materiale: stål"
}
}
],
@@ -280,7 +295,8 @@
"ru": "Цвет: {colour}",
"id": "Warna: {colour}",
"zh_Hans": "颜色: {colour}",
- "zh_Hant": "顏色:{colour}"
+ "zh_Hant": "顏色:{colour}",
+ "nb_NO": "Farge: {colour}"
},
"question": {
"en": "Which colour does this bench have?",
@@ -309,7 +325,8 @@
"it": "Colore: marrone",
"ru": "Цвет: коричневый",
"zh_Hans": "颜色:棕",
- "zh_Hant": "顏色:棕色"
+ "zh_Hant": "顏色:棕色",
+ "nb_NO": "Farge: brun"
}
},
{
@@ -323,7 +340,8 @@
"it": "Colore: verde",
"ru": "Цвет: зеленый",
"zh_Hans": "颜色:绿",
- "zh_Hant": "顏色:綠色"
+ "zh_Hant": "顏色:綠色",
+ "nb_NO": "Farge: grønn"
}
},
{
@@ -337,7 +355,8 @@
"it": "Colore: grigio",
"ru": "Цвет: серый",
"zh_Hans": "颜色:灰",
- "zh_Hant": "顏色:灰色"
+ "zh_Hant": "顏色:灰色",
+ "nb_NO": "Farge: grå"
}
},
{
@@ -351,7 +370,8 @@
"it": "Colore: bianco",
"ru": "Цвет: белый",
"zh_Hans": "颜色:白",
- "zh_Hant": "顏色:白色"
+ "zh_Hant": "顏色:白色",
+ "nb_NO": "Farge: hvit"
}
},
{
@@ -365,7 +385,8 @@
"it": "Colore: rosso",
"ru": "Цвет: красный",
"zh_Hans": "颜色:红",
- "zh_Hant": "顏色:紅色"
+ "zh_Hant": "顏色:紅色",
+ "nb_NO": "Farge: rød"
}
},
{
@@ -379,7 +400,8 @@
"it": "Colore: nero",
"ru": "Цвет: чёрный",
"zh_Hans": "颜色:黑",
- "zh_Hant": "顏色:黑色"
+ "zh_Hant": "顏色:黑色",
+ "nb_NO": "Farge: svart"
}
},
{
@@ -393,7 +415,8 @@
"it": "Colore: blu",
"ru": "Цвет: синий",
"zh_Hans": "颜色:蓝",
- "zh_Hant": "顏色:藍色"
+ "zh_Hant": "顏色:藍色",
+ "nb_NO": "Farge: blå"
}
},
{
@@ -407,7 +430,8 @@
"it": "Colore: giallo",
"ru": "Цвет: желтый",
"zh_Hans": "颜色:黄",
- "zh_Hant": "顏色:黃色"
+ "zh_Hant": "顏色:黃色",
+ "nb_NO": "Farge: gul"
}
}
]
@@ -429,7 +453,7 @@
"fr": "Ce banc a été contrôlé pour la dernière fois le {survey:date}",
"it": "Questa panchina è stata controllata l’ultima volta in data {survey:date}",
"zh_Hans": "这个长椅于 {survey:date}最后一次实地调查",
- "de": "Die Bank wurde zuletzt am {survey:date} überprüft.",
+ "de": "Diese Bank wurde zuletzt überprüft am {survey:date}",
"ru": "Последний раз обследование этой скамейки проводилось {survey:date}"
},
"freeform": {
@@ -472,7 +496,8 @@
"it": "Panchina",
"ru": "Скамейка",
"id": "Bangku",
- "zh_Hans": "长椅"
+ "zh_Hans": "长椅",
+ "nb_NO": "Benk"
},
"description": {
"en": "Add a new bench",
@@ -483,7 +508,8 @@
"hu": "Pad hozzáadása",
"it": "Aggiungi una nuova panchina",
"ru": "Добавить новую скамейку",
- "zh_Hans": "增加一个新的长椅"
+ "zh_Hans": "增加一个新的长椅",
+ "nb_NO": "Legg til en ny benk"
}
}
]
diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json
index 8765078620..501349df9e 100644
--- a/assets/layers/bench_at_pt/bench_at_pt.json
+++ b/assets/layers/bench_at_pt/bench_at_pt.json
@@ -31,7 +31,8 @@
"it": "Panchina",
"ru": "Скамейка",
"id": "Bangku",
- "zh_Hans": "长椅"
+ "zh_Hans": "长椅",
+ "nb_NO": "Benk"
},
"mappings": [
{
diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json
index dc7ca06a7b..e4b9eb9ca1 100644
--- a/assets/layers/bike_cafe/bike_cafe.json
+++ b/assets/layers/bike_cafe/bike_cafe.json
@@ -145,7 +145,7 @@
"nl": "Dit fietscafé biedt gereedschap aan om je fiets zelf te herstellen",
"fr": "Ce Café vélo propose des outils pour réparer son vélo soi-même",
"gl": "Hai ferramentas aquí para arranxar a túa propia bicicleta",
- "de": "Dieses Fahrrad-Café bietet Werkzeuge für die selbständige Reparatur an.",
+ "de": "Dieses Fahrrad-Café bietet Werkzeuge für die selbständige Reparatur an",
"it": "Questo caffè in bici fornisce degli attrezzi per la riparazione fai-da-te",
"zh_Hans": "这家自行车咖啡为DIY修理者提供工具"
}
@@ -157,7 +157,7 @@
"nl": "Dit fietscafé biedt geen gereedschap aan om je fiets zelf te herstellen",
"fr": "Ce Café vélo ne propose pas d'outils pour réparer son vélo soi-même",
"gl": "Non hai ferramentas aquí para arranxar a túa propia bicicleta",
- "de": "Dieses Fahrrad-Café bietet keine Werkzeuge für die selbständige Reparatur an.",
+ "de": "Dieses Fahrrad-Café bietet keine Werkzeuge für die selbständige Reparatur an",
"it": "Questo caffè in bici non fornisce degli attrezzi per la riparazione fai-da-te",
"zh_Hans": "这家自行车咖啡不为DIY修理者提供工具"
}
diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json
index 645c1fad33..dd57d2a43b 100644
--- a/assets/layers/bike_parking/bike_parking.json
+++ b/assets/layers/bike_parking/bike_parking.json
@@ -272,7 +272,7 @@
"en": "This parking is not covered",
"nl": "Deze parking is niet overdekt",
"gl": "Este aparcadoiro non está cuberto",
- "de": "Dieser Parkplatz ist nicht überdacht.",
+ "de": "Dieser Parkplatz ist nicht überdacht",
"fr": "Ce parking n'est pas couvert",
"hu": "A parkoló nem fedett",
"it": "Non è un parcheggio coperto"
diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json
index 177b54cae0..3cc4a6a69b 100644
--- a/assets/layers/toilet/toilet.json
+++ b/assets/layers/toilet/toilet.json
@@ -242,7 +242,7 @@
"if": "toilets:position=squat",
"then": {
"en": "There are only squat toilets here",
- "de": "Es gibt hier nur Hocktoiletten.",
+ "de": "Es gibt hier nur Hocktoiletten",
"fr": "Il y a uniquement des toilettes turques",
"nl": "Er zijn enkel hurktoiletten"
}
diff --git a/assets/tagRenderings/questions.json b/assets/tagRenderings/questions.json
index 634c82e7dd..a7b87c5ef2 100644
--- a/assets/tagRenderings/questions.json
+++ b/assets/tagRenderings/questions.json
@@ -9,8 +9,9 @@
"question": {
"en": "What is the phone number of {name}?",
"nl": "Wat is het telefoonnummer van {name}?",
- "fr": "Quel est le numéro de téléphone de {name} ?",
- "de": "Was ist die Telefonnummer von {name}?"
+ "fr": "Quel est le numéro de téléphone de {name} ?",
+ "de": "Was ist die Telefonnummer von {name}?",
+ "nb_NO": "Hva er telefonnummeret til {name}?"
},
"render": "{phone}",
"freeform": {
@@ -35,8 +36,9 @@
"render": "{email}",
"question": {
"nl": "Wat is het email-adres van {name}?",
- "fr": "Quelle est l'adresse courriel de {name} ?",
- "en": "What is the email address of {name}?"
+ "fr": "Quelle est l'adresse courriel de {name} ?",
+ "en": "What is the email address of {name}?",
+ "nb_NO": "Hva er e-postadressen til {name}?"
},
"freeform": {
"key": "email",
@@ -47,8 +49,9 @@
"question": {
"en": "What is the website of {name}?",
"nl": "Wat is de website van {name}?",
- "fr": "Quel est le site internet de {name}?",
- "gl": "Cal é a páxina web de {name}?"
+ "fr": "Quel est le site web de {name} ?",
+ "gl": "Cal é a páxina web de {name}?",
+ "nb_NO": "Hva er nettsiden til {name}?"
},
"render": "{website}",
"freeform": {
@@ -59,8 +62,9 @@
"description": {
"question": {
"nl": "Zijn er extra zaken die je niet in de bovenstaande vragen kwijt kon? Zet deze in de descriptionHerhaal geen antwoorden die je reeds gaf",
- "fr": "Y a-t-il quelque chose de pertinent que vous n'avez pas pu donner à la dernière question ? Ajoutez-le ici.
Ne répétez pas des réponses déjà données",
- "en": "Is there still something relevant you couldn't give in the previous questions? Add it here.
Don't repeat already stated facts"
+ "fr": "Y a-t-il quelque chose de pertinent que vous n'avez pas pu donner à la dernière question ? Ajoutez-le ici.
Ne répétez pas des réponses déjà données",
+ "en": "Is there still something relevant you couldn't give in the previous questions? Add it here.
Don't repeat already stated facts",
+ "nb_NO": "Er det noe mer som er relevant du ikke kunne opplyse om i tidligere svar? Legg det til her.
Ikke gjenta fakta som allerede er nevnt"
},
"render": "{description}",
"freeform": {
@@ -70,15 +74,17 @@
"opening_hours": {
"question": {
"en": "What are the opening hours of {name}?",
- "fr": "Quelles sont les horaires d'ouverture de {name}?",
+ "fr": "Quelles sont les horaires d'ouverture de {name} ?",
"de": "Was sind die Öffnungszeiten von {name}?",
- "nl": "Wat zijn de openingsuren van {name}?"
+ "nl": "Wat zijn de openingsuren van {name}?",
+ "nb_NO": "Hva er åpningstidene for {name})"
},
"render": {
"de": "Öffnungszeiten
{opening_hours_table(opening_hours)}",
"fr": "Horaires d'ouverture
{opening_hours_table(opening_hours)}",
"en": "Opening hours
{opening_hours_table(opening_hours)}",
- "nl": "Openingsuren
{opening_hours_table(opening_hours)}"
+ "nl": "Openingsuren
{opening_hours_table(opening_hours)}",
+ "nb_NO": "Åpningstider
{opening_hours_table(opening_hours)}"
},
"freeform": {
"key": "opening_hours",
diff --git a/langs/layers/de.json b/langs/layers/de.json
index d65f725ffc..656df35020 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -1293,4 +1293,4 @@
}
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/layers/fr.json b/langs/layers/fr.json
index 3e96faa58a..0f0a41d814 100644
--- a/langs/layers/fr.json
+++ b/langs/layers/fr.json
@@ -1609,4 +1609,4 @@
}
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
index 3b5df39b44..8eaaf9f9d3 100644
--- a/langs/layers/nb_NO.json
+++ b/langs/layers/nb_NO.json
@@ -1,89 +1,89 @@
{
- "bench_at_pt": {
+ "bench": {
+ "name": "Benker",
"title": {
"render": "Benk"
- }
- },
- "bench": {
- "presets": {
- "0": {
- "description": "Legg til en ny benk",
- "title": "Benk"
- }
},
"tagRenderings": {
- "5": {
+ "1": {
+ "render": "Rygglene",
"mappings": {
- "7": {
- "then": "Farge: gul"
- },
- "6": {
- "then": "Farge: blå"
- },
- "5": {
- "then": "Farge: svart"
- },
- "4": {
- "then": "Farge: rød"
- },
- "3": {
- "then": "Farge: hvit"
- },
- "2": {
- "then": "Farge: grå"
+ "0": {
+ "then": "Rygglene: Ja"
},
"1": {
- "then": "Farge: grønn"
- },
- "0": {
- "then": "Farge: brun"
+ "then": "Rygglene: Nei"
}
},
- "render": "Farge: {colour}"
+ "question": "Har denne beken et rygglene?"
+ },
+ "2": {
+ "render": "{seats} seter",
+ "question": "Hvor mange sitteplasser har denne benken?"
},
"3": {
+ "render": "Materiale: {material}",
"mappings": {
+ "0": {
+ "then": "Materiale: tre"
+ },
+ "1": {
+ "then": "Materiale: metall"
+ },
+ "2": {
+ "then": "Materiale: stein"
+ },
+ "3": {
+ "then": "Materiale: betong"
+ },
"4": {
"then": "Materiale: plastikk"
},
"5": {
"then": "Materiale: stål"
+ }
+ }
+ },
+ "5": {
+ "render": "Farge: {colour}",
+ "mappings": {
+ "0": {
+ "then": "Farge: brun"
},
- "3": {
- "then": "Materiale: betong"
+ "1": {
+ "then": "Farge: grønn"
},
"2": {
- "then": "Materiale: stein"
+ "then": "Farge: grå"
},
- "1": {
- "then": "Materiale: metall"
+ "3": {
+ "then": "Farge: hvit"
},
- "0": {
- "then": "Materiale: tre"
+ "4": {
+ "then": "Farge: rød"
+ },
+ "5": {
+ "then": "Farge: svart"
+ },
+ "6": {
+ "then": "Farge: blå"
+ },
+ "7": {
+ "then": "Farge: gul"
}
- },
- "render": "Materiale: {material}"
- },
- "2": {
- "question": "Hvor mange sitteplasser har denne benken?",
- "render": "{seats} seter"
- },
- "1": {
- "question": "Har denne beken et rygglene?",
- "mappings": {
- "1": {
- "then": "Rygglene: Nei"
- },
- "0": {
- "then": "Rygglene: Ja"
- }
- },
- "render": "Rygglene"
+ }
}
},
+ "presets": {
+ "0": {
+ "title": "Benk",
+ "description": "Legg til en ny benk"
+ }
+ }
+ },
+ "bench_at_pt": {
"title": {
"render": "Benk"
- },
- "name": "Benker"
+ }
}
-}
+}
\ No newline at end of file
diff --git a/langs/shared-questions/fr.json b/langs/shared-questions/fr.json
index a572741dba..ce1d5646f6 100644
--- a/langs/shared-questions/fr.json
+++ b/langs/shared-questions/fr.json
@@ -17,4 +17,4 @@
"render": "Horaires d'ouverture
{opening_hours_table(opening_hours)}"
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/shared-questions/nb_NO.json b/langs/shared-questions/nb_NO.json
index 4f87520b74..bcc55435a7 100644
--- a/langs/shared-questions/nb_NO.json
+++ b/langs/shared-questions/nb_NO.json
@@ -1,20 +1,20 @@
{
"undefined": {
- "description": {
- "question": "Er det noe mer som er relevant du ikke kunne opplyse om i tidligere svar? Legg det til her.
Ikke gjenta fakta som allerede er nevnt"
- },
- "opening_hours": {
- "render": "Åpningstider
{opening_hours_table(opening_hours)}",
- "question": "Hva er åpningstidene for {name})"
- },
- "website": {
- "question": "Hva er nettsiden til {name}?"
+ "phone": {
+ "question": "Hva er telefonnummeret til {name}?"
},
"email": {
"question": "Hva er e-postadressen til {name}?"
},
- "phone": {
- "question": "Hva er telefonnummeret til {name}?"
+ "website": {
+ "question": "Hva er nettsiden til {name}?"
+ },
+ "description": {
+ "question": "Er det noe mer som er relevant du ikke kunne opplyse om i tidligere svar? Legg det til her.
Ikke gjenta fakta som allerede er nevnt"
+ },
+ "opening_hours": {
+ "question": "Hva er åpningstidene for {name})",
+ "render": "Åpningstider
{opening_hours_table(opening_hours)}"
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/themes/fr.json b/langs/themes/fr.json
index 4f752b070c..cf7413ee45 100644
--- a/langs/themes/fr.json
+++ b/langs/themes/fr.json
@@ -369,4 +369,4 @@
"shortDescription": "Carte des arbres",
"description": "Cartographions tous les arbres !"
}
-}
+}
\ No newline at end of file
From 4f33c5b0cdafe0ee2a82898f11b8e89761869658 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Thu, 10 Jun 2021 12:05:15 +0000
Subject: [PATCH 60/67] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?=
=?UTF-8?q?=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently translated at 5.7% (32 of 557 strings)
Translation: MapComplete/Layer translations
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/layer-translations/nb_NO/
---
langs/layers/nb_NO.json | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
index 3b5df39b44..680d96eac9 100644
--- a/langs/layers/nb_NO.json
+++ b/langs/layers/nb_NO.json
@@ -85,5 +85,22 @@
"render": "Benk"
},
"name": "Benker"
+ },
+ "bicycle_library": {
+ "tagRenderings": {
+ "6": {
+ "mappings": {
+ "0": {
+ "then": "Det er gratis å leie en sykkel"
+ }
+ },
+ "render": "Sykkelleie koster {charge}",
+ "question": "Hvor mye koster det å leie en sykkel?"
+ },
+ "1": {
+ "render": "Dette sykkelbiblioteket heter {name}",
+ "question": "Hva heter dette sykkelbiblioteket?"
+ }
+ }
}
}
From 3d403786282ddb5a47e70dbf9c3e5aebefded125 Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Thu, 10 Jun 2021 16:55:08 +0200
Subject: [PATCH 61/67] Fix bug: fallthrough layers let their features pass
again, fixes #349
---
Logic/FeatureSource/FeatureSourceMerger.ts | 4 ++--
Logic/FeatureSource/RememberingSource.ts | 4 ++--
Models/Constants.ts | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/Logic/FeatureSource/FeatureSourceMerger.ts b/Logic/FeatureSource/FeatureSourceMerger.ts
index 9ceef44298..e9901d1f5b 100644
--- a/Logic/FeatureSource/FeatureSourceMerger.ts
+++ b/Logic/FeatureSource/FeatureSourceMerger.ts
@@ -27,7 +27,7 @@ export default class FeatureSourceMerger implements FeatureSource {
// We seed the dictionary with the previously loaded features
const oldValues = this.features.data ?? [];
for (const oldValue of oldValues) {
- all.set(oldValue.feature.id, oldValue)
+ all.set(oldValue.feature.id + oldValue.feature._matching_layer_id, oldValue)
}
for (const source of this._sources) {
@@ -35,7 +35,7 @@ export default class FeatureSourceMerger implements FeatureSource {
continue;
}
for (const f of source.features.data) {
- const id = f.feature.properties.id;
+ const id = f.feature.properties.id + f.feature._matching_layer_id;
if (!all.has(id)) {
// This is a new feature
somethingChanged = true;
diff --git a/Logic/FeatureSource/RememberingSource.ts b/Logic/FeatureSource/RememberingSource.ts
index b77e613ace..c840aecba5 100644
--- a/Logic/FeatureSource/RememberingSource.ts
+++ b/Logic/FeatureSource/RememberingSource.ts
@@ -20,9 +20,9 @@ export default class RememberingSource implements FeatureSource {
}
// Then new ids
- const ids = new Set(features.map(f => f.feature.properties.id + f.feature.geometry.type));
+ const ids = new Set(features.map(f => f.feature.properties.id + f.feature.geometry.type + f.feature._matching_layer_id));
// the old data
- const oldData = oldFeatures.filter(old => !ids.has(old.feature.properties.id + old.feature.geometry.type))
+ const oldData = oldFeatures.filter(old => !ids.has(old.feature.properties.id + old.feature.geometry.type + old.feature._matching_layer_id))
return [...features, ...oldData];
})
}
diff --git a/Models/Constants.ts b/Models/Constants.ts
index 61bb8d3fc7..a350603c75 100644
--- a/Models/Constants.ts
+++ b/Models/Constants.ts
@@ -2,7 +2,7 @@ import { Utils } from "../Utils";
export default class Constants {
- public static vNumber = "0.7.5a";
+ public static vNumber = "0.7.5b";
// The user journey states thresholds when a new feature gets unlocked
public static userJourney = {
From 90d0d273e80187ed2150989a3b6f0d92a1af04fc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Fri, 11 Jun 2021 07:39:54 +0000
Subject: [PATCH 62/67] Translated using Weblate (English)
Currently translated at 100.0% (375 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/en/
---
langs/themes/en.json | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/langs/themes/en.json b/langs/themes/en.json
index a187ce8da6..1fca590d16 100644
--- a/langs/themes/en.json
+++ b/langs/themes/en.json
@@ -71,7 +71,7 @@
"render": "Created by {artist_name}"
},
"3": {
- "question": "On which website is more information about this artwork?",
+ "question": "Is there a website with more information about this artwork?",
"render": "More information on this website"
},
"4": {
@@ -342,7 +342,7 @@
},
"6": {
"render": "{network}",
- "question": "Which is the network of this charging stationg?",
+ "question": "What network of this charging station under?",
"mappings": {
"0": {
"then": "Not part of a bigger network"
@@ -589,7 +589,7 @@
"question": "Is this street a cyclestreet?",
"mappings": {
"0": {
- "then": "This street is a cyclestreet (and has a maxspeeld of 30km/h)"
+ "then": "This street is a cyclestreet (and has a speed limit of 30 km/h)"
},
"1": {
"then": "This street is a cyclestreet"
@@ -626,7 +626,7 @@
},
"2": {
"name": "All streets",
- "description": "Layer to mark any street as cycle street",
+ "description": "Layer to mark any street as cyclestreet",
"title": {
"render": "Street"
}
@@ -921,7 +921,7 @@
"title": {
"render": "Ambulance Station"
},
- "description": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.",
+ "description": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.",
"tagRenderings": {
"0": {
"question": "What is the name of this ambulance station?",
@@ -1076,4 +1076,4 @@
"shortDescription": "Map all the trees",
"description": "Map all the trees!"
}
-}
\ No newline at end of file
+}
From 1bbb66daae4c2375ec96b6ec10c64c0c5c1a2b7d Mon Sep 17 00:00:00 2001
From: Artem
Date: Thu, 10 Jun 2021 19:38:18 +0000
Subject: [PATCH 63/67] Translated using Weblate (Russian)
Currently translated at 83.3% (5 of 6 strings)
Translation: MapComplete/shared-questions
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/shared-questions/ru/
---
langs/shared-questions/ru.json | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/langs/shared-questions/ru.json b/langs/shared-questions/ru.json
index 0967ef424b..5983306fd9 100644
--- a/langs/shared-questions/ru.json
+++ b/langs/shared-questions/ru.json
@@ -1 +1,17 @@
-{}
+{
+ "undefined": {
+ "opening_hours": {
+ "render": "Часы работы
{opening_hours_table(opening_hours)}",
+ "question": "Какое время работы у {name}?"
+ },
+ "website": {
+ "question": "Какой сайт у {name}?"
+ },
+ "email": {
+ "question": "Какой адрес электронной почты у {name}?"
+ },
+ "phone": {
+ "question": "Какой номер телефона у {name}?"
+ }
+ }
+}
From 4a7c2b900b6776c7034070382a1d4bc79d4db705 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Fri, 11 Jun 2021 07:39:19 +0000
Subject: [PATCH 64/67] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegian?=
=?UTF-8?q?=20Bokm=C3=A5l)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently translated at 21.3% (80 of 375 strings)
Translation: MapComplete/themes
Translate-URL: https://hosted.weblate.org/projects/mapcomplete/themes/nb_NO/
---
langs/themes/nb_NO.json | 309 +++++++++++++++++++++++++++++++++++++++-
1 file changed, 308 insertions(+), 1 deletion(-)
diff --git a/langs/themes/nb_NO.json b/langs/themes/nb_NO.json
index 0967ef424b..42f84fbdb7 100644
--- a/langs/themes/nb_NO.json
+++ b/langs/themes/nb_NO.json
@@ -1 +1,308 @@
-{}
+{
+ "artworks": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "2": {
+ "question": "Hvilken artist lagde dette?",
+ "render": "Laget av {artist_name}"
+ },
+ "1": {
+ "mappings": {
+ "10": {
+ "then": "Azulejo (Spansk dekorativt flisverk)"
+ },
+ "1": {
+ "then": "Veggmaleri"
+ },
+ "2": {
+ "then": "Maleri"
+ },
+ "0": {
+ "then": "Arkitektur"
+ },
+ "11": {
+ "then": "Flisarbeid"
+ },
+ "9": {
+ "then": "Relieff"
+ },
+ "8": {
+ "then": "Graffiti"
+ },
+ "7": {
+ "then": "Installasjon"
+ },
+ "6": {
+ "then": "Stein"
+ },
+ "5": {
+ "then": "Byste"
+ },
+ "4": {
+ "then": "Statue"
+ },
+ "3": {
+ "then": "Skulptur"
+ }
+ },
+ "question": "Hvilken type kunstverk er dette?",
+ "render": "Dette er et kunstverk av typen {artwork_type}"
+ }
+ },
+ "presets": {
+ "0": {
+ "title": "Kunstverk"
+ }
+ },
+ "title": {
+ "render": "Kunstverk"
+ },
+ "name": "Kunstverk"
+ }
+ }
+ },
+ "campersite": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "3": {
+ "question": "pø",
+ "render": "Dette stedet tar {charge}"
+ },
+ "11": {
+ "render": "Flere detaljer om dette stedet: {description}"
+ },
+ "9": {
+ "question": "Har dette stedet en nettside?",
+ "render": "Offisiell nettside: {website}"
+ },
+ "8": {
+ "mappings": {
+ "1": {
+ "then": "Dette stedet har ikke toalettfasiliteter"
+ },
+ "0": {
+ "then": "Dette stedet har toalettfasiliteter"
+ }
+ },
+ "question": "Har dette stedet toaletter?"
+ },
+ "2": {
+ "mappings": {
+ "1": {
+ "then": "Kan brukes gratis"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "hailhydrant": {
+ "layers": {
+ "2": {
+ "title": {
+ "render": "Brannstasjon"
+ },
+ "name": "Kart over brannstasjoner"
+ },
+ "1": {
+ "presets": {
+ "0": {
+ "title": "Brannslukker"
+ }
+ },
+ "description": "Kartlag for å vise brannslokkere.",
+ "title": {
+ "render": "Brannslokkere"
+ },
+ "name": "Kart over brannhydranter"
+ },
+ "0": {
+ "presets": {
+ "0": {
+ "title": "Brannhydrant"
+ }
+ },
+ "tagRenderings": {
+ "0": {
+ "render": "Brannhydranter er {colour}",
+ "question": "Hvilken farge har brannhydranten?"
+ }
+ },
+ "description": "Kartlag for å vise brannhydranter.",
+ "title": {
+ "render": "Brannhydrant"
+ },
+ "name": "Kart over brannhydranter"
+ }
+ }
+ },
+ "ghostbikes": {
+ "title": "Spøkelsessykler"
+ },
+ "fritures": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "4": {
+ "question": "Hva er telefonnummeret?"
+ }
+ }
+ }
+ }
+ },
+ "facadegardens": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "2": {
+ "mappings": {
+ "1": {
+ "then": "Denne hagen er i delvis skygge"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "fietsstraten": {
+ "layers": {
+ "2": {
+ "description": "Lag for å markere hvilken som helst gate som sykkelvei",
+ "name": "Alle gater"
+ },
+ "1": {
+ "title": {
+ "render": "Fremtidig sykkelvei"
+ },
+ "name": "Fremtidig sykkelvei"
+ }
+ },
+ "roamingRenderings": {
+ "0": {
+ "mappings": {
+ "0": {
+ "then": "Denne gaten er en sykkelvei (og har en fartsgrense på 30 km/t)"
+ },
+ "3": {
+ "then": "Denne gaten er ikke en sykkelvei"
+ },
+ "2": {
+ "then": "Denne gaten vil bli sykkelvei ganske snart"
+ },
+ "1": {
+ "then": "Denne gaten er en sykkelvei"
+ }
+ },
+ "question": "Er denne gaten en sykkelvei?"
+ }
+ },
+ "shortDescription": "Et kart over sykkelveier"
+ },
+ "climbing": {
+ "layers": {
+ "4": {
+ "tagRenderings": {
+ "1": {
+ "mappings": {
+ "1": {
+ "then": "Klatring er mulig her"
+ },
+ "0": {
+ "then": "Klatring er ikke mulig her"
+ }
+ },
+ "question": "Er klatring mulig her?"
+ }
+ },
+ "description": "En klatremulighet?",
+ "title": {
+ "render": "Klatremulighet?"
+ },
+ "name": "Klatremuligheter?"
+ },
+ "3": {
+ "presets": {
+ "0": {
+ "description": "En klatremulighet",
+ "title": "Klatremulighet"
+ }
+ },
+ "description": "En klatremulighet",
+ "title": {
+ "render": "Klatremulighet"
+ }
+ },
+ "2": {
+ "tagRenderings": {
+ "3": {
+ "render": "Denne ruten er {climbing:length} meter lang"
+ }
+ },
+ "title": {
+ "render": "Klatrerute"
+ },
+ "name": "Klatreruter"
+ },
+ "0": {
+ "presets": {
+ "0": {
+ "description": "En klatreklubb",
+ "title": "Klatreklubb"
+ }
+ },
+ "description": "En klatreklubb eller organisasjoner",
+ "title": {
+ "render": "Klatreklubb"
+ },
+ "name": "Klatreklubb"
+ }
+ },
+ "title": "Åpent klatrekart",
+ "roamingRenderings": {
+ "4": {
+ "mappings": {
+ "1": {
+ "then": "Buldring er ikke mulig her"
+ },
+ "0": {
+ "then": "Buldring er mulig her"
+ }
+ },
+ "question": "Er buldring mulig her?"
+ }
+ }
+ },
+ "charging_stations": {
+ "layers": {
+ "0": {
+ "tagRenderings": {
+ "5": {
+ "question": "Når åpnet denne ladestasjonen?"
+ },
+ "6": {
+ "render": "{network}"
+ }
+ },
+ "description": "En ladestasjon",
+ "title": {
+ "render": "Ladestasjon"
+ },
+ "name": "Ladestasjoner"
+ }
+ }
+ },
+ "benches": {
+ "shortDescription": "Et benkekart",
+ "title": "Benker"
+ },
+ "bicyclelib": {
+ "title": "Sykkelbibliotek"
+ },
+ "aed": {
+ "title": "Åpne AED-kart"
+ }
+}
From b864d44fdae5fb4d0f1695173aa1efed8476fdcf Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Fri, 11 Jun 2021 22:53:09 +0200
Subject: [PATCH 65/67] Translation sync
---
assets/tagRenderings/questions.json | 15 +-
assets/themes/aed/aed.json | 6 +-
assets/themes/artwork/artwork.json | 62 ++-
assets/themes/benches/benches.json | 9 +-
.../bicycle_library/bicycle_library.json | 6 +-
assets/themes/campersites/campersites.json | 30 +-
.../charging_stations/charging_stations.json | 20 +-
assets/themes/climbing/climbing.json | 67 ++-
assets/themes/cyclestreets/cyclestreets.json | 37 +-
.../themes/facadegardens/facadegardens.json | 4 +-
assets/themes/fritures/fritures.json | 6 +-
assets/themes/ghostbikes/ghostbikes.json | 6 +-
assets/themes/hailhydrant/hailhydrant.json | 39 +-
langs/shared-questions/ru.json | 18 +-
langs/themes/en.json | 2 +-
langs/themes/nb_NO.json | 444 +++++++++---------
16 files changed, 436 insertions(+), 335 deletions(-)
diff --git a/assets/tagRenderings/questions.json b/assets/tagRenderings/questions.json
index a7b87c5ef2..2da1d9213f 100644
--- a/assets/tagRenderings/questions.json
+++ b/assets/tagRenderings/questions.json
@@ -11,7 +11,8 @@
"nl": "Wat is het telefoonnummer van {name}?",
"fr": "Quel est le numéro de téléphone de {name} ?",
"de": "Was ist die Telefonnummer von {name}?",
- "nb_NO": "Hva er telefonnummeret til {name}?"
+ "nb_NO": "Hva er telefonnummeret til {name}?",
+ "ru": "Какой номер телефона у {name}?"
},
"render": "{phone}",
"freeform": {
@@ -38,7 +39,8 @@
"nl": "Wat is het email-adres van {name}?",
"fr": "Quelle est l'adresse courriel de {name} ?",
"en": "What is the email address of {name}?",
- "nb_NO": "Hva er e-postadressen til {name}?"
+ "nb_NO": "Hva er e-postadressen til {name}?",
+ "ru": "Какой адрес электронной почты у {name}?"
},
"freeform": {
"key": "email",
@@ -51,7 +53,8 @@
"nl": "Wat is de website van {name}?",
"fr": "Quel est le site web de {name} ?",
"gl": "Cal é a páxina web de {name}?",
- "nb_NO": "Hva er nettsiden til {name}?"
+ "nb_NO": "Hva er nettsiden til {name}?",
+ "ru": "Какой сайт у {name}?"
},
"render": "{website}",
"freeform": {
@@ -77,14 +80,16 @@
"fr": "Quelles sont les horaires d'ouverture de {name} ?",
"de": "Was sind die Öffnungszeiten von {name}?",
"nl": "Wat zijn de openingsuren van {name}?",
- "nb_NO": "Hva er åpningstidene for {name})"
+ "nb_NO": "Hva er åpningstidene for {name})",
+ "ru": "Какое время работы у {name}?"
},
"render": {
"de": "Öffnungszeiten
{opening_hours_table(opening_hours)}",
"fr": "Horaires d'ouverture
{opening_hours_table(opening_hours)}",
"en": "Opening hours
{opening_hours_table(opening_hours)}",
"nl": "Openingsuren
{opening_hours_table(opening_hours)}",
- "nb_NO": "Åpningstider
{opening_hours_table(opening_hours)}"
+ "nb_NO": "Åpningstider
{opening_hours_table(opening_hours)}",
+ "ru": "Часы работы
{opening_hours_table(opening_hours)}"
},
"freeform": {
"key": "opening_hours",
diff --git a/assets/themes/aed/aed.json b/assets/themes/aed/aed.json
index 823668de5e..76d7f44b3e 100644
--- a/assets/themes/aed/aed.json
+++ b/assets/themes/aed/aed.json
@@ -12,7 +12,8 @@
"it": "Mappa dei defibrillatori (DAE)",
"ru": "Открытая карта AED (Автоматизированных внешних дефибрилляторов)",
"ja": "オープンAEDマップ",
- "zh_Hant": "開放AED地圖"
+ "zh_Hant": "開放AED地圖",
+ "nb_NO": "Åpne AED-kart"
},
"maintainer": "MapComplete",
"icon": "./assets/themes/aed/logo.svg",
@@ -41,7 +42,8 @@
"it",
"ru",
"ja",
- "zh_Hant"
+ "zh_Hant",
+ "nb_NO"
],
"version": "2020-08-29",
"startLat": 0,
diff --git a/assets/themes/artwork/artwork.json b/assets/themes/artwork/artwork.json
index e5bd0f1f15..1895514d71 100644
--- a/assets/themes/artwork/artwork.json
+++ b/assets/themes/artwork/artwork.json
@@ -36,7 +36,8 @@
"ru",
"ja",
"zh_Hant",
- "es"
+ "es",
+ "nb_NO"
],
"icon": "./assets/themes/artwork/artwork.svg",
"maintainer": "MapComplete",
@@ -56,7 +57,8 @@
"ru": "Произведения искусства",
"es": "Obras de arte",
"ja": "美術品",
- "zh_Hant": "藝術品"
+ "zh_Hant": "藝術品",
+ "nb_NO": "Kunstverk"
},
"source": {
"osmTags": "tourism=artwork"
@@ -72,7 +74,8 @@
"ru": "Художественная работа",
"es": "Obra de arte",
"ja": "アートワーク",
- "zh_Hant": "藝術品"
+ "zh_Hant": "藝術品",
+ "nb_NO": "Kunstverk"
},
"mappings": [
{
@@ -128,7 +131,8 @@
"ru": "Художественная работа",
"es": "Obra de arte",
"ja": "アートワーク",
- "zh_Hant": "藝術品"
+ "zh_Hant": "藝術品",
+ "nb_NO": "Kunstverk"
}
}
],
@@ -144,7 +148,8 @@
"ru": "Это {artwork_type}",
"es": "Esta es un {artwork_type}",
"ja": "これは{artwork_type}です",
- "zh_Hant": "這是 {artwork_type}"
+ "zh_Hant": "這是 {artwork_type}",
+ "nb_NO": "Dette er et kunstverk av typen {artwork_type}"
},
"question": {
"en": "What is the type of this artwork?",
@@ -155,7 +160,8 @@
"ru": "К какому типу относится эта работа?",
"es": "Cuál es el tipo de esta obra de arte?",
"ja": "この作品の種類は何ですか?",
- "zh_Hant": "這是什麼類型的藝術品?"
+ "zh_Hant": "這是什麼類型的藝術品?",
+ "nb_NO": "Hvilken type kunstverk er dette?"
},
"freeform": {
"key": "artwork_type",
@@ -174,7 +180,8 @@
"it": "Architettura",
"ru": "Архитектура",
"ja": "建物",
- "zh_Hant": "建築物"
+ "zh_Hant": "建築物",
+ "nb_NO": "Arkitektur"
}
},
{
@@ -187,7 +194,8 @@
"it": "Murale",
"ru": "Фреска",
"ja": "壁画",
- "zh_Hant": "壁畫"
+ "zh_Hant": "壁畫",
+ "nb_NO": "Veggmaleri"
}
},
{
@@ -200,7 +208,8 @@
"it": "Dipinto",
"ru": "Живопись",
"ja": "絵画",
- "zh_Hant": "繪畫"
+ "zh_Hant": "繪畫",
+ "nb_NO": "Maleri"
}
},
{
@@ -213,7 +222,8 @@
"it": "Scultura",
"ru": "Скульптура",
"ja": "彫刻",
- "zh_Hant": "雕塑"
+ "zh_Hant": "雕塑",
+ "nb_NO": "Skulptur"
}
},
{
@@ -226,7 +236,8 @@
"it": "Statua",
"ru": "Статуя",
"ja": "彫像",
- "zh_Hant": "雕像"
+ "zh_Hant": "雕像",
+ "nb_NO": "Statue"
}
},
{
@@ -239,7 +250,8 @@
"it": "Busto",
"ru": "Бюст",
"ja": "胸像",
- "zh_Hant": "半身像"
+ "zh_Hant": "半身像",
+ "nb_NO": "Byste"
}
},
{
@@ -252,7 +264,8 @@
"it": "Masso",
"ru": "Камень",
"ja": "石",
- "zh_Hant": "石頭"
+ "zh_Hant": "石頭",
+ "nb_NO": "Stein"
}
},
{
@@ -265,7 +278,8 @@
"it": "Istallazione",
"ru": "Инсталляция",
"ja": "インスタレーション",
- "zh_Hant": "安裝"
+ "zh_Hant": "安裝",
+ "nb_NO": "Installasjon"
}
},
{
@@ -278,7 +292,8 @@
"it": "Graffiti",
"ru": "Граффити",
"ja": "落書き",
- "zh_Hant": "塗鴨"
+ "zh_Hant": "塗鴨",
+ "nb_NO": "Graffiti"
}
},
{
@@ -291,7 +306,8 @@
"it": "Rilievo",
"ru": "Рельеф",
"ja": "レリーフ",
- "zh_Hant": "寬慰"
+ "zh_Hant": "寬慰",
+ "nb_NO": "Relieff"
}
},
{
@@ -304,7 +320,8 @@
"it": "Azulejo (ornamento decorativo piastrellato spagnolo)",
"ru": "Азуле́жу (испанская роспись глазурованной керамической плитки)",
"ja": "Azulejo (スペインの装飾タイル)",
- "zh_Hant": "Azulejo (西班牙雕塑作品名稱)"
+ "zh_Hant": "Azulejo (西班牙雕塑作品名稱)",
+ "nb_NO": "Azulejo (Spansk dekorativt flisverk)"
}
},
{
@@ -317,7 +334,8 @@
"it": "Mosaico di piastrelle",
"ru": "Плитка (мозаика)",
"ja": "タイルワーク",
- "zh_Hant": "瓷磚"
+ "zh_Hant": "瓷磚",
+ "nb_NO": "Flisarbeid"
}
}
]
@@ -331,7 +349,8 @@
"it": "Quale artista ha creato quest’opera?",
"ru": "Какой художник создал это?",
"ja": "どのアーティストが作ったんですか?",
- "zh_Hant": "創造這個的藝術家是誰?"
+ "zh_Hant": "創造這個的藝術家是誰?",
+ "nb_NO": "Hvilken artist lagde dette?"
},
"render": {
"en": "Created by {artist_name}",
@@ -341,7 +360,8 @@
"it": "Creato da {artist_name}",
"ru": "Создано {artist_name}",
"ja": "作成者:{artist_name}",
- "zh_Hant": "{artist_name} 創作"
+ "zh_Hant": "{artist_name} 創作",
+ "nb_NO": "Laget av {artist_name}"
},
"freeform": {
"key": "artist_name"
@@ -349,7 +369,7 @@
},
{
"question": {
- "en": "On which website is more information about this artwork?",
+ "en": "Is there a website with more information about this artwork?",
"nl": "Op welke website kan men meer informatie vinden over dit kunstwerk?",
"fr": "Sur quel site web pouvons-nous trouver plus d'informations sur cette œuvre d'art?",
"de": "Auf welcher Website gibt es mehr Informationen über dieses Kunstwerk?",
diff --git a/assets/themes/benches/benches.json b/assets/themes/benches/benches.json
index f0e35547e2..0e08ab2d11 100644
--- a/assets/themes/benches/benches.json
+++ b/assets/themes/benches/benches.json
@@ -8,7 +8,8 @@
"it": "Panchine",
"ru": "Скамейки",
"ja": "ベンチ",
- "zh_Hant": "長椅"
+ "zh_Hant": "長椅",
+ "nb_NO": "Benker"
},
"shortDescription": {
"en": "A map of benches",
@@ -18,7 +19,8 @@
"it": "Una mappa delle panchine",
"ru": "Карта скамеек",
"ja": "ベンチの地図",
- "zh_Hant": "長椅的地圖"
+ "zh_Hant": "長椅的地圖",
+ "nb_NO": "Et benkekart"
},
"description": {
"en": "This map shows all benches that are recorded in OpenStreetMap: Individual benches, and benches belonging to public transport stops or shelters. With an OpenStreetMap account, you can map new benches or edit details of existing benches.",
@@ -37,7 +39,8 @@
"it",
"ru",
"ja",
- "zh_Hant"
+ "zh_Hant",
+ "nb_NO"
],
"maintainer": "Florian Edelmann",
"icon": "./assets/themes/benches/bench_poi.svg",
diff --git a/assets/themes/bicycle_library/bicycle_library.json b/assets/themes/bicycle_library/bicycle_library.json
index f4d9fb366d..437020a3fc 100644
--- a/assets/themes/bicycle_library/bicycle_library.json
+++ b/assets/themes/bicycle_library/bicycle_library.json
@@ -9,7 +9,8 @@
"ru",
"ja",
"fr",
- "zh_Hant"
+ "zh_Hant",
+ "nb_NO"
],
"title": {
"en": "Bicycle libraries",
@@ -18,7 +19,8 @@
"ru": "Велосипедные библиотеки",
"ja": "自転車ライブラリ",
"fr": "Vélothèques",
- "zh_Hant": "單車圖書館"
+ "zh_Hant": "單車圖書館",
+ "nb_NO": "Sykkelbibliotek"
},
"description": {
"nl": "Een fietsbibliotheek is een plaats waar men een fiets kan lenen, vaak voor een klein bedrag per jaar. Een typisch voorbeeld zijn kinderfietsbibliotheken, waar men een fiets op maat van het kind kan lenen. Is het kind de fiets ontgroeid, dan kan het te kleine fietsje omgeruild worden voor een grotere.",
diff --git a/assets/themes/campersites/campersites.json b/assets/themes/campersites/campersites.json
index 28e6712bf6..e87024d7af 100644
--- a/assets/themes/campersites/campersites.json
+++ b/assets/themes/campersites/campersites.json
@@ -30,7 +30,8 @@
"ja",
"fr",
"zh_Hant",
- "id"
+ "id",
+ "nb_NO"
],
"maintainer": "joost schouppe",
"icon": "./assets/themes/campersites/caravan.svg",
@@ -148,7 +149,8 @@
"it": "Può essere usato gratuitamente",
"ru": "Можно использовать бесплатно",
"ja": "無料で使用可能",
- "fr": "Peut être utilisé gratuitement"
+ "fr": "Peut être utilisé gratuitement",
+ "nb_NO": "Kan brukes gratis"
}
},
{
@@ -163,14 +165,16 @@
"en": "This place charges {charge}",
"it": "Questo luogo costa {charge}",
"ru": "Это место взимает {charge}",
- "ja": "この場所は{charge} が必要"
+ "ja": "この場所は{charge} が必要",
+ "nb_NO": "Dette stedet tar {charge}"
},
"question": {
"en": "How much does this place charge?",
"it": "Quanto costa questo luogo?",
"ru": "Сколько это место взимает?",
"ja": "ここはいくらかかりますか?",
- "fr": "Combien coûte cet endroit ?"
+ "fr": "Combien coûte cet endroit ?",
+ "nb_NO": "pø"
},
"freeform": {
"key": "charge"
@@ -339,7 +343,8 @@
"it": "Questo luogo dispone di servizi igienici?",
"ru": "Здесь есть туалеты?",
"ja": "ここにトイレはありますか?",
- "zh_Hant": "這個地方有廁所嗎?"
+ "zh_Hant": "這個地方有廁所嗎?",
+ "nb_NO": "Har dette stedet toaletter?"
},
"mappings": [
{
@@ -354,7 +359,8 @@
"it": "Questo luogo ha i servizi igienici",
"ru": "В этом месте есть туалеты",
"ja": "ここにはトイレがある",
- "zh_Hant": "這個地方有廁所"
+ "zh_Hant": "這個地方有廁所",
+ "nb_NO": "Dette stedet har toalettfasiliteter"
}
},
{
@@ -369,7 +375,8 @@
"it": "Questo luogo non ha i servizi igienici",
"ru": "В этом месте нет туалетов",
"ja": "ここにはトイレがない",
- "zh_Hant": "這個地方並沒有廁所"
+ "zh_Hant": "這個地方並沒有廁所",
+ "nb_NO": "Dette stedet har ikke toalettfasiliteter"
}
}
]
@@ -380,7 +387,8 @@
"id": "Situs resmi: {website}",
"ru": "Официальный сайт: {website}",
"it": "Sito web ufficiale: {website}",
- "ja": "公式Webサイト: {website}"
+ "ja": "公式Webサイト: {website}",
+ "nb_NO": "Offisiell nettside: {website}"
},
"freeform": {
"type": "url",
@@ -391,7 +399,8 @@
"id": "Tempat sini terada situs web?",
"it": "Questo luogo ha un sito web?",
"ru": "Есть ли у этого места веб-сайт?",
- "ja": "ここにはウェブサイトがありますか?"
+ "ja": "ここにはウェブサイトがありますか?",
+ "nb_NO": "Har dette stedet en nettside?"
}
},
{
@@ -443,7 +452,8 @@
"render": {
"en": "More details about this place: {description}",
"ru": "Более подробная информация об этом месте: {description}",
- "ja": "この場所の詳細:{description}"
+ "ja": "この場所の詳細:{description}",
+ "nb_NO": "Flere detaljer om dette stedet: {description}"
},
"question": {
"en": "Would you like to add a general description of this place? (Do not repeat information previously asked or shown above. Please keep it objective - opinions go into the reviews)",
diff --git a/assets/themes/charging_stations/charging_stations.json b/assets/themes/charging_stations/charging_stations.json
index f4faca4d8e..04a1f774db 100644
--- a/assets/themes/charging_stations/charging_stations.json
+++ b/assets/themes/charging_stations/charging_stations.json
@@ -24,7 +24,8 @@
"id",
"ru",
"ja",
- "zh_Hant"
+ "zh_Hant",
+ "nb_NO"
],
"maintainer": "",
"icon": "./assets/themes/charging_stations/logo.svg",
@@ -41,7 +42,8 @@
"en": "Charging stations",
"ru": "Зарядные станции",
"ja": "充電ステーション",
- "zh_Hant": "充電站"
+ "zh_Hant": "充電站",
+ "nb_NO": "Ladestasjoner"
},
"minzoom": 10,
"source": {
@@ -56,14 +58,16 @@
"en": "Charging station",
"ru": "Зарядная станция",
"ja": "充電ステーション",
- "zh_Hant": "充電站"
+ "zh_Hant": "充電站",
+ "nb_NO": "Ladestasjon"
}
},
"description": {
"en": "A charging station",
"ru": "Зарядная станция",
"ja": "充電ステーション",
- "zh_Hant": "充電站"
+ "zh_Hant": "充電站",
+ "nb_NO": "En ladestasjon"
},
"tagRenderings": [
"images",
@@ -194,7 +198,8 @@
"en": "When is this charging station opened?",
"ru": "В какое время работает эта зарядная станция?",
"ja": "この充電ステーションはいつオープンしますか?",
- "zh_Hant": "何時是充電站開放使用的時間?"
+ "zh_Hant": "何時是充電站開放使用的時間?",
+ "nb_NO": "Når åpnet denne ladestasjonen?"
},
"mappings": [
{
@@ -209,10 +214,11 @@
"en": "{network}",
"ru": "{network}",
"ja": "{network}",
- "zh_Hant": "{network}"
+ "zh_Hant": "{network}",
+ "nb_NO": "{network}"
},
"question": {
- "en": "Which is the network of this charging stationg?",
+ "en": "What network of this charging station under?",
"ru": "К какой сети относится эта станция?",
"ja": "この充電ステーションの運営チェーンはどこですか?",
"zh_Hant": "充電站所屬的網路是?"
diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json
index a7e2bacc8f..bdf39fcde0 100644
--- a/assets/themes/climbing/climbing.json
+++ b/assets/themes/climbing/climbing.json
@@ -6,7 +6,8 @@
"en": "Open Climbing Map",
"ru": "Открытая карта скалолазания",
"ja": "登山地図を開く",
- "zh_Hant": "開放攀爬地圖"
+ "zh_Hant": "開放攀爬地圖",
+ "nb_NO": "Åpent klatrekart"
},
"description": {
"nl": "Op deze kaart vind je verschillende klimgelegenheden, zoals klimzalen, bolderzalen en klimmen in de natuur",
@@ -31,6 +32,7 @@
"ru",
"ja",
"zh_Hant",
+ "nb_NO",
"ca",
"fr",
"id"
@@ -52,7 +54,8 @@
"en": "Climbing club",
"ru": "Клуб скалолазания",
"ja": "クライミングクラブ",
- "zh_Hant": "攀岩社團"
+ "zh_Hant": "攀岩社團",
+ "nb_NO": "Klatreklubb"
},
"minzoom": 10,
"source": {
@@ -80,7 +83,8 @@
"de": "Kletterverein",
"ru": "Клуб скалолазания",
"ja": "クライミングクラブ",
- "zh_Hant": "攀岩社團"
+ "zh_Hant": "攀岩社團",
+ "nb_NO": "Klatreklubb"
},
"mappings": [
{
@@ -100,7 +104,8 @@
"nl": "Een klimclub of organisatie",
"en": "A climbing club or organisations",
"ja": "クライミングクラブや団体",
- "zh_Hant": "攀岩社團或組織"
+ "zh_Hant": "攀岩社團或組織",
+ "nb_NO": "En klatreklubb eller organisasjoner"
},
"tagRenderings": [
{
@@ -160,13 +165,15 @@
"de": "Kletterverein",
"en": "Climbing club",
"nl": "Klimclub",
- "ja": "クライミングクラブ"
+ "ja": "クライミングクラブ",
+ "nb_NO": "Klatreklubb"
},
"description": {
"de": "Ein Kletterverein",
"nl": "Een klimclub",
"en": "A climbing club",
- "ja": "クライミングクラブ"
+ "ja": "クライミングクラブ",
+ "nb_NO": "En klatreklubb"
}
},
{
@@ -285,7 +292,8 @@
"en": "Climbing routes",
"de": "Kletterrouten",
"nl": "Klimroute",
- "ja": "登坂ルート"
+ "ja": "登坂ルート",
+ "nb_NO": "Klatreruter"
},
"minzoom": 18,
"source": {
@@ -300,7 +308,8 @@
"de": "Kleterroute",
"en": "Climbing route",
"nl": "Klimroute",
- "ja": "登坂ルート"
+ "ja": "登坂ルート",
+ "nb_NO": "Klatrerute"
},
"mappings": [
{
@@ -361,7 +370,8 @@
"de": "Diese Route ist {climbing:length} Meter lang",
"en": "This route is {climbing:length} meter long",
"nl": "Deze klimroute is {climbing:length} meter lang",
- "ja": "このルート長は、 {climbing:length} メーターです"
+ "ja": "このルート長は、 {climbing:length} メーターです",
+ "nb_NO": "Denne ruten er {climbing:length} meter lang"
},
"freeform": {
"key": "climbing:length",
@@ -421,14 +431,16 @@
"en": "Climbing opportunity",
"nl": "Klimgelegenheid",
"de": "Klettermöglichkeit",
- "ja": "登坂教室"
+ "ja": "登坂教室",
+ "nb_NO": "Klatremulighet"
}
},
"description": {
"nl": "Een klimgelegenheid",
"de": "Eine Klettergelegenheit",
"en": "A climbing opportunity",
- "ja": "登坂教室"
+ "ja": "登坂教室",
+ "nb_NO": "En klatremulighet"
},
"tagRenderings": [
"images",
@@ -495,13 +507,15 @@
"en": "Climbing opportunity",
"nl": "Klimgelegenheid",
"de": "Klettermöglichkeit",
- "ja": "登坂教室"
+ "ja": "登坂教室",
+ "nb_NO": "Klatremulighet"
},
"description": {
"nl": "Een klimgelegenheid",
"de": "Eine Klettergelegenheit",
"en": "A climbing opportunity",
- "ja": "登坂教室"
+ "ja": "登坂教室",
+ "nb_NO": "En klatremulighet"
}
}
],
@@ -513,7 +527,8 @@
"nl": "Klimgelegenheiden?",
"de": "Klettermöglichkeiten?",
"en": "Climbing opportunities?",
- "ja": "登坂教室?"
+ "ja": "登坂教室?",
+ "nb_NO": "Klatremuligheter?"
},
"minzoom": 19,
"source": {
@@ -533,14 +548,16 @@
"en": "Climbing opportunity?",
"nl": "Klimgelegenheid?",
"de": "Klettermöglichkeit?",
- "ja": "登坂教室?"
+ "ja": "登坂教室?",
+ "nb_NO": "Klatremulighet?"
}
},
"description": {
"nl": "Een klimgelegenheid?",
"de": "Eine Klettergelegenheit?",
"en": "A climbing opportunity?",
- "ja": "登坂教室?"
+ "ja": "登坂教室?",
+ "nb_NO": "En klatremulighet?"
},
"tagRenderings": [
{
@@ -559,7 +576,8 @@
"question": {
"en": "Is climbing possible here?",
"de": "Kann hier geklettert werden?",
- "ja": "ここで登坂はできますか?"
+ "ja": "ここで登坂はできますか?",
+ "nb_NO": "Er klatring mulig her?"
},
"mappings": [
{
@@ -571,7 +589,8 @@
"then": {
"en": "Climbing is not possible here",
"de": "Hier kann nicht geklettert werden",
- "ja": "ここでは登ることができない"
+ "ja": "ここでは登ることができない",
+ "nb_NO": "Klatring er ikke mulig her"
},
"hideInAnswer": true
},
@@ -584,7 +603,8 @@
"then": {
"en": "Climbing is possible here",
"de": "Hier kann geklettert werden",
- "ja": "ここでは登ることができる"
+ "ja": "ここでは登ることができる",
+ "nb_NO": "Klatring er mulig her"
}
}
]
@@ -711,7 +731,8 @@
"de": "Kann hier gebouldert werden?",
"en": "Is bouldering possible here?",
"nl": "Is het mogelijk om hier te bolderen?",
- "ja": "ここでボルダリングはできますか?"
+ "ja": "ここでボルダリングはできますか?",
+ "nb_NO": "Er buldring mulig her?"
},
"mappings": [
{
@@ -720,7 +741,8 @@
"de": "Hier kann gebouldert werden",
"en": "Bouldering is possible here",
"nl": "Bolderen kan hier",
- "ja": "ボルダリングはここで可能です"
+ "ja": "ボルダリングはここで可能です",
+ "nb_NO": "Buldring er mulig her"
}
},
{
@@ -729,7 +751,8 @@
"de": "Hier kann nicht gebouldert werden",
"en": "Bouldering is not possible here",
"nl": "Bolderen kan hier niet",
- "ja": "ここではボルダリングはできません"
+ "ja": "ここではボルダリングはできません",
+ "nb_NO": "Buldring er ikke mulig her"
}
},
{
diff --git a/assets/themes/cyclestreets/cyclestreets.json b/assets/themes/cyclestreets/cyclestreets.json
index ba40ba4f07..e51ddfb623 100644
--- a/assets/themes/cyclestreets/cyclestreets.json
+++ b/assets/themes/cyclestreets/cyclestreets.json
@@ -11,7 +11,8 @@
"nl": "Een kaart met alle gekende fietsstraten",
"en": "A map of cyclestreets",
"ja": "cyclestreetsの地図",
- "zh_Hant": "單車街道的地圖"
+ "zh_Hant": "單車街道的地圖",
+ "nb_NO": "Et kart over sykkelveier"
},
"description": {
"nl": "Een fietsstraat is een straat waar - automobilisten geen fietsers mogen inhalen
- Er een maximumsnelheid van 30km/u geldt
- Fietsers gemotoriseerde voortuigen links mogen inhalen
- Fietsers nog steeds voorrang aan rechts moeten verlenen - ook aan auto's en voetgangers op het zebrapad
Op deze open kaart kan je alle gekende fietsstraten zien en kan je ontbrekende fietsstraten aanduiden. Om de kaart aan te passen, moet je je aanmelden met OpenStreetMap en helemaal inzoomen tot straatniveau.",
@@ -24,7 +25,8 @@
"nl",
"en",
"ja",
- "zh_Hant"
+ "zh_Hant",
+ "nb_NO"
],
"startLat": 51.2095,
"startZoom": 14,
@@ -36,7 +38,8 @@
"question": {
"nl": "Is deze straat een fietsstraat?",
"en": "Is this street a cyclestreet?",
- "ja": "この通りはcyclestreetですか?"
+ "ja": "この通りはcyclestreetですか?",
+ "nb_NO": "Er denne gaten en sykkelvei?"
},
"mappings": [
{
@@ -50,8 +53,9 @@
},
"then": {
"nl": "Deze straat is een fietsstraat (en dus zone 30)",
- "en": "This street is a cyclestreet (and has a maxspeeld of 30km/h)",
- "ja": "cyclestreet(最高速度は30km/h)"
+ "en": "This street is a cyclestreet (and has a speed limit of 30 km/h)",
+ "ja": "cyclestreet(最高速度は30km/h)",
+ "nb_NO": "Denne gaten er en sykkelvei (og har en fartsgrense på 30 km/t)"
}
},
{
@@ -64,7 +68,8 @@
"then": {
"nl": "Deze straat is een fietsstraat",
"en": "This street is a cyclestreet",
- "ja": "この通りはcyclestreetだ"
+ "ja": "この通りはcyclestreetだ",
+ "nb_NO": "Denne gaten er en sykkelvei"
},
"hideInAnswer": true
},
@@ -78,7 +83,8 @@
"then": {
"nl": "Deze straat wordt binnenkort een fietsstraat",
"en": "This street will become a cyclstreet soon",
- "ja": "この通りはまもなくcyclstreetになるだろう"
+ "ja": "この通りはまもなくcyclstreetになるだろう",
+ "nb_NO": "Denne gaten vil bli sykkelvei ganske snart"
}
},
{
@@ -92,7 +98,8 @@
"then": {
"nl": "Deze straat is geen fietsstraat",
"en": "This street is not a cyclestreet",
- "ja": "この通りはcyclestreetではない"
+ "ja": "この通りはcyclestreetではない",
+ "nb_NO": "Denne gaten er ikke en sykkelvei"
}
}
]
@@ -160,7 +167,8 @@
"nl": "Toekomstige fietsstraat",
"en": "Future cyclestreet",
"ja": "将来のcyclestreet",
- "zh_Hant": "將來的單車街道"
+ "zh_Hant": "將來的單車街道",
+ "nb_NO": "Fremtidig sykkelvei"
},
"description": {
"nl": "Deze straat wordt binnenkort een fietsstraat",
@@ -176,7 +184,8 @@
"render": {
"nl": "Toekomstige fietsstraat",
"en": "Future cyclestreet",
- "ja": "将来のcyclestreet"
+ "ja": "将来のcyclestreet",
+ "nb_NO": "Fremtidig sykkelvei"
},
"mappings": [
{
@@ -201,12 +210,14 @@
"name": {
"nl": "Alle straten",
"en": "All streets",
- "ja": "すべての道路"
+ "ja": "すべての道路",
+ "nb_NO": "Alle gater"
},
"description": {
"nl": "Laag waar je een straat als fietsstraat kan markeren",
- "en": "Layer to mark any street as cycle street",
- "ja": "任意の道路をCycle Streetとしてマークするレイヤ"
+ "en": "Layer to mark any street as cyclestreet",
+ "ja": "任意の道路をCycle Streetとしてマークするレイヤ",
+ "nb_NO": "Lag for å markere hvilken som helst gate som sykkelvei"
},
"source": {
"osmTags": {
diff --git a/assets/themes/facadegardens/facadegardens.json b/assets/themes/facadegardens/facadegardens.json
index e48c2711f4..bbfafb2c37 100644
--- a/assets/themes/facadegardens/facadegardens.json
+++ b/assets/themes/facadegardens/facadegardens.json
@@ -22,6 +22,7 @@
"en",
"ja",
"zh_Hant",
+ "nb_NO",
"ru"
],
"maintainer": "joost schouppe; stla",
@@ -137,7 +138,8 @@
"then": {
"nl": "Het is een halfschaduw tuintje",
"en": "The garden is in partial shade",
- "ja": "庭は部分的に日陰である"
+ "ja": "庭は部分的に日陰である",
+ "nb_NO": "Denne hagen er i delvis skygge"
}
},
{
diff --git a/assets/themes/fritures/fritures.json b/assets/themes/fritures/fritures.json
index e6e0e10e51..3117cda208 100644
--- a/assets/themes/fritures/fritures.json
+++ b/assets/themes/fritures/fritures.json
@@ -14,7 +14,8 @@
"ja",
"ca",
"id",
- "ru"
+ "ru",
+ "nb_NO"
],
"maintainer": "",
"icon": "./assets/themes/fritures/logo.svg",
@@ -118,7 +119,8 @@
"en": "What is the phone number?",
"nl": "Wat is het telefoonnummer van deze frituur?",
"fr": "Quel est le numéro de téléphone de cette friterie?",
- "ja": "電話番号は何番ですか?"
+ "ja": "電話番号は何番ですか?",
+ "nb_NO": "Hva er telefonnummeret?"
},
"freeform": {
"key": "phone",
diff --git a/assets/themes/ghostbikes/ghostbikes.json b/assets/themes/ghostbikes/ghostbikes.json
index 0c0a307a2e..d7ef6c33ec 100644
--- a/assets/themes/ghostbikes/ghostbikes.json
+++ b/assets/themes/ghostbikes/ghostbikes.json
@@ -6,13 +6,15 @@
"en",
"nl",
"de",
- "ja"
+ "ja",
+ "nb_NO"
],
"title": {
"en": "Ghost bikes",
"nl": "Witte Fietsen",
"de": "Geisterrad",
- "ja": "ゴーストバイク"
+ "ja": "ゴーストバイク",
+ "nb_NO": "Spøkelsessykler"
},
"description": {
"en": "A ghost bike is a memorial for a cyclist who died in a traffic accident, in the form of a white bicycle placed permanently near the accident location.
On this map, one can see all the ghost bikes which are known by OpenStreetMap. Is a ghost bike missing? Everyone can add or update information here - you only need to have a (free) OpenStreetMap account.",
diff --git a/assets/themes/hailhydrant/hailhydrant.json b/assets/themes/hailhydrant/hailhydrant.json
index babff046c4..e0c121b791 100644
--- a/assets/themes/hailhydrant/hailhydrant.json
+++ b/assets/themes/hailhydrant/hailhydrant.json
@@ -19,6 +19,7 @@
"en",
"ja",
"zh_Hant",
+ "nb_NO",
"ru",
"id"
],
@@ -36,7 +37,8 @@
"name": {
"en": "Map of hydrants",
"ja": "消火栓の地図",
- "zh_Hant": "消防栓地圖"
+ "zh_Hant": "消防栓地圖",
+ "nb_NO": "Kart over brannhydranter"
},
"minzoom": 14,
"source": {
@@ -50,23 +52,27 @@
"render": {
"en": "Hydrant",
"ru": "Гидрант",
- "ja": "消火栓"
+ "ja": "消火栓",
+ "nb_NO": "Brannhydrant"
}
},
"description": {
"en": "Map layer to show fire hydrants.",
"ja": "消火栓を表示するマップレイヤ。",
- "zh_Hant": "顯示消防栓的地圖圖層。"
+ "zh_Hant": "顯示消防栓的地圖圖層。",
+ "nb_NO": "Kartlag for å vise brannhydranter."
},
"tagRenderings": [
{
"question": {
"en": "What color is the hydrant?",
- "ja": "消火栓の色は何色ですか?"
+ "ja": "消火栓の色は何色ですか?",
+ "nb_NO": "Hvilken farge har brannhydranten?"
},
"render": {
"en": "The hydrant color is {colour}",
- "ja": "消火栓の色は{color}です"
+ "ja": "消火栓の色は{color}です",
+ "nb_NO": "Brannhydranter er {colour}"
},
"freeform": {
"key": "colour"
@@ -255,7 +261,8 @@
"title": {
"en": "Fire hydrant",
"ru": "Пожарный гидрант",
- "ja": "消火栓"
+ "ja": "消火栓",
+ "nb_NO": "Brannhydrant"
},
"description": {
"en": "A hydrant is a connection point where firefighters can tap water. It might be located underground.",
@@ -269,7 +276,8 @@
"id": "extinguisher",
"name": {
"en": "Map of fire extinguishers.",
- "ja": "消火器の地図です。"
+ "ja": "消火器の地図です。",
+ "nb_NO": "Kart over brannhydranter"
},
"minzoom": 14,
"source": {
@@ -283,13 +291,15 @@
"render": {
"en": "Extinguishers",
"ru": "Огнетушители",
- "ja": "消火器"
+ "ja": "消火器",
+ "nb_NO": "Brannslokkere"
}
},
"description": {
"en": "Map layer to show fire hydrants.",
"ja": "消火栓を表示するマップレイヤ。",
- "zh_Hant": "顯示消防栓的地圖圖層。"
+ "zh_Hant": "顯示消防栓的地圖圖層。",
+ "nb_NO": "Kartlag for å vise brannslokkere."
},
"tagRenderings": [
{
@@ -351,7 +361,8 @@
],
"title": {
"en": "Fire extinguisher",
- "ja": "消火器"
+ "ja": "消火器",
+ "nb_NO": "Brannslukker"
},
"description": {
"en": "A fire extinguisher is a small, portable device used to stop a fire",
@@ -365,7 +376,8 @@
"id": "fire_stations",
"name": {
"en": "Map of fire stations",
- "ja": "消防署の地図"
+ "ja": "消防署の地図",
+ "nb_NO": "Kart over brannstasjoner"
},
"minzoom": 12,
"source": {
@@ -380,7 +392,8 @@
"render": {
"en": "Fire Station",
"ja": "消防署",
- "ru": "Пожарная часть"
+ "ru": "Пожарная часть",
+ "nb_NO": "Brannstasjon"
}
},
"description": {
@@ -567,7 +580,7 @@
}
},
"description": {
- "en": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.",
+ "en": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.",
"ja": "救急ステーションは、救急車、医療機器、個人用保護具、およびその他の医療用品を保管する場所です。"
},
"tagRenderings": [
diff --git a/langs/shared-questions/ru.json b/langs/shared-questions/ru.json
index 5983306fd9..b2cabb8b6b 100644
--- a/langs/shared-questions/ru.json
+++ b/langs/shared-questions/ru.json
@@ -1,17 +1,17 @@
{
"undefined": {
- "opening_hours": {
- "render": "Часы работы
{opening_hours_table(opening_hours)}",
- "question": "Какое время работы у {name}?"
- },
- "website": {
- "question": "Какой сайт у {name}?"
+ "phone": {
+ "question": "Какой номер телефона у {name}?"
},
"email": {
"question": "Какой адрес электронной почты у {name}?"
},
- "phone": {
- "question": "Какой номер телефона у {name}?"
+ "website": {
+ "question": "Какой сайт у {name}?"
+ },
+ "opening_hours": {
+ "question": "Какое время работы у {name}?",
+ "render": "Часы работы
{opening_hours_table(opening_hours)}"
}
}
-}
+}
\ No newline at end of file
diff --git a/langs/themes/en.json b/langs/themes/en.json
index 1fca590d16..6549be5212 100644
--- a/langs/themes/en.json
+++ b/langs/themes/en.json
@@ -1076,4 +1076,4 @@
"shortDescription": "Map all the trees",
"description": "Map all the trees!"
}
-}
+}
\ No newline at end of file
diff --git a/langs/themes/nb_NO.json b/langs/themes/nb_NO.json
index 42f84fbdb7..74c11e335d 100644
--- a/langs/themes/nb_NO.json
+++ b/langs/themes/nb_NO.json
@@ -1,16 +1,26 @@
{
+ "aed": {
+ "title": "Åpne AED-kart"
+ },
"artworks": {
"layers": {
"0": {
+ "name": "Kunstverk",
+ "title": {
+ "render": "Kunstverk"
+ },
+ "presets": {
+ "0": {
+ "title": "Kunstverk"
+ }
+ },
"tagRenderings": {
- "2": {
- "question": "Hvilken artist lagde dette?",
- "render": "Laget av {artist_name}"
- },
"1": {
+ "render": "Dette er et kunstverk av typen {artwork_type}",
+ "question": "Hvilken type kunstverk er dette?",
"mappings": {
- "10": {
- "then": "Azulejo (Spansk dekorativt flisverk)"
+ "0": {
+ "then": "Arkitektur"
},
"1": {
"then": "Veggmaleri"
@@ -18,139 +28,212 @@
"2": {
"then": "Maleri"
},
- "0": {
- "then": "Arkitektur"
- },
- "11": {
- "then": "Flisarbeid"
- },
- "9": {
- "then": "Relieff"
- },
- "8": {
- "then": "Graffiti"
- },
- "7": {
- "then": "Installasjon"
- },
- "6": {
- "then": "Stein"
- },
- "5": {
- "then": "Byste"
+ "3": {
+ "then": "Skulptur"
},
"4": {
"then": "Statue"
},
- "3": {
- "then": "Skulptur"
+ "5": {
+ "then": "Byste"
+ },
+ "6": {
+ "then": "Stein"
+ },
+ "7": {
+ "then": "Installasjon"
+ },
+ "8": {
+ "then": "Graffiti"
+ },
+ "9": {
+ "then": "Relieff"
+ },
+ "10": {
+ "then": "Azulejo (Spansk dekorativt flisverk)"
+ },
+ "11": {
+ "then": "Flisarbeid"
}
- },
- "question": "Hvilken type kunstverk er dette?",
- "render": "Dette er et kunstverk av typen {artwork_type}"
+ }
+ },
+ "2": {
+ "question": "Hvilken artist lagde dette?",
+ "render": "Laget av {artist_name}"
}
- },
- "presets": {
- "0": {
- "title": "Kunstverk"
- }
- },
- "title": {
- "render": "Kunstverk"
- },
- "name": "Kunstverk"
+ }
}
}
},
+ "benches": {
+ "title": "Benker",
+ "shortDescription": "Et benkekart"
+ },
+ "bicyclelib": {
+ "title": "Sykkelbibliotek"
+ },
"campersite": {
"layers": {
"0": {
"tagRenderings": {
- "3": {
- "question": "pø",
- "render": "Dette stedet tar {charge}"
- },
- "11": {
- "render": "Flere detaljer om dette stedet: {description}"
- },
- "9": {
- "question": "Har dette stedet en nettside?",
- "render": "Offisiell nettside: {website}"
- },
- "8": {
- "mappings": {
- "1": {
- "then": "Dette stedet har ikke toalettfasiliteter"
- },
- "0": {
- "then": "Dette stedet har toalettfasiliteter"
- }
- },
- "question": "Har dette stedet toaletter?"
- },
"2": {
"mappings": {
"1": {
"then": "Kan brukes gratis"
}
}
+ },
+ "3": {
+ "render": "Dette stedet tar {charge}",
+ "question": "pø"
+ },
+ "8": {
+ "question": "Har dette stedet toaletter?",
+ "mappings": {
+ "0": {
+ "then": "Dette stedet har toalettfasiliteter"
+ },
+ "1": {
+ "then": "Dette stedet har ikke toalettfasiliteter"
+ }
+ }
+ },
+ "9": {
+ "render": "Offisiell nettside: {website}",
+ "question": "Har dette stedet en nettside?"
+ },
+ "11": {
+ "render": "Flere detaljer om dette stedet: {description}"
}
}
}
}
},
- "hailhydrant": {
+ "charging_stations": {
"layers": {
+ "0": {
+ "name": "Ladestasjoner",
+ "title": {
+ "render": "Ladestasjon"
+ },
+ "description": "En ladestasjon",
+ "tagRenderings": {
+ "5": {
+ "question": "Når åpnet denne ladestasjonen?"
+ },
+ "6": {
+ "render": "{network}"
+ }
+ }
+ }
+ }
+ },
+ "climbing": {
+ "title": "Åpent klatrekart",
+ "layers": {
+ "0": {
+ "name": "Klatreklubb",
+ "title": {
+ "render": "Klatreklubb"
+ },
+ "description": "En klatreklubb eller organisasjoner",
+ "presets": {
+ "0": {
+ "title": "Klatreklubb",
+ "description": "En klatreklubb"
+ }
+ }
+ },
"2": {
+ "name": "Klatreruter",
"title": {
- "render": "Brannstasjon"
- },
- "name": "Kart over brannstasjoner"
- },
- "1": {
- "presets": {
- "0": {
- "title": "Brannslukker"
- }
- },
- "description": "Kartlag for å vise brannslokkere.",
- "title": {
- "render": "Brannslokkere"
- },
- "name": "Kart over brannhydranter"
- },
- "0": {
- "presets": {
- "0": {
- "title": "Brannhydrant"
- }
+ "render": "Klatrerute"
},
"tagRenderings": {
- "0": {
- "render": "Brannhydranter er {colour}",
- "question": "Hvilken farge har brannhydranten?"
+ "3": {
+ "render": "Denne ruten er {climbing:length} meter lang"
}
- },
- "description": "Kartlag for å vise brannhydranter.",
+ }
+ },
+ "3": {
"title": {
- "render": "Brannhydrant"
+ "render": "Klatremulighet"
},
- "name": "Kart over brannhydranter"
+ "description": "En klatremulighet",
+ "presets": {
+ "0": {
+ "title": "Klatremulighet",
+ "description": "En klatremulighet"
+ }
+ }
+ },
+ "4": {
+ "name": "Klatremuligheter?",
+ "title": {
+ "render": "Klatremulighet?"
+ },
+ "description": "En klatremulighet?",
+ "tagRenderings": {
+ "1": {
+ "question": "Er klatring mulig her?",
+ "mappings": {
+ "0": {
+ "then": "Klatring er ikke mulig her"
+ },
+ "1": {
+ "then": "Klatring er mulig her"
+ }
+ }
+ }
+ }
+ }
+ },
+ "roamingRenderings": {
+ "4": {
+ "question": "Er buldring mulig her?",
+ "mappings": {
+ "0": {
+ "then": "Buldring er mulig her"
+ },
+ "1": {
+ "then": "Buldring er ikke mulig her"
+ }
+ }
}
}
},
- "ghostbikes": {
- "title": "Spøkelsessykler"
- },
- "fritures": {
- "layers": {
+ "fietsstraten": {
+ "shortDescription": "Et kart over sykkelveier",
+ "roamingRenderings": {
"0": {
- "tagRenderings": {
- "4": {
- "question": "Hva er telefonnummeret?"
+ "question": "Er denne gaten en sykkelvei?",
+ "mappings": {
+ "0": {
+ "then": "Denne gaten er en sykkelvei (og har en fartsgrense på 30 km/t)"
+ },
+ "1": {
+ "then": "Denne gaten er en sykkelvei"
+ },
+ "2": {
+ "then": "Denne gaten vil bli sykkelvei ganske snart"
+ },
+ "3": {
+ "then": "Denne gaten er ikke en sykkelvei"
}
}
}
+ },
+ "layers": {
+ "1": {
+ "name": "Fremtidig sykkelvei",
+ "title": {
+ "render": "Fremtidig sykkelvei"
+ }
+ },
+ "2": {
+ "name": "Alle gater",
+ "description": "Lag for å markere hvilken som helst gate som sykkelvei"
+ }
}
},
"facadegardens": {
@@ -168,141 +251,58 @@
}
}
},
- "fietsstraten": {
+ "fritures": {
"layers": {
- "2": {
- "description": "Lag for å markere hvilken som helst gate som sykkelvei",
- "name": "Alle gater"
- },
- "1": {
- "title": {
- "render": "Fremtidig sykkelvei"
- },
- "name": "Fremtidig sykkelvei"
- }
- },
- "roamingRenderings": {
"0": {
- "mappings": {
- "0": {
- "then": "Denne gaten er en sykkelvei (og har en fartsgrense på 30 km/t)"
- },
- "3": {
- "then": "Denne gaten er ikke en sykkelvei"
- },
- "2": {
- "then": "Denne gaten vil bli sykkelvei ganske snart"
- },
- "1": {
- "then": "Denne gaten er en sykkelvei"
- }
- },
- "question": "Er denne gaten en sykkelvei?"
- }
- },
- "shortDescription": "Et kart over sykkelveier"
- },
- "climbing": {
- "layers": {
- "4": {
"tagRenderings": {
- "1": {
- "mappings": {
- "1": {
- "then": "Klatring er mulig her"
- },
- "0": {
- "then": "Klatring er ikke mulig her"
- }
- },
- "question": "Er klatring mulig her?"
+ "4": {
+ "question": "Hva er telefonnummeret?"
+ }
+ }
+ }
+ }
+ },
+ "ghostbikes": {
+ "title": "Spøkelsessykler"
+ },
+ "hailhydrant": {
+ "layers": {
+ "0": {
+ "name": "Kart over brannhydranter",
+ "title": {
+ "render": "Brannhydrant"
+ },
+ "description": "Kartlag for å vise brannhydranter.",
+ "tagRenderings": {
+ "0": {
+ "question": "Hvilken farge har brannhydranten?",
+ "render": "Brannhydranter er {colour}"
}
},
- "description": "En klatremulighet?",
- "title": {
- "render": "Klatremulighet?"
- },
- "name": "Klatremuligheter?"
- },
- "3": {
"presets": {
"0": {
- "description": "En klatremulighet",
- "title": "Klatremulighet"
+ "title": "Brannhydrant"
}
- },
- "description": "En klatremulighet",
+ }
+ },
+ "1": {
+ "name": "Kart over brannhydranter",
"title": {
- "render": "Klatremulighet"
+ "render": "Brannslokkere"
+ },
+ "description": "Kartlag for å vise brannslokkere.",
+ "presets": {
+ "0": {
+ "title": "Brannslukker"
+ }
}
},
"2": {
- "tagRenderings": {
- "3": {
- "render": "Denne ruten er {climbing:length} meter lang"
- }
- },
+ "name": "Kart over brannstasjoner",
"title": {
- "render": "Klatrerute"
- },
- "name": "Klatreruter"
- },
- "0": {
- "presets": {
- "0": {
- "description": "En klatreklubb",
- "title": "Klatreklubb"
- }
- },
- "description": "En klatreklubb eller organisasjoner",
- "title": {
- "render": "Klatreklubb"
- },
- "name": "Klatreklubb"
- }
- },
- "title": "Åpent klatrekart",
- "roamingRenderings": {
- "4": {
- "mappings": {
- "1": {
- "then": "Buldring er ikke mulig her"
- },
- "0": {
- "then": "Buldring er mulig her"
- }
- },
- "question": "Er buldring mulig her?"
+ "render": "Brannstasjon"
+ }
}
}
- },
- "charging_stations": {
- "layers": {
- "0": {
- "tagRenderings": {
- "5": {
- "question": "Når åpnet denne ladestasjonen?"
- },
- "6": {
- "render": "{network}"
- }
- },
- "description": "En ladestasjon",
- "title": {
- "render": "Ladestasjon"
- },
- "name": "Ladestasjoner"
- }
- }
- },
- "benches": {
- "shortDescription": "Et benkekart",
- "title": "Benker"
- },
- "bicyclelib": {
- "title": "Sykkelbibliotek"
- },
- "aed": {
- "title": "Åpne AED-kart"
}
-}
+}
\ No newline at end of file
From 3fe581e4af0ad1ce0c4900d62c7919e58190c27c Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Fri, 11 Jun 2021 22:53:34 +0200
Subject: [PATCH 66/67] Add another forbidden character
---
Logic/Osm/OsmPreferences.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Logic/Osm/OsmPreferences.ts b/Logic/Osm/OsmPreferences.ts
index bff50eae60..cd688b89c7 100644
--- a/Logic/Osm/OsmPreferences.ts
+++ b/Logic/Osm/OsmPreferences.ts
@@ -97,7 +97,7 @@ export class OsmPreferences {
public GetPreference(key: string, prefix: string = "mapcomplete-"): UIEventSource {
key = prefix + key;
- key = key.replace(/[:\\\/"' {}.%]/g, '')
+ key = key.replace(/[:\\\/"' {}.%_]/g, '')
if (key.length >= 255) {
throw "Preferences: key length to big";
}
From ba8605ec9d4adc60f48a2d8d413e78a21f519d1b Mon Sep 17 00:00:00 2001
From: pietervdvn
Date: Sun, 13 Jun 2021 15:10:01 +0200
Subject: [PATCH 67/67] Translation sync
---
assets/layers/bench_at_pt/bench_at_pt.json | 3 ++-
.../bicycle_library/bicycle_library.json | 15 ++++++++++-----
langs/layers/nb_NO.json | 18 +++++++++---------
3 files changed, 21 insertions(+), 15 deletions(-)
diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json
index 501349df9e..f7f2db362f 100644
--- a/assets/layers/bench_at_pt/bench_at_pt.json
+++ b/assets/layers/bench_at_pt/bench_at_pt.json
@@ -9,7 +9,8 @@
"hu": "Padok megállókban",
"it": "Panchine alle fermate del trasporto pubblico",
"ru": "Скамейки на остановках общественного транспорта",
- "zh_Hans": "在公交站点的长椅"
+ "zh_Hans": "在公交站点的长椅",
+ "nb_NO": "Benker"
},
"minzoom": 14,
"source": {
diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json
index c18aa6fdd6..546b2ac7c2 100644
--- a/assets/layers/bicycle_library/bicycle_library.json
+++ b/assets/layers/bicycle_library/bicycle_library.json
@@ -55,14 +55,16 @@
"nl": "Wat is de naam van deze fietsbieb?",
"fr": "Quel est le nom de cette vélothèque ?",
"it": "Qual è il nome di questo “bici in prestito”?",
- "ru": "Как называется эта велосипедная библиотека?"
+ "ru": "Как называется эта велосипедная библиотека?",
+ "nb_NO": "Hva heter dette sykkelbiblioteket?"
},
"render": {
"en": "This bicycle library is called {name}",
"nl": "Deze fietsbieb heet {name}",
"fr": "Cette vélothèque s'appelle {name}",
"it": "Il “bici in prestito” è chiamato {name}",
- "ru": "Эта велосипедная библиотека называется {name}"
+ "ru": "Эта велосипедная библиотека называется {name}",
+ "nb_NO": "Dette sykkelbiblioteket heter {name}"
},
"freeform": {
"key": "name"
@@ -80,7 +82,8 @@
"hu": "Mennyibe kerül egy kerékpár kölcsönzése?",
"it": "Quanto costa il prestito di una bicicletta?",
"ru": "Сколько стоит прокат велосипеда?",
- "de": "Wie viel kostet das Ausleihen eines Fahrrads?"
+ "de": "Wie viel kostet das Ausleihen eines Fahrrads?",
+ "nb_NO": "Hvor mye koster det å leie en sykkel?"
},
"render": {
"en": "Lending a bicycle costs {charge}",
@@ -89,7 +92,8 @@
"hu": "Egy kerékpár kölcsönzése {charge}",
"it": "Il prestito di una bicicletta costa {charge}",
"ru": "Стоимость аренды велосипеда {charge}",
- "de": "Das Ausleihen eines Fahrrads kostet {charge}"
+ "de": "Das Ausleihen eines Fahrrads kostet {charge}",
+ "nb_NO": "Sykkelleie koster {charge}"
},
"freeform": {
"key": "charge",
@@ -112,7 +116,8 @@
"hu": "A kerékpárkölcsönzés ingyenes",
"it": "Il prestito di una bicicletta è gratuito",
"de": "Das Ausleihen eines Fahrrads ist kostenlos",
- "ru": "Прокат велосипедов бесплатен"
+ "ru": "Прокат велосипедов бесплатен",
+ "nb_NO": "Det er gratis å leie en sykkel"
}
},
{
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
index 645a3c4f48..96ea5056b8 100644
--- a/langs/layers/nb_NO.json
+++ b/langs/layers/nb_NO.json
@@ -82,25 +82,25 @@
}
},
"bench_at_pt": {
+ "name": "Benker",
"title": {
"render": "Benk"
- },
- "name": "Benker"
+ }
},
"bicycle_library": {
"tagRenderings": {
+ "1": {
+ "question": "Hva heter dette sykkelbiblioteket?",
+ "render": "Dette sykkelbiblioteket heter {name}"
+ },
"6": {
+ "question": "Hvor mye koster det å leie en sykkel?",
+ "render": "Sykkelleie koster {charge}",
"mappings": {
"0": {
"then": "Det er gratis å leie en sykkel"
}
- },
- "render": "Sykkelleie koster {charge}",
- "question": "Hvor mye koster det å leie en sykkel?"
- },
- "1": {
- "render": "Dette sykkelbiblioteket heter {name}",
- "question": "Hva heter dette sykkelbiblioteket?"
+ }
}
}
}