From 03e8f228da93b6d002cf17743801a99cd73d65d5 Mon Sep 17 00:00:00 2001 From: mcliquid Date: Sun, 7 Sep 2025 17:11:53 +0000 Subject: [PATCH 01/33] Translated using Weblate (German) Currently translated at 94.2% (715 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/de/ --- langs/de.json | 45 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/langs/de.json b/langs/de.json index a5fb2112a..d348f8cf5 100644 --- a/langs/de.json +++ b/langs/de.json @@ -11,7 +11,9 @@ "legacyHeader": "Versionen für ältere Android-Handys", "noPlayServices": "Die App funktioniert ohne Google Play Services", "older": "Ältere Versionen ansehen", - "title": "MapComplete Android-App" + "title": "MapComplete Android-App", + "getOnGoogle": "Lade MapComplete im Google Playstore runter", + "intro": "MapComplete gibt's als Android-App in verschiedenen App-Stores. Wenn du die App installierst, kannst du einfacher auf MapComplete zugreifen und brauchst weniger Internet. Die Webversion hat aber die gleichen Funktionen." }, "centerMessage": { "allFilteredAway": "Kein Objekt im Kartenausschnitt erfüllt alle Filterkriterien", @@ -218,7 +220,10 @@ "seeOnMapillary": "Dieses Bild auf Mapillary ansehen", "themeBy": "Dieses Thema wurde erstellt von {author}", "title": "Copyright und Urheberrechtsangabe", - "translatedBy": "MapComplete wurde übersetzt von {contributors} und {hiddenCount} weiteren Personen" + "translatedBy": "MapComplete wurde übersetzt von {contributors} und {hiddenCount} weiteren Personen", + "ngiProgram": "mit finanzieller Unterstützung durch das Programm „Next Generation Internet“ der Europäischen Kommission.", + "ngiZero": "Dieses Projekt wird durch NGI0 Entrust finanziert", + "nlNetMapComplete": "Mehr Infos findest du auf der NlNet-Projektseite" }, "back": "Zurück", "backToIndex": "Alle Themenkarten anzeigen", @@ -295,7 +300,8 @@ }, "levelSelection": { "addNewOnLevel": "Befindet sich der neue Punkt auf der Ebene {level}?", - "confirmLevel": "Ja, füge {preset} auf Ebene {level} hinzu" + "confirmLevel": "Ja, füge {preset} auf Ebene {level} hinzu", + "cancel": "Alle Levels anzeigen" }, "loading": "Laden…", "loadingTheme": "Lade {theme}…", @@ -358,7 +364,8 @@ "thursday": "Am Donnerstag {ranges}", "tuesday": "Am Dienstag {ranges}", "unknown": "Die Öffnungszeiten sind unbekannt", - "wednesday": "Am Mittwoch {ranges}" + "wednesday": "Am Mittwoch {ranges}", + "ph": "Feiertage" }, "pdf": { "attr": "Kartendaten © OpenStreetMap Contributors, wiederverwendbar unter ODbL", @@ -411,7 +418,8 @@ "recentThemes": "Kürzlich besuchte Themenkarten", "recents": "Kürzlich angesehene Objekte", "search": "Ortssuche", - "searching": "Suchen …" + "searching": "Suchen …", + "searchShort": "Suche…" }, "searchAnswer": "Option suchen.", "seeIndex": "Siehe Übersicht mit allen thematischen Karten", @@ -541,7 +549,14 @@ "readMore": "Weiterlesen", "searchToShort": "Ihre Suchanfrage ist zu kurz, geben Sie einen längeren Text ein", "searchWikidata": "Wikidata durchsuchen" - } + }, + "points_in_time": { + "daily": "Täglich", + "weekdays": "An Wochentagen", + "weekends": "An Wochenenden", + "closed": "Geschlossen" + }, + "welcomeBack": "Willkommen zurück" }, "hotkeyDocumentation": { "action": "Aktion", @@ -564,7 +579,8 @@ "selectSearch": "Suchleiste auswählen, um nach Orten zu suchen", "shakePhone": "Telefon schütteln", "title": "Tastaturbefehle", - "translationMode": "Übersetzungsmodus ein- oder ausschalten" + "translationMode": "Übersetzungsmodus ein- oder ausschalten", + "addNew": "Öffne das Dialogfeld, um einen neuen Punkt in der Mitte der Karte hinzuzufügen" }, "image": { "addPicture": "Mach ein Foto", @@ -587,7 +603,11 @@ "copyright": "Das Bild enthält urheberrechtlich geschützte Inhalte", "inappropriate": "Dieses Bild ist unangemessen (es enthält Nacktheit, ruft nach Hass oder ist nicht Streetview)", "other": "Ein weiterer Grund, bitte angeben", - "privacy": "Das Bild zeigt eine private Immobilie" + "privacy": "Das Bild zeigt eine private Immobilie", + "blur_excess": "Das Bild ist zu unscharf, sodass man es nicht verwenden kann", + "blur_missing": "Ein oder mehrere Gesichter sind nicht richtig unscharf gemacht", + "mislocated": "Dieses Bild ist am falschen Ort", + "picture_low_quality": "Dieses Bild ist qualitativ schlecht und kann nicht verwendet werden" }, "requestDeletion": "Bildlöschung beantragen", "title": "Warum sollte dieses Bild dauerhaft gelöscht werden?" @@ -619,7 +639,12 @@ "uploading": "Das Bild wird hochgeladen…" } }, - "uploadFailed": "Das Bild konnte nicht hochladen werden. Haben Sie eine aktive Internetverbindung und sind APIs von Dritten erlaubt? Der Brave Browser oder UMatrix blockieren diese eventuell." + "uploadFailed": "Das Bild konnte nicht hochladen werden. Haben Sie eine aktive Internetverbindung und sind APIs von Dritten erlaubt? Der Brave Browser oder UMatrix blockieren diese eventuell.", + "reported": "Dieses Bild wurde gemeldet und könnte schädliche Inhalte haben", + "loadingFailed": "Das Laden dieses Bildes hat nicht geklappt", + "mapillaryTrackingProtection": "Der strenge Tracking-Schutz verhindert das Laden von Bildern von Mapillary, weil Mapillary zu Facebook/Meta gehört. Deaktiviere den strengen Tracking-Schutz, wenn du dieses Bild sehen willst.", + "showAnyway": "Bild trotzdem anzeigen", + "strictProtectionDetected": "Ein strenger Tracking-Schutz (oder ein anderer Inhaltsblocker) wurde erkannt und hat vielleicht den Zugriff auf dieses Bild gesperrt." }, "importInspector": { "title": "Importhinweise überprüfen und verwalten" @@ -899,4 +924,4 @@ "startsWithQ": "Ein Wikidata-Identifikator beginnt mit Q und wird von einer Zahl gefolgt" } } -} \ No newline at end of file +} From 87dd725e71280bac3e60d44b0793811b52ca49ec Mon Sep 17 00:00:00 2001 From: ERyPTION Date: Wed, 10 Sep 2025 06:21:13 +0000 Subject: [PATCH 02/33] Translated using Weblate (Danish) Currently translated at 100.0% (482 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/da/ --- langs/themes/da.json | 94 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 2 deletions(-) diff --git a/langs/themes/da.json b/langs/themes/da.json index 5ef95945e..eede8494c 100644 --- a/langs/themes/da.json +++ b/langs/themes/da.json @@ -646,6 +646,13 @@ "grb-reference": { "render": "Er blevet importeret fra GRB, referencenummeret er {source:geometry:ref}" } + }, + "title": { + "mappings": { + "0": { + "then": "Bygningsdel" + } + } } }, "1": { @@ -1375,7 +1382,7 @@ }, "transit": { "description": "Planlæg din rejse ved hjælp af det offentlige transportsystem.", - "title": "Busruter" + "title": "Transportruter" }, "trees": { "description": "Kortlæg alle træerne!", @@ -1516,5 +1523,88 @@ } }, "title": "Vinterservice" + }, + "zhv": { + "layers": { + "0": { + "tagRenderings": { + "import": { + "render": { + "special": { + "text": "Tilføj dette stop" + } + } + }, + "name": { + "render": "Dette stop hedder {Name}" + }, + "tag-hint": { + "render": "Dette stop får følgende tags: {_tags}" + }, + "closest_stop": { + "render": "Det nærmeste stoppested i OSM er {_closest_osm_stop_name}." + }, + "id": { + "render": "ID'et for dette stop er {_ifopt}" + }, + "imported": { + "render": "Dette stop er (sandsynligvis) allerede tilføjet. Se punktet." + } + }, + "title": { + "render": "Offentlig transportstop i ZHV" + }, + "name": "Offentlige trafikstoppesteder i ZHV" + }, + "1": { + "override": { + "name": "Stoppesteder for offentlig transport i OSM", + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "Dette stoppested bruges til buskørsel." + }, + "3": { + "then": "Dette stoppested bruges til metrotransport." + }, + "4": { + "then": "Dette stoppested bruges til sporvognstransport." + }, + "5": { + "then": "Dette stoppested bruges til færgetransport." + }, + "1": { + "then": "Dette stop bruges til togtransport." + }, + "2": { + "then": "Dette stoppested bruges til letbanetransport." + } + }, + "question": "Hvilke transporttyper bruges denne stoppested til?" + }, + "1": { + "question": "Hvad er IFOPT-referencen for dette stop?", + "freeform": { + "placeholder": "f.eks. NL:Q:15003950 eller de:03457:15801::2" + }, + "render": "IFOPT-referencen for dette stop er {ref:IFOPT}." + }, + "3": { + "render": { + "special": { + "message": "Føj IFOPT til dette stop" + } + } + }, + "2": { + "render": "Der er et ZHV-stoppested i nærheden.: {_closest_zhv_stop_name}." + } + } + } + } + }, + "title": "ZHV-importværktøj", + "description": "Lille tema, der gør det muligt at importere busstoppesteder fra Zentrales Haltestellenverzeichnis i Tyskland." } -} \ No newline at end of file +} From c0b5a1c7170a6e48deb9feffdb2232d648348c2a Mon Sep 17 00:00:00 2001 From: Patchanka Date: Thu, 11 Sep 2025 08:11:40 +0000 Subject: [PATCH 03/33] Translated using Weblate (French) Currently translated at 71.1% (343 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/fr/ --- langs/themes/fr.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/langs/themes/fr.json b/langs/themes/fr.json index d10672c9e..e4a2c7add 100644 --- a/langs/themes/fr.json +++ b/langs/themes/fr.json @@ -1106,5 +1106,9 @@ "description": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même.", "shortDescription": "Une carte des poubelles", "title": "Poubelles" + }, + "architecture": { + "description": "Une carte montrant les styles architecturaux des bâtiments", + "title": "Bâtiments avec un style architectural" } -} \ No newline at end of file +} From e335fe3345f83c60adcc3c4e41e06e1aa215320a Mon Sep 17 00:00:00 2001 From: ERyPTION Date: Wed, 10 Sep 2025 06:12:56 +0000 Subject: [PATCH 04/33] Translated using Weblate (Danish) Currently translated at 100.0% (759 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/da/ --- langs/da.json | 47 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 6 deletions(-) diff --git a/langs/da.json b/langs/da.json index a865c34c8..763ec675b 100644 --- a/langs/da.json +++ b/langs/da.json @@ -9,7 +9,11 @@ "getOnObtanium": "Hent på Obtainium", "noPlayServices": "Appen fungerer uden Google Play Services", "older": "Se ældre builds", - "title": "MapComplete Android-app" + "title": "MapComplete Android-app", + "getOnGoogle": "Download MapComplete i Google Playstore", + "intro": "MapComplete er tilgængelig som Android-app i forskellige app-butikker. Installation af app-versionen gør det nemmere at få adgang til MapComplete og bruger mindre internet. Webversionen har dog de samme funktioner.", + "legacyExplanation": "På grund af restriktioner fra Google er det ikke muligt at kompilere en identisk APK til nyere og ældre Android-versioner.\nHvis installationen via F-Droid, Google Play, Obtainium eller installationen af 'seneste' ovenfor mislykkedes, kan du prøve en af de ældre versioner af Android, som er tilgængelige nedenfor.", + "legacyHeader": "Builds til ældre Android-telefoner" }, "centerMessage": { "allFilteredAway": "Ingen objekter i visningen opfylder alle filtre", @@ -361,7 +365,8 @@ "thursday": "På torsdag {ranges}", "tuesday": "På tirsdag {ranges}", "unknown": "Åbningstiderne er ukendte", - "wednesday": "På onsdag {ranges}" + "wednesday": "På onsdag {ranges}", + "ph": "Helligdage" }, "pdf": { "attr": "Kortdata © OpenStreetMap Contributors, bearbejdelser under ODbL", @@ -545,7 +550,14 @@ "readMore": "Læs resten af artiklen", "searchToShort": "Din søgeforespørgsel er for kort. Indtast en længere tekst", "searchWikidata": "Søg på Wikidata" - } + }, + "points_in_time": { + "weekdays": "På hverdage", + "weekends": "I weekenden", + "closed": "Lukket", + "daily": "Hver dag" + }, + "welcomeBack": "Velkommen tilbage" }, "hotkeyDocumentation": { "action": "Handling", @@ -664,7 +676,8 @@ }, "input_helpers": { "distance": { - "setFirst": "Mål fra nuværende position" + "setFirst": "Mål fra nuværende position", + "measureAgain": "Start ny måling fra nuværende placering" } }, "inspector": { @@ -832,7 +845,10 @@ "too_long": "Højst {max} tegn er tilladt. Din anmeldelse har {amount} tegn.", "tos": "Hvis du opretter en anmeldelse, accepterer du Mangrove.reviews' servicevilkår og privatlivspolitik", "your_reviews": "Dine tidligere anmeldelser", - "your_reviews_empty": "Vi kunne ikke finde nogen af dine tidligere anmeldelser" + "your_reviews_empty": "Vi kunne ikke finde nogen af dine tidligere anmeldelser", + "editPrivacySettings": "Rediger dine privatlivsindstillinger", + "loadOnce": "Indlæs anmeldelser én gang", + "disabledForPrivacy": "Anmeldelser er deaktiveret på grund af dine privatlivsindstillinger." }, "split": { "cancel": "Afbryd", @@ -944,5 +960,24 @@ "empty": "Indtast venligst nogle wikidata-poster", "startsWithQ": "En wikidata-identifikator starter med Q og efterfølges af et tal" } + }, + "offline": { + "autoExplanationIntro": "Hvad betyder automatisk download af basiskort?", + "date": "Data til kortgenerering", + "deleteAll": "Slet alle basiskort", + "download": "Download område", + "localOnMap": "Offline basiskort på kortet", + "name": "Navn", + "overview": "Oversigt over offline basiskort", + "range": "Zoomområder", + "size": "Størrelse", + "actions": "Handlinger", + "autoCheckmark": "Download automatisk basiskortet, når du browser rundt", + "autoExplanation": "Hvis denne indstilling er markeret, downloader MapComplete automatisk basiskortet til cachen for området. Dette medfører større indledende datamængder, men kræver mindre internet på lang sigt. Hvis du planlægger at besøge et område med dårligere internetforbindelse, kan du også vælge det område, du vil downloade, nedenfor.", + "delete": "Slet basiskort", + "installing": "Data downloades" + }, + "collectionTimes": { + "addTime": "Tilføj tidspunkt" } -} \ No newline at end of file +} From 1882451cc36b65ac7eef3cea162df4f0603b2a18 Mon Sep 17 00:00:00 2001 From: Phoenix Date: Sun, 14 Sep 2025 14:01:37 +0000 Subject: [PATCH 05/33] Translated using Weblate (German) Currently translated at 90.2% (435 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/de/ --- langs/themes/de.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/langs/themes/de.json b/langs/themes/de.json index ea3856719..a80fb7235 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -1438,6 +1438,7 @@ "title": "Winterdienst" }, "historic_aircraft": { - "title": "historische Flugzeuge" + "title": "historische Flugzeuge", + "description": "Eine Karte mit allen historischen, dauerhaft installierten Flugzeugen. Die Flugzeuge können sich in Museen, Kunstwerken oder Gedenkstätten befinden." } -} \ No newline at end of file +} From cdb06094434f6b4010c388fa83a6e8c97b7a3b41 Mon Sep 17 00:00:00 2001 From: Phoenix Date: Thu, 11 Sep 2025 19:27:01 +0000 Subject: [PATCH 06/33] Translated using Weblate (German) Currently translated at 96.5% (733 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/de/ --- langs/de.json | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/langs/de.json b/langs/de.json index d348f8cf5..200429041 100644 --- a/langs/de.json +++ b/langs/de.json @@ -365,7 +365,8 @@ "tuesday": "Am Dienstag {ranges}", "unknown": "Die Öffnungszeiten sind unbekannt", "wednesday": "Am Mittwoch {ranges}", - "ph": "Feiertage" + "ph": "Feiertage", + "open_until": "Schließt am {date}" }, "pdf": { "attr": "Kartendaten © OpenStreetMap Contributors, wiederverwendbar unter ODbL", @@ -644,7 +645,8 @@ "loadingFailed": "Das Laden dieses Bildes hat nicht geklappt", "mapillaryTrackingProtection": "Der strenge Tracking-Schutz verhindert das Laden von Bildern von Mapillary, weil Mapillary zu Facebook/Meta gehört. Deaktiviere den strengen Tracking-Schutz, wenn du dieses Bild sehen willst.", "showAnyway": "Bild trotzdem anzeigen", - "strictProtectionDetected": "Ein strenger Tracking-Schutz (oder ein anderer Inhaltsblocker) wurde erkannt und hat vielleicht den Zugriff auf dieses Bild gesperrt." + "strictProtectionDetected": "Ein strenger Tracking-Schutz (oder ein anderer Inhaltsblocker) wurde erkannt und hat vielleicht den Zugriff auf dieses Bild gesperrt.", + "openOnWebsite": "Öffne das Bild auf {name}" }, "importInspector": { "title": "Importhinweise überprüfen und verwalten" @@ -759,7 +761,8 @@ "poweredByPlantnet": "Bereitgestellt von plantnet.org", "querying": "Abfrage bei plantnet.org mit {length} Fotos", "takeImages": "Machen Sie Fotos vom Baum, um die Baumart automatisch zu erkennen", - "tryAgain": "Wähle eine andere Art" + "tryAgain": "Wähle eine andere Art", + "noPlantDetected": "Auf den Fotos wurden keine Pflanzen erkannt" }, "preset_type": { "question": "Von welcher Art ist dieses Objekt?", @@ -817,7 +820,15 @@ "too_long": "Maximal {max} Zeichen sind erlaubt. Ihre Bewertung hat {amount} Zeichen.", "tos": "Mit der Bewertung stimmen Sie den AGB und den Datenschutzrichtlinien von Mangrove.reviews zu", "your_reviews": "Deine Bewertungen", - "your_reviews_empty": "Keine vorherigen Bewertungen gefunden" + "your_reviews_empty": "Keine vorherigen Bewertungen gefunden", + "deleteConfirm": "Diese Bewertung dauerhaft löschen", + "delete": "Bewertung löschen", + "deleteText": "Das kann nicht rückgängig gemacht werden", + "attribution": "Von Mangrove.reviews", + "loadOnce": "Bewertungen einmalig laden", + "deleteTitle": "Diese Bewertung löschen?", + "edit": "Bewertung bearbeiten", + "editPrivacySettings": "Datenschutzeinstellungen ändern" }, "split": { "cancel": "Abbrechen", @@ -923,5 +934,14 @@ "empty": "Bitte gib einige Wikidata-Einträge ein", "startsWithQ": "Ein Wikidata-Identifikator beginnt mit Q und wird von einer Zahl gefolgt" } + }, + "imageQueue": { + "noFailedImages": "Im Moment warten keine Bilder aufs Hochladen", + "delete": "Lösche dieses Bild", + "intro": "Diese Bilder warten aufs Hochladen", + "menu": "{count} Bilder warten aufs Hochladen", + "retryAll": "Versuche erneut alle Bilder hochzuladehochzuladen", + "confirmDelete": "Bild dauerhaft löschen", + "confirmDeleteTitle": "Dieses Bild löschen?" } } From 40111a05484c3c647e1682f9561fdb2eed1ce284 Mon Sep 17 00:00:00 2001 From: Pauwel02 Date: Fri, 12 Sep 2025 13:05:03 +0000 Subject: [PATCH 07/33] Translated using Weblate (Dutch) Currently translated at 88.8% (674 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/nl/ --- langs/nl.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/langs/nl.json b/langs/nl.json index 5224bf5bc..81d7247c3 100644 --- a/langs/nl.json +++ b/langs/nl.json @@ -635,7 +635,7 @@ "index": { "#": "Deze teksten worden getoond boven de themaknoppen wanneer nog geen thema is ingeladen", "about": "Over MapComplete", - "intro": "Kaarten over verschillende thema's waar je kan aan bijdragen", + "intro": "Kaarten over verschillende thema's waar je aan kan bijdragen", "learnMore": "Lees meer", "logIn": "Log in om andere thema's te zien waar je al in bewerkt hebt", "recentThemes": "Recent bekeken kaarten", @@ -883,4 +883,4 @@ "startsWithQ": "Een wikidata-identificator begint met Q gevolgd door een nummer" } } -} \ No newline at end of file +} From b4bd53de3536c10fd66657b490f2f0782961743a Mon Sep 17 00:00:00 2001 From: mike140 Date: Mon, 22 Sep 2025 15:16:13 +0000 Subject: [PATCH 08/33] Translated using Weblate (Ukrainian) Currently translated at 57.4% (277 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/uk/ --- langs/themes/uk.json | 119 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 116 insertions(+), 3 deletions(-) diff --git a/langs/themes/uk.json b/langs/themes/uk.json index 824401917..9572879cb 100644 --- a/langs/themes/uk.json +++ b/langs/themes/uk.json @@ -391,6 +391,13 @@ } } } + }, + "2": { + "name": "Всі вулиці", + "title": { + "render": "Вулиця" + }, + "description": "Шар для позначення будь-якої вулиці як велосипедної" } }, "shortDescription": "Мапа велодоріжок", @@ -453,6 +460,11 @@ "override": { "=name": "Спортивні місця без етимологічної інформації" } + }, + "8": { + "override": { + "=name": "Парки без інформації про етимологію" + } } }, "shortDescription": "Від чого походить назва топоніма?", @@ -460,7 +472,90 @@ }, "facadegardens": { "shortDescription": "На цій мапі показані фасадні сади з фотографіями та корисною інформацією про орієнтацію, сонячне освітлення та типи рослин.", - "title": "Фасадні сади" + "title": "Фасадні сади", + "layers": { + "0": { + "description": "Фасадні сади", + "name": "Фасадні сади", + "presets": { + "0": { + "description": "Додати фасадний сад", + "title": "фасадний сад" + } + }, + "tagRenderings": { + "facadegardens-description": { + "question": "Додаткова інформація про сад (якщо потрібно і ще не описана вище)", + "render": "Більше деталей: {description}" + }, + "facadegardens-direction": { + "question": "Яка орієнтація саду?", + "render": "Орієнтація: {direction} (де 0=Північ і 90=Схід)" + }, + "facadegardens-edible": { + "mappings": { + "0": { + "then": "Є їстівні рослини" + }, + "1": { + "then": "Немає їстівних рослин" + } + }, + "question": "Чи є якісь їстівні рослини?" + }, + "facadegardens-plants": { + "mappings": { + "0": { + "then": "Є виноградні лози" + }, + "1": { + "then": "Є квітучі рослини" + }, + "2": { + "then": "Є чагарники" + }, + "3": { + "then": "Є рослини, що вкривають землю" + } + }, + "question": "Які рослини тут ростуть?" + }, + "facadegardens-rainbarrel": { + "mappings": { + "1": { + "then": "Немає бочки для дощової води" + }, + "0": { + "then": "Є бочка для дощової води" + } + }, + "question": "Чи встановлено бочку для води для саду?" + }, + "facadegardens-start_date": { + "question": "Коли був побудований сад? (достатньо вказати рік)", + "render": "Дата будівництва саду: {start_date}" + }, + "facadegardens-sunshine": { + "mappings": { + "0": { + "then": "Сад знаходиться на сонячному місці" + }, + "1": { + "then": "Сад знаходиться в півтіні" + }, + "2": { + "then": "Сад знаходиться в тіні" + } + }, + "question": "Сад затінений чи сонячний?" + } + }, + "title": { + "render": "Фасадний сад" + } + } + }, + "description": "href='https://nl.wikipedia.org/wiki/Geveltuin' target=_blank>Фасадні сади, зелені фасади та дерева в місті не лише приносять мир і спокій, але й роблять місто красивішим, збільшують біорізноманіття, створюють охолоджувальний ефект та покращують якість повітря.
Klimaan VZW та Mechelen Klimaatneutraal хочуть створити карту існуючих та нових фасадних садів як приклад для людей, які хочуть створити власний сад, або для міських пішоходів, які люблять природу.
Більше інформації про проект на сайті klimaan.be." }, "fireplace": { "description": "Відкрите місце для розведення багаття або стаціонарне барбекю в офіційному місці.", @@ -472,7 +567,25 @@ }, "fritures": { "description": "На цій мапі ви знайдете свій улюблений заклад з картоплею фрі!", - "title": "Картопля фрі" + "title": "Картопля фрі", + "layers": { + "0": { + "override": { + "filter+": { + "0": { + "options": { + "0": { + "question": "Немає переваг щодо типу масла" + }, + "1": { + "question": "Показувати тільки фритюри з використанням рослинної олії" + } + } + } + } + } + } + } }, "ghostbikes": { "description": "Велосипед-примара — це меморіал велосипедисту, який загинув у дорожньо-транспортній пригоді, у вигляді білого велосипеда, постійно розміщеного поблизу місця аварії.

На цій мапі ви можете побачити всі велосипеди-примари, відомі в OpenStreetMap. Велосипед-примара відсутній? Кожен може додавати або оновлювати інформацію тут — вам потрібно лише мати обліковий запис OpenStreetMap.

На Mastodon існує бот, який публікує щомісячний огляд велосипедів-примар у всьому світі

", @@ -677,4 +790,4 @@ "description": "Ця мапа показує святині та хрести, знайдені на узбіччях доріг і стежок, а також дозволяє додавати нові", "title": "Придорожні святині" } -} \ No newline at end of file +} From 9ec44fa0599f3e6d6df523580ad11b2109c584a0 Mon Sep 17 00:00:00 2001 From: mike140 Date: Tue, 23 Sep 2025 12:58:12 +0000 Subject: [PATCH 09/33] Translated using Weblate (Ukrainian) Currently translated at 81.9% (622 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/uk/ --- langs/uk.json | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/langs/uk.json b/langs/uk.json index 2a30a71ba..d7a500043 100644 --- a/langs/uk.json +++ b/langs/uk.json @@ -7,12 +7,13 @@ "download": "Завантажити додаток", "downloadOnFDroid": "Завантажити MapComplete з F-Droid", "getOnObtanium": "Отримати Obtainium", - "intro": "MapComplete доступний як додаток для Android, який можна завантажити безпосередньо. Ми працюємо над тим, щоб опублікувати його також у FDroid.", + "intro": "MapComplete доступний як додаток для Android у різних магазинах додатків. Встановлення версії додатка спрощує доступ до MapComplete та використовує менше інтернету. Однак веб-версія має ті ж функції.", "legacyExplanation": "Через обмеження Google неможливо скомпілювати ідентичний APK для нових і старих версій Android.\nЯкщо установка через F-Droid, Google Play, Obtainium або установка «останньої» версії вище не вдалася, спробуйте версії для старих версій Android, які доступні нижче.", "legacyHeader": "Збірки для старих телефонів Android", "noPlayServices": "Додаток працює без Google Play Services", "older": "Переглянути старіші версії", - "title": "Додаток MapComplete для Android" + "title": "Додаток MapComplete для Android", + "getOnGoogle": "Завантаження карти завершено в Google Play Store" }, "centerMessage": { "allFilteredAway": "Жоден з обʼєктів на екрані не відповідає усім фільтрам", @@ -31,7 +32,8 @@ "button": "Створити копію", "confirm": "Створити копію у вказаному місці", "intro": "Створення копії призведе до створення нового POI на карті з тими самими властивостями, що й поточний об'єкт.", - "loading": "Створення копії..." + "loading": "Створення копії...", + "title": "Створити копію" }, "delete": { "cancel": "Скасувати", @@ -112,7 +114,7 @@ "intro": "Користувача зустрічає мапа з обʼєктами. При виборі одного з них показується інформація про цей обʼєкт.", "title": "Як виглядає інтерфейс?" }, - "examples": "Існує багато тематичних мап, деякі з них показані тут.\n\nВ Інтернеті є ще багато тематичних мап: про охорону здоровʼя, навігацію в приміщеннях, доступність для людей в інвалідних візках, місця для утилізації відходів, публічні книжкові полиці, пішохідні переходи з райдужним забарвленням… Відкрийте для себе всі ці мапи на mapcomplete.org", + "examples": "Існує багато тематичних карт, деякі з яких показано тут.\n\nВ Інтернеті є ще багато тематичних карт: про охорону здоров'я, навігацію в приміщеннях, доступність для інвалідних візків, пункти утилізації відходів, громадські книжкові шафи, пішохідні переходи з веселковим малюнком тощо. Знайдіть їх усі на mapcomplete.org", "fakeui": { "add_images": "Додавання зображень у кілька кліків", "attributes": "Показує атрибути у дружній формі", @@ -124,7 +126,7 @@ "frontParagraph": "MapComplete — це простий у використанні вебзастосунок для збору геоданих в OpenStreetMap, що дозволяє збирати та управляти відповідними даними спільно, відкрито та використовувати їх там де потрібно.\n\nНові категорії та атрибути можуть бути додані за запитом.", "lines_too": "Лінії та полігони також показуються. До цих обʼєктів також можна додавати та оновлювати атрибути та зображення.", "mapcomplete": { - "customize": "MapComplete може бути адаптований до ваших потреб, з новими шарами мапи, новими функціональними можливостями або стилізований під кольори та шрифт вашої організації.\nМи також маємо досвід проведення кампаній зі збору геоданих на основі краудсорсингу.\nЗверніться за пропозицією на pietervdvn@posteo.net.", + "customize": "MapComplete можна адаптувати до ваших потреб, додавши нові шари карти, нові функції або стилізувавши їх під кольори та шрифт вашої організації.\nМи також маємо досвід запуску кампаній для краудсорсингу геоданих.\nЗвертайтеся за адресою pietervdvn@posteo.net для отримання цінової пропозиції.", "intro": "MapComplete є вебсайтом, який містить {mapCount} інтерактивних мап. Кожна мапа дозволяє додавати або оновлювати інформацію. Вона має багато можливостей:", "li0": "Показати, де знаходяться Точки інтересу", "li1": "Додайте нові точки та оновіть інформацію про наявні", @@ -801,5 +803,8 @@ "description": "посилання на веб-сайт", "spamSite": "{host} вважається неякісним веб-сайтом. Використання цього веб-сайту заборонено." } + }, + "collectionTimes": { + "addTime": "Додати момент" } -} \ No newline at end of file +} From 6df5562d11ef19bb773959ecf5bfb3884e0775e6 Mon Sep 17 00:00:00 2001 From: Phoenix Date: Wed, 24 Sep 2025 07:04:34 +0000 Subject: [PATCH 10/33] Translated using Weblate (German) Currently translated at 91.2% (440 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/de/ --- langs/themes/de.json | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/langs/themes/de.json b/langs/themes/de.json index a80fb7235..db6b71cb0 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -891,6 +891,17 @@ "version": { "question": "Welche Version von MapComplete wurde verwendet, um diese Änderung vorzunehmen?", "render": "Erstellt mit {editor}" + }, + "platform": { + "mappings": { + "0": { + "then": "Im Internet erstellt" + }, + "1": { + "then": "Erstellt mit der Android-App" + } + }, + "question": "Mit welcher Plattform wurde die Änderung vorgenommen?" } }, "title": { @@ -1087,6 +1098,11 @@ "override": { "name": "Hundefreundliche Geschäfte" } + }, + "6": { + "override": { + "name=": "Hundefreundliche Trinkstellen" + } } }, "title": "Haustiere" @@ -1440,5 +1456,20 @@ "historic_aircraft": { "title": "historische Flugzeuge", "description": "Eine Karte mit allen historischen, dauerhaft installierten Flugzeugen. Die Flugzeuge können sich in Museen, Kunstwerken oder Gedenkstätten befinden." + }, + "zhv": { + "layers": { + "1": { + "override": { + "tagRenderings+": { + "1": { + "freeform": { + "placeholder": "z. B. NL:Q:15003950 oder de:03457:15801::2" + } + } + } + } + } + } } } From 17b9ae982c5f33da6e8466deab43dfd0e881eb79 Mon Sep 17 00:00:00 2001 From: mike140 Date: Tue, 23 Sep 2025 13:10:54 +0000 Subject: [PATCH 11/33] Translated using Weblate (Ukrainian) Currently translated at 58.2% (281 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/uk/ --- langs/themes/uk.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/langs/themes/uk.json b/langs/themes/uk.json index 9572879cb..fef059748 100644 --- a/langs/themes/uk.json +++ b/langs/themes/uk.json @@ -357,6 +357,9 @@ "render": "Цей велосипедний вузол востаннє опитувався на {survey:date}" } } + }, + "title": { + "render": "Велосипедний вузол" } }, "2": { @@ -376,7 +379,8 @@ } } } - } + }, + "title": "Мережі велосипедних вузлів" }, "cyclestreets": { "description": "Велодорога — це шлях, на якому моторизованому транспорту заборонено обганяти велосипедистів. Вони позначені спеціальним дорожнім знаком. Велодоріжки можна знайти в Нідерландах і Бельгії, а також у Німеччині та Франції. ", @@ -389,7 +393,8 @@ "0": { "then": "{name} скоро стане велосипедною доріжкою" } - } + }, + "render": "Майбутня велодоріжка" } }, "2": { From 8e62911d41c9569285523c9ce061c72234468a4b Mon Sep 17 00:00:00 2001 From: Phoenix Date: Wed, 24 Sep 2025 07:16:44 +0000 Subject: [PATCH 12/33] Translated using Weblate (German) Currently translated at 96.5% (733 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.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 200429041..e917c2d02 100644 --- a/langs/de.json +++ b/langs/de.json @@ -422,7 +422,7 @@ "searching": "Suchen …", "searchShort": "Suche…" }, - "searchAnswer": "Option suchen.", + "searchAnswer": "Option suchen", "seeIndex": "Siehe Übersicht mit allen thematischen Karten", "share": "Teilen", "sharescreen": { From ab173e06de1d850cf20282ba3eea645e0150ec76 Mon Sep 17 00:00:00 2001 From: mike140 Date: Tue, 23 Sep 2025 15:54:31 +0000 Subject: [PATCH 13/33] Translated using Weblate (Ukrainian) Currently translated at 84.4% (641 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/uk/ --- langs/uk.json | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/langs/uk.json b/langs/uk.json index d7a500043..bdffa6c33 100644 --- a/langs/uk.json +++ b/langs/uk.json @@ -178,12 +178,13 @@ "stillLoading": "Дані все ще завантаження. Будь ласка, почекайте трохи, перш ніж додати новий обʼєкт.", "title": "Додати новий об'єкт", "wrongType": "Цей обʼєкт не є, а ні точкою, а ні лінією і не може бути імпортований", - "zoomInFurther": "Наблизьтесь ще більше, щоб додати об'єкт", + "zoomInFurther": "Вам потрібно спочатку збільшити масштаб, якщо ви хочете додати об'єкт", "zoomInMore": "Наблизьтесь ближче для імпортування обʼєкта" }, "apply_button": { "appliedOnAnotherObject": "Обʼєкт {id} отримає {tags}", - "isApplied": "Зміни застосовано" + "isApplied": "Зміни застосовано", + "applying": "Застосування змін" }, "attribution": { "attributionBackgroundLayer": "Поточний фоновий шар {name}", @@ -218,7 +219,11 @@ "seeOnMapillary": "Переглянути зображення на Mapillary", "themeBy": "Тему підтримує {author}", "title": "Авторське право", - "translatedBy": "MapComplete переклали {contributors} та {hiddenCount} інших учасників" + "translatedBy": "MapComplete переклали {contributors} та {hiddenCount} інших учасників", + "nlNetMapComplete": "Дізнайтеся більше на сторінці проекту NlNet", + "fundByNlNet": "фонд, заснований NLnet", + "ngiProgram": "за фінансової підтримки програми Європейської Комісії «Інтернет наступного покоління».", + "ngiZero": "Цей проєкт фінансується через NGI0 Entrust" }, "back": "Назад", "backToIndex": "Переглянути всі тематичні мапи", @@ -295,7 +300,8 @@ }, "levelSelection": { "addNewOnLevel": "Чи нова точка знаходиться на рівні {level}?", - "confirmLevel": "Так, додати {preset} на рівні {level}" + "confirmLevel": "Так, додати {preset} на рівні {level}", + "cancel": "Переглянути всі рівні" }, "loading": "Завантаження…", "loadingTheme": "Завантаження {theme}…", @@ -338,9 +344,9 @@ "closed_until": "Відкривається о {date}", "error": "Не вдалося розібрати години роботи", "error_loading": "Помилка: не вдалося візуалізувати ці години роботи.", - "friday": "У пʼятницю {ranges}", + "friday": "У П'ятницю {ranges}", "loadingCountry": "Визначення країни…", - "monday": "У понеділок {ranges}", + "monday": "У Понеділок {ranges}", "not_all_rules_parsed": "Ці години роботи є складними. У вхідному елементі ігноруються наступні правила:", "on_weekdays": "Працює по буднях {ranges}", "openTill": "до тих пір, поки", @@ -353,12 +359,14 @@ "ph_open_as_usual": "відчинено, як завжди", "ranges": "з {starttime} до {endtime}", "rangescombined": "{range0} та {range1}", - "saturday": "У суботу {ranges}", - "sunday": "У неділю {ranges}", - "thursday": "У четвер {ranges}", - "tuesday": "У вівторок {ranges}", + "saturday": "У Суботу {ranges}", + "sunday": "У Неділю {ranges}", + "thursday": "У Четвер {ranges}", + "tuesday": "У Вівторок {ranges}", "unknown": "Години роботи невідомі", - "wednesday": "У середу {ranges}" + "wednesday": "У Середу {ranges}", + "ph": "Державні свята", + "open_until": "Закривається о {date}" }, "pdf": { "attr": "Дані мапи © Учасники OpenStreetMap, можуть бути використані на умовах ODbL", @@ -541,6 +549,11 @@ "readMore": "Прочитайте решту статті", "searchToShort": "Ваш пошуковий запит занадто короткий, введіть довший текст", "searchWikidata": "Пошук у Вікіданих" + }, + "points_in_time": { + "closed": "Зачинено", + "daily": "Щодня", + "weekdays": "У будні дні" } }, "hotkeyDocumentation": { From be68c7eb71b5bf07f8c7d1ee1f0a6c5b229d798e Mon Sep 17 00:00:00 2001 From: mike140 Date: Sun, 28 Sep 2025 14:01:24 +0000 Subject: [PATCH 14/33] Translated using Weblate (Ukrainian) Currently translated at 89.8% (682 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/uk/ --- langs/uk.json | 61 +++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 54 insertions(+), 7 deletions(-) diff --git a/langs/uk.json b/langs/uk.json index bdffa6c33..f90247e7f 100644 --- a/langs/uk.json +++ b/langs/uk.json @@ -599,7 +599,11 @@ "copyright": "Зображення містить контент, захищений авторським правом", "inappropriate": "Це зображення є неприйнятним (містить оголену натуру, заклики до ненависті або не є streetview)", "other": "Іншу причину, будь ласка, вкажіть", - "privacy": "На фото - приватна власність" + "privacy": "На фото - приватна власність", + "blur_excess": "Занадто багато розмиття, що робить зображення непридатним для використання", + "blur_missing": "Одне або декілька облич розмиті неправильно", + "mislocated": "Це зображення знаходиться в неправильному місці", + "picture_low_quality": "Це зображення має низьку якість і непридатне для використання" }, "requestDeletion": "Запит на видалення зображення", "title": "Чому це зображення слід назавжди видалити?" @@ -621,7 +625,7 @@ "done": "{count} зображення успішно завантажено. Дякуємо!", "partiallyDone": "{count} зображень завантажується, {done} зображень виконано…", "someFailed": "Вибачте, не вдалося завантажити {count} зображень", - "uploading": "{count} зображень завантажуються…" + "uploading": "Завантажуються зображення ({count})…" }, "noBlur": "Зображення не будуть розмиті. Не фотографуйте людей", "one": { @@ -631,7 +635,13 @@ "uploading": "Ваше зображення завантажується…" } }, - "uploadFailed": "Не вдалося завантажити ваше фото. Ви підключені до Інтернету і дозволяєте сторонні API? Браузер Brave або плагін uMatrix можуть їх блокувати." + "uploadFailed": "Не вдалося завантажити ваше фото. Ви підключені до Інтернету і дозволяєте сторонні API? Браузер Brave або плагін uMatrix можуть їх блокувати.", + "openOnWebsite": "Відкрити це зображення на {name}", + "showAnyway": "Показати зображення все одно", + "loadingFailed": "Не вдалося завантажити це зображення", + "mapillaryTrackingProtection": "Суворий захист від відстеження блокує завантаження зображень з Mapillary, оскільки Mapillary належить Facebook/Meta. Вимкніть суворий захист відстеження, якщо хочете переглянути це зображення.", + "reported": "Це зображення повідомлено, і воно може містити шкідливий контент", + "strictProtectionDetected": "Виявлено суворий захист від відстеження (або інший блокувальник контенту), який, можливо, заблокував доступ до цього зображення." }, "importInspector": { "title": "Перевіряйте та керуйте імпортними нотатками" @@ -721,7 +731,8 @@ "reopenNoteAndComment": "Повторно відкрити нотатку та коментар", "textNeeded": "Введіть описовий текст, щоб створити нотатку", "typeText": "Введіть текст, щоб додати коментар", - "warnAnonymous": "Ви не ввійшли в систему. Ми не зможемо зв'язатися з вами, щоб вирішити вашу проблему." + "warnAnonymous": "Ви не ввійшли в систему. Ми не зможемо зв'язатися з вами, щоб вирішити вашу проблему.", + "closeNote": "Закрити нотатку" }, "plantDetection": { "back": "Повернутися до огляду видів", @@ -735,7 +746,8 @@ "li1": "зробіть фотографію, на якій зображений один листок", "li2": "зробіть фотографію, на якій видно кору", "li3": "сфотографуйте квіти", - "li4": "сфотографуйте плоди" + "li4": "сфотографуйте плоди", + "title": "Які знімки зробити для автоматичного виявлення?" }, "loadingWikidata": "Завантаження інформації про {species}…", "matchPercentage": "{match}% збігу", @@ -745,7 +757,8 @@ "poweredByPlantnet": "На основі plantnet.org", "querying": "Запит до plantnet.org із зображеннями {length}", "takeImages": "Зробіть знімок дерева, щоб автоматично визначити його тип", - "tryAgain": "Виберіть інший вид" + "tryAgain": "Виберіть інший вид", + "noPlantDetected": "На цих зображеннях не було виявлено жодної рослини" }, "preset_type": { "question": "Якого типу цей об'єкт?", @@ -773,7 +786,10 @@ "title": "Політика конфіденційності", "tracking": "Щоб отримати певну інформацію про те, хто відвідує наш веб-сайт, збирається певна технічна інформація. Це включає країну, з якої ви відвідали веб-сторінку, веб-сайт, який перевів вас на MapComplete, тип вашого пристрою та розмір екрана. Файл cookie розміщується на вашому пристрої, щоб вказати, що ви відвідали MapComplete раніше сьогодні. Ці дані недостатньо докладні, щоб ідентифікувати вашу особу. Ця статистика доступна для будь-кого лише в сукупності та загальнодоступна для всіх", "trackingTitle": "Статистичні дані", - "whileYoureHere": "Ви дбаєте про конфіденційність?" + "whileYoureHere": "Ви дбаєте про конфіденційність?", + "browsingHistoryNotLoggedIn": "Увійдіть, щоб змінити налаштування", + "browsingHistoryLoggedIn": "Ваші поточні налаштування:", + "browsingHistoryIntro": "MapComplete зберігатиме теми та місця, які ви відвідували раніше, щоб ви могли швидко повернутися до них. Якщо ви не ввійшли в систему, ця інформація зберігатиметься на вашому пристрої. Якщо ви ввійшли в систему, її можна синхронізувати з OpenStreetMap, щоб ви могли переглядати свою історію й на інших пристроях." }, "reviews": { "affiliated_reviewer_warning": "(Партнерський огляд)", @@ -819,5 +835,36 @@ }, "collectionTimes": { "addTime": "Додати момент" + }, + "offline": { + "size": "Розмір", + "autoExplanationIntro": "Що означає автоматичне завантаження базових карт?", + "date": "Дані для створення карт", + "delete": "Видалити базову карту", + "deleteAll": "Видалити всі базові карти", + "download": "Область завантаження", + "installing": "Дані завантажуються", + "localOnMap": "Базові карти офлайн на карті", + "name": "Ім'я", + "range": "Діапазони масштабування", + "actions": "Дії", + "autoCheckmark": "Автоматично завантажувати базову карту під час перегляду", + "autoExplanation": "Якщо позначено, MapComplete автоматично завантажить базову карту до кешу для цієї області. Це призводить до більшого початкового завантаження даних, але потребує менше інтернету в довгостроковій перспективі. Якщо ви плануєте відвідати регіон з меншим підключенням, ви також можете вибрати область, яку хочете завантажити, нижче.", + "overview": "Огляд офлайн-базових карт" + }, + "imageQueue": { + "delete": "Видалити це зображення", + "menu": "Черга завантаження зображень ({count})", + "noFailedImages": "Наразі в черзі завантаження немає зображень", + "intro": "Наступні зображення поставлені в чергу на завантаження", + "retryAll": "Повторити спробу завантаження всіх зображень", + "confirmDelete": "Видалити це зображення назавжди", + "confirmDeleteTitle": "Видалити це зображення?" + }, + "input_helpers": { + "distance": { + "measureAgain": "Почати нове вимірювання з поточного місця розташування", + "setFirst": "Вимірювання від поточного місцезнаходження" + } } } From 95ca3c07638f18eb50490e2e256c13aabb6a1d2c Mon Sep 17 00:00:00 2001 From: Smarzaro Date: Mon, 29 Sep 2025 15:27:33 +0000 Subject: [PATCH 15/33] Translated using Weblate (Portuguese (Brazil)) Currently translated at 12.5% (95 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/pt_BR/ --- langs/pt_BR.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/langs/pt_BR.json b/langs/pt_BR.json index 214d692c7..dfc47e9be 100644 --- a/langs/pt_BR.json +++ b/langs/pt_BR.json @@ -37,7 +37,7 @@ "pleaseLogin": "Por favor, faça o login para adicionar um novo ponto", "stillLoading": "Os dados ainda estão sendo carregados. Aguarde um pouco antes de adicionar um novo ponto.", "title": "Adicionar um novo ponto?", - "zoomInFurther": "Aumente mais o zoom para adicionar um ponto." + "zoomInFurther": "Aumente o zoom se quiser adicionar uma feição" }, "backToIndex": "Volte para a visão geral com todos os mapas temáticos", "backgroundMap": "Mapa de fundo", @@ -68,8 +68,8 @@ "returnToTheMap": "Voltar ao mapa", "save": "Salvar", "search": { - "error": "Algo deu errado…", - "nothing": "Nada encontrado…", + "error": "Algo deu errado.", + "nothing": "Nada encontrado.", "search": "Pesquise um local", "searching": "Procurando…" }, @@ -134,4 +134,4 @@ "title": "{count} comentários", "tos": "Se você criar um comentário, você concorda com o TOS e a política de privacidade de Mangrove.reviews " } -} \ No newline at end of file +} From 4969d0db39110639a7be15aeacb4ab2f6abd2c52 Mon Sep 17 00:00:00 2001 From: Smarzaro Date: Tue, 30 Sep 2025 04:10:01 +0000 Subject: [PATCH 16/33] Translated using Weblate (Portuguese (Brazil)) Currently translated at 3.1% (15 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/pt_BR/ --- langs/themes/pt_BR.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/langs/themes/pt_BR.json b/langs/themes/pt_BR.json index f73157758..ffcd32c64 100644 --- a/langs/themes/pt_BR.json +++ b/langs/themes/pt_BR.json @@ -40,5 +40,8 @@ "trees": { "description": "Mapeie todas as árvores!", "title": "Árvores" + }, + "bicycle_rental": { + "description": "Neste mapa, você encontrará as diversas estações de aluguel de bicicletas, conforme são conhecidas pelo OpenStreetMap" } -} \ No newline at end of file +} From 9a0ae15a8830ce03fbe1283677a205f561920274 Mon Sep 17 00:00:00 2001 From: Smarzaro Date: Tue, 30 Sep 2025 04:04:40 +0000 Subject: [PATCH 17/33] Translated using Weblate (Portuguese (Brazil)) Currently translated at 12.5% (95 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/pt_BR/ --- langs/pt_BR.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/langs/pt_BR.json b/langs/pt_BR.json index dfc47e9be..46d2f2eff 100644 --- a/langs/pt_BR.json +++ b/langs/pt_BR.json @@ -7,7 +7,7 @@ }, "communityIndex": { "available": "Esta comunidade fala {native}", - "intro": "Entre em contato com outras pessoas para conhecê-las, aprender com elas,...", + "intro": "Entre em contato com outras pessoas para conhecê-las, aprender com elas, …", "title": "índice da comunidade" }, "delete": { @@ -36,7 +36,7 @@ "openLayerControl": "Abra a caixa de controle da camada", "pleaseLogin": "Por favor, faça o login para adicionar um novo ponto", "stillLoading": "Os dados ainda estão sendo carregados. Aguarde um pouco antes de adicionar um novo ponto.", - "title": "Adicionar um novo ponto?", + "title": "Adicionar uma nova feição", "zoomInFurther": "Aumente o zoom se quiser adicionar uma feição" }, "backToIndex": "Volte para a visão geral com todos os mapas temáticos", @@ -64,7 +64,7 @@ "ph_not_known": " ", "ph_open": "aberto" }, - "pickLanguage": "Escolha um idioma: ", + "pickLanguage": "Escolha um idioma", "returnToTheMap": "Voltar ao mapa", "save": "Salvar", "search": { @@ -119,7 +119,7 @@ }, "index": { "#": "Estes textos são mostrados acima dos botões do tema quando nenhum tema é carregado", - "intro": "MapComplete é um visualizador e editor do OpenStreetMap, que mostra informações sobre um tema específico.", + "intro": "Mapas sobre vários temas para os quais você pode contribuir", "title": "Bem-vindo(a) ao MapComplete" }, "plantDetection": { @@ -129,7 +129,7 @@ "affiliated_reviewer_warning": "(Revisão de afiliados)", "i_am_affiliated": "Eu sou afiliado a este objeto

Verifique se você é proprietário, criador, funcionário, …
", "no_reviews_yet": "Não há comentários ainda. Seja o primeiro a escrever um e ajude a abrir os dados e os negócios!", - "saved": "Comentário salvo. Obrigado por compartilhar!", + "saved": "Avaliação salva. Obrigado por compartilhar!", "saving_review": "Salvando…", "title": "{count} comentários", "tos": "Se você criar um comentário, você concorda com o TOS e a política de privacidade de Mangrove.reviews " From ed34e1efb2a972b4e53765ad74de121e9f477403 Mon Sep 17 00:00:00 2001 From: Pau Nofuentes Date: Wed, 1 Oct 2025 10:53:09 +0000 Subject: [PATCH 18/33] Translated using Weblate (Catalan) Currently translated at 65.7% (499 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/ca/ --- langs/ca.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/langs/ca.json b/langs/ca.json index 388c3c734..f8acc661f 100644 --- a/langs/ca.json +++ b/langs/ca.json @@ -670,5 +670,12 @@ "wikidata": { "description": "Un identificador de Wikidata" } + }, + "app": { + "getOnObtanium": "Obté a Obtainium", + "download": "Descarrega l'aplicació", + "back": "Torna a MapComplete", + "downloadOnFDroid": "Descarrega MapComplete a F-Droid", + "getOnGoogle": "Descarrega MapComplete a la Google Playstore" } -} \ No newline at end of file +} From b465c24ca5f5d1407502c96852d83d6c4cdac0c1 Mon Sep 17 00:00:00 2001 From: kxeess Date: Wed, 1 Oct 2025 16:55:29 +0000 Subject: [PATCH 19/33] Translated using Weblate (Russian) Currently translated at 18.1% (138 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/ru/ --- langs/ru.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/langs/ru.json b/langs/ru.json index c84b23017..64c68ad50 100644 --- a/langs/ru.json +++ b/langs/ru.json @@ -209,5 +209,8 @@ "wikidata": { "description": "Идентификатор Wikidata" } + }, + "app": { + "download": "Скачать приложение" } -} \ No newline at end of file +} From 42c9581f8320d86c642a88dd1e6b771dfc037e99 Mon Sep 17 00:00:00 2001 From: Pau Nofuentes Date: Wed, 1 Oct 2025 10:48:29 +0000 Subject: [PATCH 20/33] Translated using Weblate (Catalan) Currently translated at 69.2% (334 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/ca/ --- langs/themes/ca.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/langs/themes/ca.json b/langs/themes/ca.json index 6dc6023d2..4d132cefb 100644 --- a/langs/themes/ca.json +++ b/langs/themes/ca.json @@ -687,7 +687,7 @@ "title": "Un mapa de mapes" }, "maxspeed": { - "description": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera. Si falta una velocitat màxima o és incorrecta, podeu corregir-la aquí.", + "description": "Aquest mapa mostra la velocitat màxima legalment permesa a cada carretera. Si falta una velocitat màxima o és incorrecta, podeu corregir-la aquí.", "shortDescription": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera.", "title": "Velocitat" }, @@ -1020,8 +1020,8 @@ "title": "Brossa" }, "waste_basket": { - "description": "A aquest mapa trobaràs les papereres a prop teua. Si falta una paperera al mapa pots afegir-la tu mateix", + "description": "A aquest mapa trobaràs les papereres a prop teua. Si falta una paperera al mapa pots afegir-la tu mateix.", "shortDescription": "Un mapa amb papereres", "title": "Papepera" } -} \ No newline at end of file +} From aad5a04855e15287c7caf374709ecb20767853c9 Mon Sep 17 00:00:00 2001 From: kxeess Date: Wed, 1 Oct 2025 16:53:09 +0000 Subject: [PATCH 21/33] Translated using Weblate (Russian) Currently translated at 20.7% (100 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/ru/ --- langs/themes/ru.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/langs/themes/ru.json b/langs/themes/ru.json index 25285f22c..492760686 100644 --- a/langs/themes/ru.json +++ b/langs/themes/ru.json @@ -1,6 +1,7 @@ { "advertising": { - "title": "Реклама" + "title": "Реклама", + "description": "" }, "aed": { "description": "На этой карте вы можете найти и отметить ближайшие дефибрилляторы", @@ -276,4 +277,4 @@ "waste_basket": { "title": "Корзины для мусора" } -} \ No newline at end of file +} From a72041c648d7aeccc61b44697dca0a28957ec55b Mon Sep 17 00:00:00 2001 From: Weblate Date: Thu, 2 Oct 2025 12:48:27 +0000 Subject: [PATCH 22/33] Update translation files Updated by "Remove blank strings" hook in Weblate. Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/ --- langs/themes/ru.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/langs/themes/ru.json b/langs/themes/ru.json index 492760686..c498483ac 100644 --- a/langs/themes/ru.json +++ b/langs/themes/ru.json @@ -1,7 +1,6 @@ { "advertising": { - "title": "Реклама", - "description": "" + "title": "Реклама" }, "aed": { "description": "На этой карте вы можете найти и отметить ближайшие дефибрилляторы", From 0b184f578fc0325dea7676676eaa1ddd9b9e83e9 Mon Sep 17 00:00:00 2001 From: mike140 Date: Fri, 3 Oct 2025 20:30:07 +0000 Subject: [PATCH 23/33] Translated using Weblate (Ukrainian) Currently translated at 99.7% (757 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/uk/ --- langs/uk.json | 139 +++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 125 insertions(+), 14 deletions(-) diff --git a/langs/uk.json b/langs/uk.json index f90247e7f..ef330ab0d 100644 --- a/langs/uk.json +++ b/langs/uk.json @@ -408,20 +408,21 @@ "deleteThemeHistory": "Видалити раніше відвідані теми", "editSearchSyncSettings": "Редагування налаштувань синхронізації", "editThemeSync": "Редагування налаштувань синхронізації", - "error": "Щось пішло не так…", + "error": "Щось пішло не так.", "instructions": "Використовуйте рядок пошуку вище для пошуку місцезнаходжень, фільтрів або інших тематичних мап", "locations": "Локації", "nMoreFilters": "ще {n}", - "nothing": "Нічого не знайдено…", + "nothing": "Нічого не знайдено.", "nothingFor": "Немає результатів для {term}", "otherMaps": "Інші карти", "pickFilter": "Виберіть фільтр", "recentThemes": "Нещодавно відвідані мапи", "recents": "Нещодавно відвідані місця", "search": "Пошук місцезнаходження", - "searching": "Пошук…" + "searching": "Пошук…", + "searchShort": "Пошук…" }, - "searchAnswer": "Знайдіть варіант…", + "searchAnswer": "Пошук варіанта", "seeIndex": "Дивіться огляд з усіма тематичними мапами", "share": "Поділитися", "sharescreen": { @@ -553,8 +554,10 @@ "points_in_time": { "closed": "Зачинено", "daily": "Щодня", - "weekdays": "У будні дні" - } + "weekdays": "У будні дні", + "weekends": "У вихідні" + }, + "welcomeBack": "Ласкаво просимо назад" }, "hotkeyDocumentation": { "action": "Дія", @@ -576,10 +579,12 @@ "selectSearch": "Виберіть рядок пошуку, щоб знайти місцезнаходження", "shakePhone": "Трясіть телефоном", "title": "Гарячі клавіші", - "translationMode": "Увімкнути або вимкнути режим перекладу" + "translationMode": "Увімкнути або вимкнути режим перекладу", + "addNew": "Відкрийте діалогове вікно, щоб додати нову точку в центрі карти", + "homeLocation": "Перейти до вашого домашнього місцезнаходження. Працює, лише якщо ви вказали своє домашнє місцезнаходження в налаштуваннях користувача" }, "image": { - "addPicture": "Додати фото", + "addPicture": "Зробіть фотографію", "doDelete": "Видалити зображення", "isDeleted": "Видалено", "nearby": { @@ -789,7 +794,8 @@ "whileYoureHere": "Ви дбаєте про конфіденційність?", "browsingHistoryNotLoggedIn": "Увійдіть, щоб змінити налаштування", "browsingHistoryLoggedIn": "Ваші поточні налаштування:", - "browsingHistoryIntro": "MapComplete зберігатиме теми та місця, які ви відвідували раніше, щоб ви могли швидко повернутися до них. Якщо ви не ввійшли в систему, ця інформація зберігатиметься на вашому пристрої. Якщо ви ввійшли в систему, її можна синхронізувати з OpenStreetMap, щоб ви могли переглядати свою історію й на інших пристроях." + "browsingHistoryIntro": "MapComplete зберігатиме теми та місця, які ви відвідували раніше, щоб ви могли швидко повернутися до них. Якщо ви не ввійшли в систему, ця інформація зберігатиметься на вашому пристрої. Якщо ви ввійшли в систему, її можна синхронізувати з OpenStreetMap, щоб ви могли переглядати свою історію й на інших пристроях.", + "browsingHistoryTitle": "Історія переглядів" }, "reviews": { "affiliated_reviewer_warning": "(Партнерський огляд)", @@ -808,20 +814,46 @@ "save": "Зберегти відгук", "saved": "Відгук збережено. Дякуємо, що поділилися!", "your_reviews": "Ваші попередні відгуки", - "your_reviews_empty": "Ми не змогли знайти жодного з ваших попередніх відгуків" + "your_reviews_empty": "Ми не змогли знайти жодного з ваших попередніх відгуків", + "delete": "Видалити відгук", + "deleteText": "Це не можна скасувати", + "disabledForPrivacy": "Відгуки вимкнено через ваші налаштування конфіденційності.", + "edit": "Редагувати відгук", + "loadOnce": "Завантажте відгуки один раз", + "reviewing_as_anonymous": "Рецензування анонімно", + "saving_review": "Збереження…", + "title": "{count} відгуків", + "too_long": "Дозволено максимум {max} символів. Ваш відгук містить {amount} символів.", + "reportReason": "Чому цей звіт слід опублікувати?", + "reportReviewTitle": "Повідомити про цей відгук як неприйнятний?", + "editPrivacySettings": "Редагувати налаштування конфіденційності", + "attribution": "Від Mangrove.reviews", + "deleteConfirm": "Видалити цей відгук назавжди", + "deleteTitle": "Видалити цей відгук?", + "reportReview": "Повідомити про цей відгук як недоречний", + "reviewing_as": "Рецензування від імені {nickname}", + "see_all": "Перегляньте всі свої відгуки на mangrove.reviews", + "tos": "Створюючи відгук, ви погоджуєтеся з Умовами надання послуг та політикою конфіденційності Mangrove.reviews" }, "split": { - "inviteToSplit": "Розділіть цю дорогу на менші сегменти. Це дозволяє надати різним частинам дороги різні властивості." + "inviteToSplit": "Розділіть цю дорогу на менші сегменти. Це дозволяє надати різним частинам дороги різні властивості.", + "hasBeenSplit": "Цей шлях розділено", + "cancel": "Скасувати", + "loginToSplit": "Щоб розділити дорогу, потрібно увійти в систему", + "split": "Розділити", + "splitAgain": "Знову розділіть цю дорогу" }, "translations": { - "activateButton": "Допоможіть перекласти MapComplete" + "activateButton": "Допоможіть перекласти MapComplete", + "missing": "{count} неперекладених рядків" }, "unknown": { "explanation": "Очистіть цей біт інформації, якщо поточна відповідь невірна, але дійсне значення невідоме. Інша інформація не буде видалена.", "keep": "Продовжуйте відповідати", "markUnknown": "Позначити як невідомий", "removedKeys": "Наступні ключі будуть видалені:", - "title": "Позначити як невідомий?" + "title": "Позначити як невідомий?", + "clear": "Очистити відповідь" }, "validation": { "opening_hours": { @@ -830,7 +862,83 @@ "url": { "aggregator": "{host} є стороннім веб-сайтом. Якщо можливо, пошукайте на офіційному сайті.", "description": "посилання на веб-сайт", - "spamSite": "{host} вважається неякісним веб-сайтом. Використання цього веб-сайту заборонено." + "spamSite": "{host} вважається неякісним веб-сайтом. Використання цього веб-сайту заборонено.", + "feedback": "Це недійсна веб-адреса" + }, + "string": { + "description": "фрагмент тексту" + }, + "date": { + "description": "Дата, починаючи з року" + }, + "direction": { + "description": "Орієнтація" + }, + "distance": { + "description": "Відстань у метрах" + }, + "email": { + "description": "адреса електронної пошти", + "noAt": "Адреса електронної пошти повинна містити символ @", + "feedback": "Це недійсна адреса електронної пошти" + }, + "fediverse": { + "invalidHost": "{host} не є дійсним ім'ям хоста", + "onYourServer": "Дивіться та слідкуйте на своєму сервері" + }, + "id": { + "description": "ідентифікатор", + "invalidCharacter": "Ідентифікатор може містити лише літери, цифри та символи підкреслення", + "shouldBeLonger": "Ідентифікатор повинен містити щонайменше 3 символи" + }, + "int": { + "description": "ціле число" + }, + "nat": { + "description": "додатне, ціле число або нуль", + "mustBePositive": "Це число має бути додатним", + "mustBeWhole": "Дозволено лише цілі числа", + "notANumber": "Введіть число" + }, + "pnat": { + "description": "додатне, ціле число", + "noZero": "Нуль не дозволено" + }, + "regex": { + "description": "регулярний вираз" + }, + "text": { + "description": "фрагмент тексту" + }, + "tooLong": "Текст задовгий, дозволено максимум 255 символів. У вас є {count} символів.", + "wikidata": { + "empty": "Будь ласка, введіть кілька записів вікіданих", + "description": "Ідентифікатор Вікіданих", + "startsWithQ": "Ідентифікатор вікіданих починається з Q, а за ним йде число" + }, + "float": { + "feedback": "Це не число", + "description": "число" + }, + "generic": { + "tooHigh": "Це значення занадто високе — найвище дозволене значення — {max}", + "suspiciouslyHigh": "Це значення підозріло високе. Ви впевнені, що воно правильне?", + "suspiciouslyLow": "Це значення підозріло низьке. Ви впевнені, що воно правильне?", + "tooLow": "Це значення занадто низьке — найнижче дозволене значення — {min}" + }, + "pfloat": { + "description": "додатне число" + }, + "phone": { + "description": "номер телефону", + "feedback": "Це недійсний номер телефону", + "feedbackCountry": "Це недійсний номер телефону (для країни {country})" + }, + "color": { + "description": "Колір або шістнадцятковий код" + }, + "slope": { + "inputExplanation": "Покладіть телефон на землю верхньою стороною до вершини схилу." } }, "collectionTimes": { @@ -866,5 +974,8 @@ "measureAgain": "Почати нове вимірювання з поточного місця розташування", "setFirst": "Вимірювання від поточного місцезнаходження" } + }, + "userinfo": { + "notLoggedIn": "Ви вийшли з системи" } } From 19b788f1926b6fd645fe8a55634d7dbae725ffb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Jel=C3=ADnek?= Date: Mon, 6 Oct 2025 12:59:10 +0000 Subject: [PATCH 24/33] Translated using Weblate (Czech) Currently translated at 100.0% (4654 of 4654 strings) Translation: MapComplete/layers Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/layers/cs/ --- langs/layers/cs.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/langs/layers/cs.json b/langs/layers/cs.json index 0ea4e915e..4f5f9115c 100644 --- a/langs/layers/cs.json +++ b/langs/layers/cs.json @@ -2577,18 +2577,18 @@ } }, "caravansites": { - "description": "kempovací místa", - "name": "Kempovací místa", + "description": "místa pro karavany", + "name": "Místa pro karavany", "presets": { "0": { - "description": "Přidejte nové oficiální kempovací místo. Jedná se o místa, určená pro přenocování s karavanem. Mohou vypadat jako skutečný kemp nebo jen jako parkoviště. Takováto místa nemusí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce. Běžné parkoviště určené pro táborníky, kde se nepovažuje za kempovací místo. ", - "title": "kempovací místa" + "description": "Přidejte nové místo pro karavany. Jedná se o místa pro přenocování s karavanem. Mohou vypadat jako oficiální kemp nebo jen jako parkoviště, ale musejí být ověřena jako bezpečné místo pro přenocování, bez značek \"zákaz kempování\" nebo jiných zákazů vydaných místními úřady. Takováto místa nemusejí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce.", + "title": "místo pro karavany" } }, "tagRenderings": { "caravansites-capacity": { - "question": "Kolik táborníků zde může zůstat? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", - "render": "{capacity} táborníků může toto místo využívat současně" + "question": "Kolik karavanů zde může stát? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", + "render": "{capacity} karavanů může toto místo využívat současně" }, "caravansites-charge": { "question": "Kolik si toto místo účtuje?", @@ -2671,10 +2671,10 @@ "title": { "mappings": { "0": { - "then": "Nepojmenované kempovací místo" + "then": "Nepojmenované místo pro karavany" } }, - "render": "Kempovací místo {name}" + "render": "Místo pro karavany {name}" } }, "charge_point": { From b9a3c8f9dfc2a3262018f8dcf37b5bca300a9540 Mon Sep 17 00:00:00 2001 From: mike140 Date: Mon, 6 Oct 2025 13:18:27 +0000 Subject: [PATCH 25/33] Translated using Weblate (Ukrainian) Currently translated at 21.6% (1009 of 4654 strings) Translation: MapComplete/layers Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/layers/uk/ --- langs/layers/uk.json | 67 +++++++++++++++++++++++++++++++++++++++----- 1 file changed, 60 insertions(+), 7 deletions(-) diff --git a/langs/layers/uk.json b/langs/layers/uk.json index c49ae6454..405f895fe 100644 --- a/langs/layers/uk.json +++ b/langs/layers/uk.json @@ -338,17 +338,59 @@ } }, "all_streets": { - "name": "Всі вулиці" + "name": "Всі вулиці", + "description": "Змішати з (майже) всіма вулицями", + "title": { + "render": "Вулиця" + } }, "ambulancestation": { - "name": "Карта станцій швидкої допомоги", + "name": "Станції швидкої допомоги", "tagRenderings": { "ambulance-place": { - "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)" + "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)", + "render": "Ця станція знаходиться в межах {addr:place}." }, "ambulance-street": { - "question": "Як називається вулиця, на якій розташована станція?" + "question": "Як називається вулиця, на якій розташована станція?", + "render": "Ця станція розташована вздовж шосе під назвою {addr:street}." + }, + "ambulance-agency": { + "render": "Цю станцію обслуговує {operator}.", + "question": "Яке агентство керує цією станцією?" + }, + "ambulance-name": { + "question": "Як називається ця станція швидкої допомоги?", + "render": "Ця станція називається {name}." + }, + "ambulance-operator-type": { + "mappings": { + "1": { + "then": "Станцією керує громадська або неформальна організація." + }, + "2": { + "then": "Станцією керує офіційна група волонтерів." + }, + "0": { + "then": "Станція експлуатується урядом." + }, + "3": { + "then": "Станція перебуває у приватній власності." + } + }, + "question": "Як класифікується оператор станції?", + "render": "Оператор є сутністю типу {operator:type} (n)." } + }, + "presets": { + "0": { + "description": "Додати станцію швидкої допомоги на карту", + "title": "станція швидкої допомоги" + } + }, + "description": "Станція швидкої медичної допомоги – це місце для зберігання автомобілів швидкої допомоги, медичного обладнання, засобів індивідуального захисту та інших медичних матеріалів.", + "title": { + "render": "Станція швидкої допомоги" } }, "animal_shelter": { @@ -371,7 +413,8 @@ } } } - } + }, + "description": "Притулок для тварин – це заклад, куди приводять тварин, що потрапили в біду, а персонал закладу (волонтери чи ні) годує їх та піклується про них, реабілітуючи та лікуючи їх за необхідності. Це визначення включає розплідники для покинутих собак, розплідники для покинутих котів, притулки для інших покинутих домашніх тварин та центри відновлення диких тварин." }, "artwork": { "description": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу", @@ -3668,10 +3711,20 @@ }, "6": { "then": "Бугельний підйомник з L-подібними перекладинами для одного пасажира одночасно" + }, + "8": { + "then": "Буксирний трос, за який тримаються або прикріплюються лижники" + }, + "9": { + "then": "Чарівний килим (конвеєрна стрічка на землі)" } - } + }, + "question": "Що це за тип повітряної траси?" } }, - "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни." + "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни.", + "title": { + "render": "Канатна дорога {назва}" + } } } From 420d79fc2dd74ea8ca7ab8a29385bb332329f3a8 Mon Sep 17 00:00:00 2001 From: mike140 Date: Mon, 6 Oct 2025 11:30:54 +0000 Subject: [PATCH 26/33] Translated using Weblate (Ukrainian) Currently translated at 81.3% (392 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/uk/ --- langs/themes/uk.json | 527 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 512 insertions(+), 15 deletions(-) diff --git a/langs/themes/uk.json b/langs/themes/uk.json index fef059748..9dd59c7b0 100644 --- a/langs/themes/uk.json +++ b/langs/themes/uk.json @@ -584,10 +584,14 @@ }, "1": { "question": "Показувати тільки фритюри з використанням рослинної олії" + }, + "2": { + "question": "Показувати лише фритюри з використанням тваринного жиру" } } } - } + }, + "name": "Магазин картоплі фрі" } } } @@ -598,7 +602,26 @@ }, "ghostsigns": { "description": "Мапа, на якій показані вивіски на будівлях, що не використовуються", - "title": "Примарні знаки" + "title": "Примарні знаки", + "layers": { + "2": { + "override": { + "+tagRenderings": { + "0": { + "mappings": { + "1": { + "then": "Цей витвір мистецтва не є історичною рекламою" + }, + "0": { + "then": "Цей витвір мистецтва є історичною рекламою" + } + }, + "question": "Чи є цей витвір мистецтва історичною рекламою?" + } + } + } + } + } }, "glutenfree": { "description": "Колективна мапа з безглютеновими продуктами", @@ -610,15 +633,34 @@ }, "hackerspaces": { "shortDescription": "Мапа хакерських просторів", - "title": "Хакерспейси та мейкерспейси" + "title": "Хакерспейси та мейкерспейси", + "description": "На цій карті ви можете побачити хакерспейси, додати новий хакерспейс або оновити дані безпосередньо" }, "hailhydrant": { "shortDescription": "Мапа, що показує гідранти, вогнегасники, пожежні станції та станції швидкої допомоги.", - "title": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги" + "title": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги", + "description": "На цій карті ви можете знайти та оновити гідранти, пожежні станції, станції швидкої допомоги та вогнегасники у ваших улюблених районах." }, "healthcare": { "description": "На цій мапі показані різні обʼєкти, повʼязані з охороною здоровʼя", - "title": "Охорона здоров'я" + "title": "Охорона здоров'я", + "layers": { + "5": { + "override": { + "=presets": { + "0": { + "title": "магазин медичних товарів" + }, + "1": { + "title": "магазин слухових апаратів" + }, + "2": { + "title": "оптик" + } + } + } + } + } }, "historic_aircraft": { "description": "Карта, що показує всі історичні, стаціонарно встановлені літаки. Літак може бути музеєм, витвором мистецтва або меморіалом.", @@ -633,7 +675,8 @@ "title": "Готелі" }, "icecream": { - "title": "Морозиво" + "title": "Морозиво", + "description": "Карта з позначенням кафе-морозива та автоматів з продажу морозива" }, "indoors": { "description": "На цій мапі показані загальнодоступні плани приміщень", @@ -645,7 +688,19 @@ }, "kerbs_and_crossings": { "description": "Мапа з позначенням бордюрів та пішохідних переходів.", - "title": "Бордюри та переходи" + "title": "Бордюри та переходи", + "layers": { + "1": { + "override": { + "=presets": { + "0": { + "description": "Перехід для пішоходів та/або велосипедистів", + "title": "перехід" + } + } + } + } + } }, "lactosefree": { "description": "Колективна мапа з магазинами та ресторанами з безлактозними продуктами", @@ -662,7 +717,8 @@ }, "maxspeed": { "shortDescription": "Ця мапа показує дозволену законом максимальну швидкість на кожній дорозі.", - "title": "Максимальна швидкість" + "title": "Максимальна швидкість", + "description": "Ця карта показує дозволену законом максимальну швидкість на кожній дорозі. Якщо максимальна швидкість відсутня або неправильна, ви можете виправити її тут." }, "memorials": { "description": "Меморіали — це фізичні обʼєкти, постійно розміщені в публічному просторі на згадку про особу чи подію. Це можуть бути найрізноманітніші обʼєкти, такі як статуї, меморіальні дошки, картини, військові обʼєкти (наприклад, танки), …", @@ -679,11 +735,74 @@ }, "observation_towers": { "shortDescription": "Загальнодоступні вежі, з яких можна насолоджуватися краєвидом", - "title": "Спостережні вежі" + "title": "Спостережні вежі", + "description": "Вежі, з яких можна помилуватися краєвидом, доступні для громадськості" }, "onwheels": { "description": "На цій мапі показані громадські місця, доступні для осіб в інвалідних візків, їх також можна легко додати", - "title": "На колесах" + "title": "На колесах", + "layers": { + "16": { + "override": { + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "Жоден вхід не позначено" + }, + "1": { + "then": "Жоден з {_entrance_count} входів ще не має інформації про ширину" + } + }, + "render": { + "after": "Для входів ({_entrances_count_without_width_count}) ще немає інформації про ширину", + "before": "

Входи

У цій будівлі є {_entrances_count} входів:", + "special": { + "tagrendering": "Вхід розміром {canonical(width)}" + } + } + } + } + } + }, + "20": { + "override": { + "=title": { + "render": "Статистика" + } + } + }, + "7": { + "override": { + "=filter": { + "0": { + "options": { + "0": { + "question": "Всі види бордюрів" + }, + "3": { + "question": "Врівень з бордюром (~0 см)" + }, + "1": { + "question": "Піднятий бордюр (>3 см)" + }, + "2": { + "question": "Знижений бордюр (~3 см)" + } + } + } + } + } + }, + "9": { + "override": { + "name": "Паркувальні місця для інвалідів" + } + }, + "0": { + "description": "Усі об'єкти, дані входу яких відображено на зручності, а не на об'єкті входу" + } + } }, "openwindpowermap": { "description": "Мапа для показу та редагування вітрових турбін.", @@ -691,11 +810,13 @@ }, "osm_community_index": { "shortDescription": "Індекс ресурсів спільноти для OpenStreetMap.", - "title": "Індекс спільноти OSM" + "title": "Індекс спільноти OSM", + "description": "Список ресурсів для користувачів OpenStreetMap. «Ресурси» можуть бути посиланнями на форуми, зустрічі, групи Slack, IRC-канали, списки розсилки тощо. Все, що може бути цікавим або корисним для картографів, особливо початківців." }, "parkings": { "shortDescription": "На цій мапі показані різні місця для паркування", - "title": "Парковки" + "title": "Парковки", + "description": "На цій карті показано різні місця для паркування" }, "personal": { "description": "Створіть особисту тему на основі всіх доступних шарів усіх тем. Щоб показати деякі дані, відкрийте вибір шару", @@ -718,6 +839,21 @@ "override": { "name": "Магазини, дружні до собак" } + }, + "8": { + "override": { + "=presets": { + "0": { + "title": "зоомагазин" + } + }, + "name": "Зоомагазини" + } + }, + "6": { + "override": { + "name=": "Місця для пиття, де дозволено проживання з собаками" + } } }, "title": "Ветеринари, собачі парки та інші зручності для домашніх тварин" @@ -730,7 +866,33 @@ "postboxes": { "description": "На цій карті ви можете знайти та додати дані поштових відділень та поштових скриньок. Ви можете використовувати цю карту, щоб знайти, куди можна надіслати свою наступну листівку! :)
Помітили помилку або відсутня поштова скринька? Ви можете редагувати цю карту за допомогою безкоштовного облікового запису OpenStreetMap.", "shortDescription": "Мапа з позначенням поштових скриньок та поштових відділень", - "title": "Мапа поштових скриньок та поштових відділень" + "title": "Мапа поштових скриньок та поштових відділень", + "layers": { + "3": { + "override": { + "=presets": { + "0": { + "title": "відсутній магазин, який є партнером пошти", + "description": "Якщо магазину ще немає на карті, але він є партнером пошти, ви можете додати його сюди." + } + }, + "description": "Додати нового партнера з публікацій на карту в існуючому магазині", + "+tagRenderings": { + "0": { + "mappings": { + "1": { + "then": "Цей магазин не є поштовим партнером" + }, + "0": { + "then": "Цей магазин є партнером пошти" + } + }, + "question": "Цей магазин є поштовим партнером?" + } + } + } + } + } }, "rainbow_crossings": { "description": "На цій мапі показуються пішохідні переходи позначені кольорами веселки, вони також можуть бути легко додані", @@ -738,7 +900,33 @@ }, "scouting": { "description": "Скаутський загін - це громадський молодіжний рух, що робить акцент на активному відпочинку на природі. Заходи варіюються від таборування, піших прогулянок, водних видів спорту, рюкзаків, дослідження природи, ...", - "title": "Скаутські групи" + "title": "Скаутські групи", + "layers": { + "4": { + "override": { + "=presets": { + "0": { + "title": "Хостел" + } + } + } + }, + "3": { + "override": { + "=presets": { + "0": { + "title": "Хостел виключно для груп" + } + }, + "name": "Гуртожитки для груп та скаутів" + } + }, + "1": { + "override": { + "name": "Групові кемпінги" + } + } + } }, "shops": { "description": "На цій мапі можна позначити основну інформацію про магазини, додати години роботи та номери телефонів", @@ -751,7 +939,8 @@ }, "sport_pitches": { "shortDescription": "Мапа з позначенням спортивних майданчиків", - "title": "Спортивні майданчики" + "title": "Спортивні майданчики", + "description": "Спортивний майданчик – це зона, де проводяться спортивні ігри" }, "sports": { "shortDescription": "Мапа спортивних обʼєктів.", @@ -794,5 +983,313 @@ "wayside_shrines": { "description": "Ця мапа показує святині та хрести, знайдені на узбіччях доріг і стежок, а також дозволяє додавати нові", "title": "Придорожні святині" + }, + "grb": { + "popup": { + "0": { + "body": { + "0": { + "render": { + "special": { + "text": "Редагувати профіль користувача" + }, + "after": "щоб додати посилання https://wiki.openstreetmap.org/wiki/WikiProject_Belgium/Building_and_address_import" + } + }, + "1": { + "render": { + "special": { + "message": "Оновіть свій профіль" + } + } + } + }, + "title": { + "render": "Згадка профілю обов'язкова" + } + } + }, + "description": "Ця тема є спробою допомогти автоматизувати імпорт GRB.", + "layers": { + "0": { + "tagRenderings": { + "grb-reference": { + "render": "Імпортовано з GRB, номер посилання: {source:geometry:ref}" + }, + "building type": { + "question": "Що це за будівля?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Частина будівлі" + } + } + } + }, + "1": { + "tagRenderings": { + "Import-button": { + "mappings": { + "0": { + "then": "Метатеги ще не обчислено... Знову відкрити це спливаюче вікно" + }, + "1": { + "then": "Ця будівля має отвори та змодельована як відношення. Таким чином, її не можна об'єднати. Зробіть об'єднання вручну через сайт експорту будівель {open_in_josm()}" + } + } + } + } + } + } + }, + "items_with_image": { + "title": "Усі предмети із зображеннями", + "description": "Карта, що показує всі елементи в OSM, які мають зображення. Ця тема дуже погано підходить для MapComplete, оскільки користувач не може безпосередньо додавати зображення. Однак ця тема здебільшого призначена для того, щоб включити все це до бази даних, що дозволить швидко отримувати зображення поблизу для інших функцій" + }, + "mapcomplete-changes": { + "layers": { + "0": { + "filter": { + "0": { + "options": { + "0": { + "question": "Назва теми містить {search}" + } + } + }, + "10": { + "options": { + "0": { + "question": "Виключити тему етимології" + } + } + }, + "11": { + "options": { + "0": { + "question": "Усі платформи" + }, + "1": { + "question": "Зроблено на Android" + }, + "2": { + "question": "Зроблено в інтернеті" + } + } + }, + "4": { + "options": { + "0": { + "question": "Зроблено до {search}" + } + } + }, + "5": { + "options": { + "0": { + "question": "Зроблено після {search}" + } + } + }, + "6": { + "options": { + "0": { + "question": "Мова користувача (iso-code) {search}" + } + } + }, + "9": { + "options": { + "0": { + "question": "Виключити тему GRB" + } + } + }, + "1": { + "options": { + "0": { + "question": "Назва теми не містить {search}" + } + } + }, + "8": { + "options": { + "0": { + "question": "Набір змін додав щонайменше одне зображення" + } + } + }, + "2": { + "options": { + "0": { + "question": "Зроблено автором {search}" + } + } + }, + "3": { + "options": { + "0": { + "question": "Не створено автором {search}" + } + } + }, + "7": { + "options": { + "0": { + "question": "Зроблено за допомогою хоста {search}" + } + } + } + }, + "name": "Центри змін", + "tagRenderings": { + "contributor": { + "question": "Хто зробив цю зміну?", + "render": "Зміну вніс користувач {user}" + }, + "platform": { + "mappings": { + "0": { + "then": "Зроблено в інтернеті" + }, + "1": { + "then": "Зроблено за допомогою додатку для Android" + } + }, + "question": "На якій платформі було здійснено зміни?" + }, + "version": { + "render": "Зроблено за допомогою {editor}", + "question": "Яку версію MapComplete було використано для внесення цієї зміни?" + }, + "host": { + "render": "Змінити на {host", + "question": "На якому хості (веб-сайті) було внесено цю зміну?" + }, + "locale": { + "render": "Локаль користувача: {locale}", + "question": "Якою мовою (локацією) було внесено цю зміну?" + }, + "show_changeset_id": { + "render": "Набір змін {id}" + }, + "theme-id": { + "question": "Яку тему було використано для цієї зміни?", + "render": "Змінити тему {theme}" + } + }, + "title": { + "render": "Набір змін для {theme}" + }, + "description": "Показує всі зміни MapComplete" + }, + "1": { + "override": { + "tagRenderings+": { + "0": { + "render": "Більше статистичних даних можна знайти тут" + } + } + } + } + }, + "shortDescription": "Показує зміни, внесені MapComplete", + "title": "Зміни, внесені за допомогою MapComplete", + "description": "Ця карта показує всі зміни, внесені за допомогою MapComplete" + }, + "openlovemap": { + "layers": { + "2": { + "override": { + "=presets": { + "0": { + "title": "еротичний магазин" + } + }, + "name": "Еротичні магазини" + } + }, + "6": { + "override": { + "=presets": { + "0": { + "title": "еротичне кіно" + } + } + } + }, + "9": { + "override": { + "+tagRenderings": { + "0": { + "question": "Що це за готель?" + } + } + } + }, + "4": { + "override": { + "=presets": { + "0": { + "title": "автомат з продажу презервативів" + } + } + } + } + }, + "overrideAll": { + "tagRenderings+": { + "0": { + "questionHint": "Це для використання однією особою.", + "question": "Чи є у {title()} приватна відеокабінка?" + } + } + }, + "title": "Відкрити карту кохання", + "description": "

Кохання на долоні

На Open Love Map перелічено різні заклади для дорослих, такі як борделі, еротичні магазини та стриптиз-клуби." + }, + "postal_codes": { + "layers": { + "0": { + "tagRenderings": { + "postal_code": { + "render": "Поштовий індекс: {postal_code}" + } + }, + "name": "поштові індекси", + "title": { + "render": "Поштовий індекс {postal_code}" + } + }, + "2": { + "name": "ратуші", + "title": { + "render": "Міська ратуша {name}" + } + } + }, + "shortDescription": "Поштові індекси", + "title": "Поштові індекси", + "description": "Поштові індекси" + }, + "sauna": { + "description": "Сауна", + "layers": { + "6": { + "override": { + "presets=": { + "0": { + "title": "салон краси" + }, + "1": { + "title": "масажний салон" + } + } + } + } + }, + "title": "Сауна" } } From b8ec0584b22fb4946602c000e79ab876fa000235 Mon Sep 17 00:00:00 2001 From: Supaplex Date: Wed, 8 Oct 2025 06:51:24 +0000 Subject: [PATCH 27/33] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 96.7% (734 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/zh_Hant/ --- langs/zh_Hant.json | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/langs/zh_Hant.json b/langs/zh_Hant.json index e7c732fc9..6a787a227 100644 --- a/langs/zh_Hant.json +++ b/langs/zh_Hant.json @@ -12,7 +12,8 @@ "legacyHeader": "為較舊Android手機建構", "noPlayServices": "本應用無需 Google Play 服務即可運行", "older": "檢視較舊的軟體構建", - "title": "MapComplete Android 應用" + "title": "MapComplete Android 應用", + "getOnGoogle": "從 Google Play 市集下載 MapComplete" }, "centerMessage": { "allFilteredAway": "檢視畫面當中沒有滿足過瀘條件的圖徵", @@ -548,7 +549,8 @@ "readMore": "閱讀剩下的條目內容", "searchToShort": "你的搜尋檢索太短了,請輸入長一點的文字", "searchWikidata": "在 Wikidata 搜尋" - } + }, + "welcomeBack": "歡迎回來" }, "hotkeyDocumentation": { "action": "行動", @@ -948,4 +950,4 @@ "startsWithQ": "維基數據編號以 Q 開頭後面接數字" } } -} \ No newline at end of file +} From f4dfd45e0b7cd91a649bb0939c3a2547e988c682 Mon Sep 17 00:00:00 2001 From: Supaplex Date: Wed, 8 Oct 2025 06:20:02 +0000 Subject: [PATCH 28/33] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (482 of 482 strings) Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/zh_Hant/ --- langs/themes/zh_Hant.json | 99 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 2 deletions(-) diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json index 6b1247912..a931a456a 100644 --- a/langs/themes/zh_Hant.json +++ b/langs/themes/zh_Hant.json @@ -646,6 +646,13 @@ "grb-reference": { "render": "已經從GRB匯入,編號是{source:geometry:ref}" } + }, + "title": { + "mappings": { + "0": { + "then": "建築部分" + } + } } }, "1": { @@ -1116,6 +1123,11 @@ "override": { "name": "寵物友善商家" } + }, + "6": { + "override": { + "name=": "寵物友善開喝場所" + } } }, "title": "獸醫院、寵物公園以及其他寵物設施" @@ -1370,7 +1382,7 @@ }, "transit": { "description": "藉由大眾運輸系統來計畫你的旅程。", - "title": "公車路線" + "title": "大眾運輸路線" }, "trees": { "description": "繪製所有樹木!", @@ -1511,5 +1523,88 @@ } }, "title": "冬季服務" + }, + "zhv": { + "layers": { + "0": { + "name": "ZHV 當中的公共運輸站點", + "tagRenderings": { + "id": { + "render": "站點的編號是 {_ifopt}" + }, + "import": { + "render": { + "special": { + "text": "新增這一站點" + } + } + }, + "name": { + "render": "這個站點叫 {Name}" + }, + "tag-hint": { + "render": "這個站點有下列標籤:{_tags}" + }, + "closest_stop": { + "render": "OSM 上最近的站點是 {_closest_osm_stop_name}。" + }, + "imported": { + "render": "這站點(也許)已經加了。檢視這個點。" + } + }, + "title": { + "render": "ZHV 當中的大眾運輸站點" + } + }, + "1": { + "override": { + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "這個站點用於公車運輸。" + }, + "4": { + "then": "這個站點用於街車運輸。" + }, + "5": { + "then": "這個站點用於渡輪運輸。" + }, + "1": { + "then": "這個站點用於鐵路運輸。" + }, + "3": { + "then": "這個站點是用於捷運運輸。" + }, + "2": { + "then": "這個站點用於輕軌運輸。" + } + }, + "question": "這個站點用於何種運輸類型?" + }, + "1": { + "question": "這個站點的 IFOPT 編號是?", + "freeform": { + "placeholder": "例如 NL:Q:15003950 or de:03457:15801::2" + }, + "render": "這個站點的 IFOPT 站點是 {ref:IFOPT}。" + }, + "3": { + "render": { + "special": { + "message": "新增 IFOPT 編號到這站點" + } + } + }, + "2": { + "render": "附近有個 ZHV 站點:{_closest_zhv_stop_name}。" + } + }, + "name": "OSM 的大眾運輸站點" + } + } + }, + "title": "ZHV 匯入工具", + "description": "從德國中央公車服務目錄匯入公車站的小型主題。" } -} \ No newline at end of file +} From bc90a699a5be002eb25eeb747ad951de3230f68a Mon Sep 17 00:00:00 2001 From: Supaplex Date: Wed, 8 Oct 2025 06:58:29 +0000 Subject: [PATCH 29/33] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (759 of 759 strings) Translation: MapComplete/core Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/core/zh_Hant/ --- langs/zh_Hant.json | 40 +++++++++++++++++++++++++++++++++++----- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/langs/zh_Hant.json b/langs/zh_Hant.json index 6a787a227..e989316dc 100644 --- a/langs/zh_Hant.json +++ b/langs/zh_Hant.json @@ -7,7 +7,7 @@ "download": "下載應用程式", "downloadOnFDroid": "在 F-Droid 下載 MapComplete", "getOnObtanium": "從 Obtainium 取得", - "intro": "MapComplete可以在Android App直接下載。我們也計畫在Fdroid發佈。", + "intro": "MapComplete 有 Android App 型式在不同的應用程式商城,安裝 app 版本更容易連結 MapComplete 也使用更少流量,然而網頁版也有相同功能。", "legacyExplanation": "由於Google的限制,並無法為更新與更舊的Android編譯相同的APK版本。\n\n如果你透過F-Droid、Google Play、Obtainium或是安裝「最新」的版本失敗,請為其他較舊Android版本使用其他版本。", "legacyHeader": "為較舊Android手機建構", "noPlayServices": "本應用無需 Google Play 服務即可運行", @@ -365,7 +365,8 @@ "thursday": "星期四時 {ranges}", "tuesday": "星期二時 {ranges}", "unknown": "營業時間未知", - "wednesday": "星期三時 {ranges}" + "wednesday": "星期三時 {ranges}", + "ph": "國定假日" }, "pdf": { "attr": "地圖資料 @ 開放街圖貢獻者,採用 ODbL 授權可再利用", @@ -550,7 +551,13 @@ "searchToShort": "你的搜尋檢索太短了,請輸入長一點的文字", "searchWikidata": "在 Wikidata 搜尋" }, - "welcomeBack": "歡迎回來" + "welcomeBack": "歡迎回來", + "points_in_time": { + "daily": "每天", + "weekdays": "週間", + "weekends": "在週間", + "closed": "關閉" + } }, "hotkeyDocumentation": { "action": "行動", @@ -669,7 +676,8 @@ }, "input_helpers": { "distance": { - "setFirst": "目前位置的測量" + "setFirst": "目前位置的測量", + "measureAgain": "從目前位置開始測量" } }, "inspector": { @@ -837,7 +845,10 @@ "too_long": "最多允許 {max} 字元,你的評鑑有 {amount} 字元。", "tos": "如果你創建審核,你同意TOS 與 Mangrove.reviews 的隱私權政策", "your_reviews": "你先前的評鑑", - "your_reviews_empty": "我們無法找到任何你先前的評鑑" + "your_reviews_empty": "我們無法找到任何你先前的評鑑", + "editPrivacySettings": "編輯你的隱私設定", + "loadOnce": "載入一次評論", + "disabledForPrivacy": "由於隱私設定評論已經關閉。" }, "split": { "cancel": "取消", @@ -949,5 +960,24 @@ "empty": "請輸入一些 Wikidata 項目", "startsWithQ": "維基數據編號以 Q 開頭後面接數字" } + }, + "collectionTimes": { + "addTime": "新增時刻" + }, + "offline": { + "autoCheckmark": "當瀏覽週邊時自動下載底圖", + "size": "大小", + "name": "名稱", + "overview": "離線底圖概覽", + "range": "縮放範圍", + "autoExplanationIntro": "自動下載底圖意味什麼?", + "date": "地圖產生資料", + "delete": "刪除底圖", + "deleteAll": "刪除所有底圖", + "download": "下載區域", + "installing": "已經在下載資料", + "localOnMap": "離線地圖底圖", + "actions": "行動", + "autoExplanation": "如果勾選,MapComplete 會自動下載區域內的底圖到快取,也許一開始載入的資料比較多,但運作一段時間後不用那麼多網路。如果你打算拜訪網路沒那麼好的地方,那邊你也可以先下載。" } } From 23a9f36833bba8ee729700866f18cdd2b1d475a4 Mon Sep 17 00:00:00 2001 From: Pieter Vander Vennet Date: Sun, 12 Oct 2025 02:35:07 +0200 Subject: [PATCH 30/33] Chore: merge translations --- langs/layers/cs.json | 16 +-- langs/layers/uk.json | 237 ++++++++++++++++++++++++++----------------- langs/zh_Hant.json | 44 ++++++-- 3 files changed, 191 insertions(+), 106 deletions(-) diff --git a/langs/layers/cs.json b/langs/layers/cs.json index af9151027..75953c997 100644 --- a/langs/layers/cs.json +++ b/langs/layers/cs.json @@ -2553,18 +2553,18 @@ } }, "caravansites": { - "description": "kempovací místa", - "name": "Kempovací místa", + "description": "místa pro karavany", + "name": "Místa pro karavany", "presets": { "0": { - "description": "Přidejte nové oficiální kempovací místo. Jedná se o místa, určená pro přenocování s karavanem. Mohou vypadat jako skutečný kemp nebo jen jako parkoviště. Takováto místa nemusí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce. Běžné parkoviště určené pro táborníky, kde se nepovažuje za kempovací místo. ", - "title": "kempovací místa" + "description": "Přidejte nové místo pro karavany. Jedná se o místa pro přenocování s karavanem. Mohou vypadat jako oficiální kemp nebo jen jako parkoviště, ale musejí být ověřena jako bezpečné místo pro přenocování, bez značek \"zákaz kempování\" nebo jiných zákazů vydaných místními úřady. Takováto místa nemusejí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce.", + "title": "místo pro karavany" } }, "tagRenderings": { "caravansites-capacity": { - "question": "Kolik táborníků zde může zůstat? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", - "render": "{capacity} táborníků může toto místo využívat současně" + "question": "Kolik karavanů zde může stát? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", + "render": "{capacity} karavanů může toto místo využívat současně" }, "caravansites-charge": { "question": "Kolik si toto místo účtuje?", @@ -2647,10 +2647,10 @@ "title": { "mappings": { "0": { - "then": "Nepojmenované kempovací místo" + "then": "Nepojmenované místo pro karavany" } }, - "render": "Kempovací místo {name}" + "render": "Místo pro karavany {name}" } }, "charge_point": { diff --git a/langs/layers/uk.json b/langs/layers/uk.json index e27ff83b1..405f895fe 100644 --- a/langs/layers/uk.json +++ b/langs/layers/uk.json @@ -57,6 +57,7 @@ "render": "Найбільша висота стола для переодягання дорослих становить {canonical(max_height)}" }, "adult-changing-table-mechanism": { + "question": "Як регулюється висота пеленального столика?", "mappings": { "0": { "then": "Висота пеленального столика для дорослих регулюється вручну" @@ -64,13 +65,12 @@ "1": { "then": "Висота пеленального столика для дорослих регулюється електрично" } - }, - "question": "Як регулюється висота пеленального столика?" + } }, "adult-changing-table-min_height": { "question": "На яку найнижчу висоту можна пересунути пеленальний столик для дорослих?", - "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", - "render": "Найменша висота пеленального столика для дорослих становить {canonical(min_height)}" + "render": "Найменша висота пеленального столика для дорослих становить {canonical(min_height)}", + "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика" }, "adult-changing-table-support": { "mappings": { @@ -87,14 +87,14 @@ "question": "Як влаштовано пеленальний столик для дорослих?" }, "height": { + "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", + "render": "Пеленальний столик має висоту {canonical(height)}", "mappings": { "0": { "then": "Пеленальний столик регулюється по висоті" } }, - "question": "Яка висота пеленального столика для дорослих?", - "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", - "render": "Пеленальний столик має висоту {canonical(height)}" + "question": "Яка висота пеленального столика для дорослих?" } }, "title": "Пеленальний столик для дорослих" @@ -218,9 +218,6 @@ "1": { "then": "Місцева інформація" }, - "10": { - "then": "Юридичні повідомлення" - }, "2": { "then": "Інформація про безпеку" }, @@ -244,6 +241,9 @@ }, "9": { "then": "Карта" + }, + "10": { + "then": "Юридичні повідомлення" } }, "question": "Яке повідомлення відображається?" @@ -313,21 +313,21 @@ "2": { "then": "Поштова скринька" }, - "3": { - "then": "Колонка" - }, "4": { "then": "Прапор" }, - "5": { - "then": "Екран" - }, "6": { "then": "Скульптура" }, "7": { "then": "Знак" }, + "3": { + "then": "Колонка" + }, + "5": { + "then": "Екран" + }, "8": { "then": "Брезент" }, @@ -337,85 +337,60 @@ } } }, - "aerialway": { - "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни.", - "name": "Канатні дороги", - "pointRendering": { - "1": { - "label": { - "render": "{name}" - } - } - }, - "tagRenderings": { - "duration": { - "question": "Скільки часу займає одна поїздка цим ліфтом?", - "questionHint": "Це не враховує час очікування.", - "render": "Одна поїздка триває {duration} хвилин" - }, - "length": { - "render": "Цей підйомник має довжину {_length:km} кілометрів" - }, - "occupancy": { - "question": "Скільки людей поміщається в один вагон?", - "render": "{aerialway:occupancy} людей поміщається в один вагон" - }, - "oneway": { - "mappings": { - "0": { - "then": "Цією канатною дорогою можна піднятися лише нагору" - }, - "1": { - "then": "Цією канатною дорогою можна користуватися в обох напрямках" - } - }, - "question": "У якому напрямку можна рухатись цією канатною дорогою?" - }, - "type": { - "mappings": { - "0": { - "then": "Це канатна дорога, де вагончик піднімається і спускається по тому ж тросу." - }, - "1": { - "then": "Це гондола, де вагони рухаються по безперервному колу" - }, - "10": { - "then": "Зіплайн. (Туристична атракція, де люди, що люблять пригоди, спускаються на великій швидкості)" - }, - "2": { - "then": "Відкритий крісельний підйомник із сидіннями, що відкриваються назовні." - }, - "3": { - "then": "Підвісна дорога, на якій є як крісельні, так і гондольні підйомники на одній безперервній колії" - }, - "4": { - "then": "Бугельний підйомник" - }, - "5": { - "then": "Бугельний підйомник з Т-подібними каретками для двох пасажирів одночасно" - }, - "6": { - "then": "Бугельний підйомник з L-подібними перекладинами для одного пасажира одночасно" - }, - "7": { - "then": "Бугельний підйомник з платформою для перевезення одного пасажира за раз" - } - } - } + "all_streets": { + "name": "Всі вулиці", + "description": "Змішати з (майже) всіма вулицями", + "title": { + "render": "Вулиця" } }, - "all_streets": { - "name": "Всі вулиці" - }, "ambulancestation": { - "name": "Карта станцій швидкої допомоги", + "name": "Станції швидкої допомоги", "tagRenderings": { "ambulance-place": { - "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)" + "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)", + "render": "Ця станція знаходиться в межах {addr:place}." }, "ambulance-street": { - "question": "Як називається вулиця, на якій розташована станція?" + "question": "Як називається вулиця, на якій розташована станція?", + "render": "Ця станція розташована вздовж шосе під назвою {addr:street}." + }, + "ambulance-agency": { + "render": "Цю станцію обслуговує {operator}.", + "question": "Яке агентство керує цією станцією?" + }, + "ambulance-name": { + "question": "Як називається ця станція швидкої допомоги?", + "render": "Ця станція називається {name}." + }, + "ambulance-operator-type": { + "mappings": { + "1": { + "then": "Станцією керує громадська або неформальна організація." + }, + "2": { + "then": "Станцією керує офіційна група волонтерів." + }, + "0": { + "then": "Станція експлуатується урядом." + }, + "3": { + "then": "Станція перебуває у приватній власності." + } + }, + "question": "Як класифікується оператор станції?", + "render": "Оператор є сутністю типу {operator:type} (n)." } + }, + "presets": { + "0": { + "description": "Додати станцію швидкої допомоги на карту", + "title": "станція швидкої допомоги" + } + }, + "description": "Станція швидкої медичної допомоги – це місце для зберігання автомобілів швидкої допомоги, медичного обладнання, засобів індивідуального захисту та інших медичних матеріалів.", + "title": { + "render": "Станція швидкої допомоги" } }, "animal_shelter": { @@ -427,18 +402,19 @@ }, "boarded_animals": { "mappings": { - "1": { - "then": "Тут тримають котів" - }, "2": { "then": "Тут утримують коней" }, "3": { "then": "Тут тримають птахів" + }, + "1": { + "then": "Тут тримають котів" } } } - } + }, + "description": "Притулок для тварин – це заклад, куди приводять тварин, що потрапили в біду, а персонал закладу (волонтери чи ні) годує їх та піклується про них, реабілітуючи та лікуючи їх за необхідності. Це визначення включає розплідники для покинутих собак, розплідники для покинутих котів, притулки для інших покинутих домашніх тварин та центри відновлення диких тварин." }, "artwork": { "description": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу", @@ -3673,5 +3649,82 @@ "title": { "render": "Утилізація відходів" } + }, + "aerialway": { + "name": "Канатні дороги", + "pointRendering": { + "1": { + "label": { + "render": "{name}" + } + } + }, + "tagRenderings": { + "duration": { + "question": "Скільки часу займає одна поїздка цим ліфтом?", + "questionHint": "Це не враховує час очікування.", + "render": "Одна поїздка триває {duration} хвилин" + }, + "length": { + "render": "Цей підйомник має довжину {_length:km} кілометрів" + }, + "occupancy": { + "question": "Скільки людей поміщається в один вагон?", + "render": "{aerialway:occupancy} людей поміщається в один вагон" + }, + "oneway": { + "mappings": { + "0": { + "then": "Цією канатною дорогою можна піднятися лише нагору" + }, + "1": { + "then": "Цією канатною дорогою можна користуватися в обох напрямках" + } + }, + "question": "У якому напрямку можна рухатись цією канатною дорогою?" + }, + "type": { + "mappings": { + "0": { + "then": "Це канатна дорога, де вагончик піднімається і спускається по тому ж тросу." + }, + "10": { + "then": "Зіплайн. (Туристична атракція, де люди, що люблять пригоди, спускаються на великій швидкості)" + }, + "2": { + "then": "Відкритий крісельний підйомник із сидіннями, що відкриваються назовні." + }, + "5": { + "then": "Бугельний підйомник з Т-подібними каретками для двох пасажирів одночасно" + }, + "7": { + "then": "Бугельний підйомник з платформою для перевезення одного пасажира за раз" + }, + "4": { + "then": "Бугельний підйомник" + }, + "1": { + "then": "Це гондола, де вагони рухаються по безперервному колу" + }, + "3": { + "then": "Підвісна дорога, на якій є як крісельні, так і гондольні підйомники на одній безперервній колії" + }, + "6": { + "then": "Бугельний підйомник з L-подібними перекладинами для одного пасажира одночасно" + }, + "8": { + "then": "Буксирний трос, за який тримаються або прикріплюються лижники" + }, + "9": { + "then": "Чарівний килим (конвеєрна стрічка на землі)" + } + }, + "question": "Що це за тип повітряної траси?" + } + }, + "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни.", + "title": { + "render": "Канатна дорога {назва}" + } } -} \ No newline at end of file +} diff --git a/langs/zh_Hant.json b/langs/zh_Hant.json index e7c732fc9..e989316dc 100644 --- a/langs/zh_Hant.json +++ b/langs/zh_Hant.json @@ -7,12 +7,13 @@ "download": "下載應用程式", "downloadOnFDroid": "在 F-Droid 下載 MapComplete", "getOnObtanium": "從 Obtainium 取得", - "intro": "MapComplete可以在Android App直接下載。我們也計畫在Fdroid發佈。", + "intro": "MapComplete 有 Android App 型式在不同的應用程式商城,安裝 app 版本更容易連結 MapComplete 也使用更少流量,然而網頁版也有相同功能。", "legacyExplanation": "由於Google的限制,並無法為更新與更舊的Android編譯相同的APK版本。\n\n如果你透過F-Droid、Google Play、Obtainium或是安裝「最新」的版本失敗,請為其他較舊Android版本使用其他版本。", "legacyHeader": "為較舊Android手機建構", "noPlayServices": "本應用無需 Google Play 服務即可運行", "older": "檢視較舊的軟體構建", - "title": "MapComplete Android 應用" + "title": "MapComplete Android 應用", + "getOnGoogle": "從 Google Play 市集下載 MapComplete" }, "centerMessage": { "allFilteredAway": "檢視畫面當中沒有滿足過瀘條件的圖徵", @@ -364,7 +365,8 @@ "thursday": "星期四時 {ranges}", "tuesday": "星期二時 {ranges}", "unknown": "營業時間未知", - "wednesday": "星期三時 {ranges}" + "wednesday": "星期三時 {ranges}", + "ph": "國定假日" }, "pdf": { "attr": "地圖資料 @ 開放街圖貢獻者,採用 ODbL 授權可再利用", @@ -548,6 +550,13 @@ "readMore": "閱讀剩下的條目內容", "searchToShort": "你的搜尋檢索太短了,請輸入長一點的文字", "searchWikidata": "在 Wikidata 搜尋" + }, + "welcomeBack": "歡迎回來", + "points_in_time": { + "daily": "每天", + "weekdays": "週間", + "weekends": "在週間", + "closed": "關閉" } }, "hotkeyDocumentation": { @@ -667,7 +676,8 @@ }, "input_helpers": { "distance": { - "setFirst": "目前位置的測量" + "setFirst": "目前位置的測量", + "measureAgain": "從目前位置開始測量" } }, "inspector": { @@ -835,7 +845,10 @@ "too_long": "最多允許 {max} 字元,你的評鑑有 {amount} 字元。", "tos": "如果你創建審核,你同意TOS 與 Mangrove.reviews 的隱私權政策", "your_reviews": "你先前的評鑑", - "your_reviews_empty": "我們無法找到任何你先前的評鑑" + "your_reviews_empty": "我們無法找到任何你先前的評鑑", + "editPrivacySettings": "編輯你的隱私設定", + "loadOnce": "載入一次評論", + "disabledForPrivacy": "由於隱私設定評論已經關閉。" }, "split": { "cancel": "取消", @@ -947,5 +960,24 @@ "empty": "請輸入一些 Wikidata 項目", "startsWithQ": "維基數據編號以 Q 開頭後面接數字" } + }, + "collectionTimes": { + "addTime": "新增時刻" + }, + "offline": { + "autoCheckmark": "當瀏覽週邊時自動下載底圖", + "size": "大小", + "name": "名稱", + "overview": "離線底圖概覽", + "range": "縮放範圍", + "autoExplanationIntro": "自動下載底圖意味什麼?", + "date": "地圖產生資料", + "delete": "刪除底圖", + "deleteAll": "刪除所有底圖", + "download": "下載區域", + "installing": "已經在下載資料", + "localOnMap": "離線地圖底圖", + "actions": "行動", + "autoExplanation": "如果勾選,MapComplete 會自動下載區域內的底圖到快取,也許一開始載入的資料比較多,但運作一段時間後不用那麼多網路。如果你打算拜訪網路沒那麼好的地方,那邊你也可以先下載。" } -} \ No newline at end of file +} From 59ce7d528f40338035a63c772e5789f3c9ff3978 Mon Sep 17 00:00:00 2001 From: Weblate Date: Sun, 12 Oct 2025 00:39:27 +0000 Subject: [PATCH 31/33] Update translation files Updated by "Cleanup translation files" hook in Weblate. Translation: MapComplete/layers Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/layers/ --- langs/layers/nl.json | 39 ++------------------------------------- 1 file changed, 2 insertions(+), 37 deletions(-) diff --git a/langs/layers/nl.json b/langs/layers/nl.json index eee81bb13..08ef896f3 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -2226,9 +2226,6 @@ }, "title": { "mappings": { - "0": { - "then": "{name}" - }, "1": { "then": "Vogelkijkhut {name}" }, @@ -7255,11 +7252,6 @@ } }, "title": { - "mappings": { - "0": { - "then": "{name}" - } - }, "render": "Natuurgebied" } }, @@ -7997,21 +7989,6 @@ "render": "Pijpleiding" } }, - "play_forest": { - "description": "Een speelbos is een vrij toegankelijke zone in een bos", - "name": "Speelbossen", - "title": { - "mappings": { - "0": { - "then": "{name}" - }, - "1": { - "then": "Speelbos {name}" - } - }, - "render": "Speelbos" - } - }, "playground": { "deletion": { "nonDeleteMappings": { @@ -10056,9 +10033,6 @@ }, "title": { "mappings": { - "0": { - "then": "{name}" - }, "1": { "then": "Voetpad" }, @@ -12369,16 +12343,7 @@ } }, "village_green": { - "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)", - "name": "Speelweide", - "title": { - "mappings": { - "0": { - "then": "{name}" - } - }, - "render": "Speelweide" - } + "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)" }, "visitor_information_centre": { "description": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", @@ -12590,4 +12555,4 @@ "render": "windturbine" } } -} \ No newline at end of file +} From 3d3582da3715f43c8e82b47ba0a02f04b02fbb1f Mon Sep 17 00:00:00 2001 From: Weblate Date: Sun, 12 Oct 2025 00:38:53 +0000 Subject: [PATCH 32/33] Update translation files Updated by "Cleanup translation files" hook in Weblate. Translation: MapComplete/themes Translate-URL: https://translate.mapcomplete.org/projects/mapcomplete/themes/ --- langs/themes/nl.json | 89 +------------------------------------------- 1 file changed, 2 insertions(+), 87 deletions(-) diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 2018c7194..693f13c7a 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -654,37 +654,8 @@ "building type": { "question": "Wat voor soort gebouw is dit?" }, - "grb-fixme": { - "mappings": { - "0": { - "then": "Geen fixme" - } - }, - "question": "Wat zegt de fixme?", - "render": "De fixme is {fixme}" - }, - "grb-housenumber": { - "mappings": { - "0": { - "then": "Geen huisnummer" - } - }, - "question": "Wat is het huisnummer?", - "render": "Het huisnummer is {addr:housenumber}" - }, - "grb-min-level": { - "question": "Hoeveel verdiepingen ontbreken?", - "render": "Dit gebouw begint maar op de {building:min_level} verdieping" - }, "grb-reference": { "render": "Werd geïmporteerd vanuit GRB, het referentienummer is {source:geometry:ref}" - }, - "grb-street": { - "question": "Wat is de straat?", - "render": "De straat is {addr:street}" - }, - "grb-unit": { - "render": "De wooneenheid-aanduiding is {addr:unit} " } } }, @@ -726,9 +697,7 @@ "render": "Link op profiel verplicht" } } - }, - "shortDescription": "Grb import helper tool", - "title": "GRB import helper" + } }, "guideposts": { "description": "Wegwijzers (ook wel handwijzer genoemd) zijn vaak te vinden langs officiële wandel-, fiets-, ski- of paardrijroutes om de richtingen naar verschillende bestemmingen aan te geven. Vaak zijn ze vernoemd naar een regio of plaats en geven ze de hoogte aan.\n\nDe positie van een wegwijzer kan door een wandelaar/fietser/renner/skiër worden gebruikt als bevestiging van de huidige positie, vooral als ze een gedrukte kaart zonder GPS-ontvanger gebruiken. ", @@ -1131,11 +1100,6 @@ }, "title": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen" }, - "play_forests": { - "description": "Een speelbos is een zone in een bos die vrij toegankelijk is voor spelende kinderen. Deze wordt in bossen van het Agentschap Natuur en bos altijd aangeduid met het overeenkomstige bord.", - "shortDescription": "Deze kaart toont speelbossen", - "title": "Speelbossen" - }, "playgrounds": { "description": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen", "shortDescription": "Een kaart met speeltuinen", @@ -1209,47 +1173,6 @@ "description": "Alles om te skiën", "title": "Skipistes en kabelbanen" }, - "speelplekken": { - "description": "

Welkom bij de Groendoener!

De Zuidrand dat is spelen, ravotten, chillen, wandelen,… in het groen. Meer dan 200 grote en kleine speelplekken liggen er in parken, in bossen en op pleintjes te wachten om ontdekt te worden. De verschillende speelplekken werden getest én goedgekeurd door kinder- en jongerenreporters uit de Zuidrand. Met leuke challenges dagen de reporters jou uit om ook op ontdekking te gaan. Klik op een speelplek op de kaart, bekijk het filmpje en ga op verkenning!

Het project groendoener kadert binnen het strategisch project Beleefbare Open Ruimte in de Antwerpse Zuidrand en is een samenwerking tussen het departement Leefmilieu van provincie Antwerpen, Sportpret vzw, een OpenStreetMap-België Consultent en Createlli vzw. Het project kwam tot stand met steun van Departement Omgeving van de Vlaamse Overheid.
", - "layers": { - "6": { - "name": "Wandelroutes van provincie Antwerpen", - "tagRenderings": { - "walk-description": { - "render": "

Korte beschrijving:

{description}" - }, - "walk-length": { - "render": "Deze wandeling is {_length:km}km lang" - }, - "walk-operator": { - "question": "Wie beheert deze wandeling en plaatst dus de signalisatiebordjes?" - }, - "walk-operator-email": { - "question": "Naar wie kan men emailen bij problemen rond signalisatie?", - "render": "Bij problemen met signalisatie kan men emailen naar {operator:email}" - }, - "walk-type": { - "mappings": { - "0": { - "then": "Dit is een internationale wandelroute" - }, - "1": { - "then": "Dit is een nationale wandelroute" - }, - "2": { - "then": "Dit is een regionale wandelroute" - }, - "3": { - "then": "Dit is een lokale wandelroute" - } - } - } - } - } - }, - "shortDescription": "Speelplekken in de Antwerpse Zuidrand", - "title": "Welkom bij de groendoener!" - }, "sport_pitches": { "description": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen", "shortDescription": "Deze kaart toont sportvelden", @@ -1368,10 +1291,6 @@ }, "title": "Straatverlichting" }, - "street_lighting_assen": { - "description": "Op deze kaart vind je alles over straatlantaarns + een dataset van Assen", - "title": "Straatverlichting - Assen" - }, "surveillance": { "description": "Op deze open kaart kan je bewakingscamera's vinden.", "shortDescription": "Bewakingscameras en dergelijke", @@ -1485,13 +1404,9 @@ "description": "Kaart met afvalbakken en recyclingfaciliteiten.", "title": "Afval" }, - "waste_assen": { - "description": "Kaart met afvalbakken en recyclingfaciliteiten + een dataset voor Assen.", - "title": "Afval - Assen" - }, "waste_basket": { "description": "Op deze kaart vind je afvalbakken bij jou in de buurt. Als er een afvalbak ontbreekt op deze kaart, kun je deze zelf toevoegen", "shortDescription": "Een kaart met vuilnisbakken", "title": "Vuilnisbakken" } -} \ No newline at end of file +} From aadd5424b2ab9b620e72e5921e553c02b779df49 Mon Sep 17 00:00:00 2001 From: Pieter Vander Vennet Date: Sun, 12 Oct 2025 02:49:44 +0200 Subject: [PATCH 33/33] Chore: sync translations, improve error msgs --- assets/layers/aerialway/aerialway.json | 12 +- assets/layers/all_streets/all_streets.json | 4 +- .../ambulancestation/ambulancestation.json | 18 +- .../layers/animal_shelter/animal_shelter.json | 1 + assets/layers/caravansites/caravansites.json | 16 +- assets/layers/icons/icons.json | 4 +- assets/layers/last_click/last_click.json | 4 +- assets/layers/note/note.json | 4 +- .../osm_community_index.json | 12 +- assets/themes/benches/benches.json | 2 +- langs/layers/nl.json | 39 +- langs/layers/uk.json | 240 +++---- langs/themes/ca.json | 6 +- langs/themes/da.json | 60 +- langs/themes/de.json | 70 +- langs/themes/en.json | 2 +- langs/themes/fr.json | 6 +- langs/themes/nl.json | 89 ++- langs/themes/pt_BR.json | 5 +- langs/themes/ru.json | 2 +- langs/themes/uk.json | 653 +----------------- langs/themes/zh_Hant.json | 99 +-- langs/zh_Hant.json | 74 +- package.json | 2 +- scripts/generateTranslations.ts | 2 +- 25 files changed, 420 insertions(+), 1006 deletions(-) diff --git a/assets/layers/aerialway/aerialway.json b/assets/layers/aerialway/aerialway.json index af0e482d5..59b1f8fe0 100644 --- a/assets/layers/aerialway/aerialway.json +++ b/assets/layers/aerialway/aerialway.json @@ -39,7 +39,8 @@ "de": "Seilbahn {name}", "es": "Teleférico {name}", "it": "Impianto a fune {name}", - "nl": "Kabelbaan {name}" + "nl": "Kabelbaan {name}", + "uk": "Канатна дорога {name}" } }, "pointRendering": [ @@ -111,7 +112,8 @@ "de": "Um welchen Seilbahntyp handelt es sich?", "es": "¿Qué tipo de teleférico es este?", "it": "Che tipo di impianto a fune è questo?", - "nl": "Wat voor kabelbaan is dit?" + "nl": "Wat voor kabelbaan is dit?", + "uk": "Що це за тип повітряної траси?" }, "mappings": [ { @@ -232,7 +234,8 @@ "de": "Eine Zugleine, an der sich Skifahrer festhalten oder sich befestigen können", "es": "Un cable de remolque que arrastra a los esquiadores", "it": "Una fune di traino a cui gli sciatori si tengono o si attaccano", - "nl": "Een sleeplijn waar skiërs zich aan vasthouden of vastmaken" + "nl": "Een sleeplijn waar skiërs zich aan vasthouden of vastmaken", + "uk": "Буксирний трос, за який тримаються або прикріплюються лижники" } }, { @@ -243,7 +246,8 @@ "cs": "Kouzelný koberec (pásový dopravník na zemi)", "de": "Ein magic carpet (ein Förderband auf dem Boden)", "es": "Una alfombra mágica (una cinta transportadora en el suelo)", - "it": "Un tappeto magico (un nastro trasportatore sul terreno)" + "it": "Un tappeto magico (un nastro trasportatore sul terreno)", + "uk": "Чарівний килим (конвеєрна стрічка на землі)" } }, { diff --git a/assets/layers/all_streets/all_streets.json b/assets/layers/all_streets/all_streets.json index 2b38ec9a8..2d0251e1e 100644 --- a/assets/layers/all_streets/all_streets.json +++ b/assets/layers/all_streets/all_streets.json @@ -25,7 +25,8 @@ "cs": "Vrstva se (skoro) všemi ulicemi", "de": "Layer mit (fast) allen Straßen", "it": "Livello con (quasi) tutte le strade", - "nl": "Laag met (bijna) alle straten" + "nl": "Laag met (bijna) alle straten", + "uk": "Змішати з (майже) всіма вулицями" }, "source": { "osmTags": { @@ -57,6 +58,7 @@ "pa_PK": "سڑک", "pl": "Ulica", "ru": "Улица", + "uk": "Вулиця", "zh_Hant": "照明" }, "mappings": [ diff --git a/assets/layers/ambulancestation/ambulancestation.json b/assets/layers/ambulancestation/ambulancestation.json index 81d05f528..203eff3fc 100644 --- a/assets/layers/ambulancestation/ambulancestation.json +++ b/assets/layers/ambulancestation/ambulancestation.json @@ -19,7 +19,7 @@ "pt": "Mapa de estações de ambulância", "pt_BR": "Estações de ambulância", "ru": "Карта станций скорой помощи", - "uk": "Карта станцій швидкої допомоги", + "uk": "Станції швидкої допомоги", "zh_Hans": "救护车站地图" }, "description": { @@ -39,6 +39,7 @@ "pt": "Uma estação de ambulância é uma área de armazenamento de veículos de ambulância, equipamentos médicos, equipamentos de proteção pessoal e outros suprimentos médicos.", "pt_BR": "Uma estação de ambulância é uma área de armazenamento de veículos de ambulância, equipamentos médicos, equipamentos de proteção pessoal e outros suprimentos médicos.", "ru": "Станция скорой помощи это полигон для хранения транспорта, медицинского оборудования, средств индивидуальной защиты и других медицинских принадлежностей.", + "uk": "Станція швидкої медичної допомоги – це місце для зберігання автомобілів швидкої допомоги, медичного обладнання, засобів індивідуального захисту та інших медичних матеріалів.", "zh_Hans": "救护站是存放救护车、医疗设备、个人防护设备和其他医疗用品的区域。" }, "source": { @@ -68,6 +69,7 @@ "pt": "Estação de Ambulância", "pt_BR": "Estação de Ambulância", "ru": "Станция скорой помощи", + "uk": "Станція швидкої допомоги", "zh_Hans": "救护站" } }, @@ -115,6 +117,7 @@ "pt": "uma estação de ambulância", "pt_BR": "uma estação de ambulância", "ru": "Станция скорой помощи", + "uk": "станція швидкої допомоги", "zh_Hans": "救护车站" }, "description": { @@ -136,6 +139,7 @@ "pt": "Adicionar uma estação de ambulância ao mapa", "pt_BR": "Adicionar uma estação de ambulância ao mapa", "ru": "Добавить станцию скорой помощи на карту", + "uk": "Додати станцію швидкої допомоги на карту", "zh_Hans": "向地图中添加一个救护车站" } } @@ -161,6 +165,7 @@ "pt": "Qual o nome desta estação de ambulância?", "pt_BR": "Qual o nome dessa estação de ambulância?", "ru": "Как называется эта станция скорой помощи?", + "uk": "Як називається ця станція швидкої допомоги?", "zh_Hans": "这个救护车站叫什么名字?" }, "render": { @@ -181,6 +186,7 @@ "pt": "Esta estação é chamada de {name}.", "pt_BR": "Esta estação é chamada de {name}.", "ru": "Эта станция называется {name}.", + "uk": "Ця станція називається {name}.", "zh_Hans": "这个站点名为 {name}." }, "freeform": { @@ -225,6 +231,7 @@ "pt": "Esta estação está numa autoestrada chamada {addr:street}.", "pt_BR": "Essa estação está em uma via chamada {addr:street}.", "ru": "Эта станция расположена вдоль шоссе {addr:street}.", + "uk": "Ця станція розташована вздовж шосе під назвою {addr:street}.", "zh_Hans": "该站位于一条名为 {addr:street} 的公路沿线。" }, "freeform": { @@ -267,6 +274,7 @@ "nl": "Dit station ligt in {addr:place}.", "pt": "Esta estação está localizada em {addr:place}.", "pt_BR": "Essa estação está localizada em {addr:place}.", + "uk": "Ця станція знаходиться в межах {addr:place}.", "zh_Hans": "该站位于{addr:place}内。" }, "freeform": { @@ -292,6 +300,7 @@ "pt": "Qual agência opera esta estação?", "pt_BR": "Qual agência opera essa estação?", "ru": "Какая организация управляет этой станцией?", + "uk": "Яке агентство керує цією станцією?", "zh_Hans": "哪家机构运营这个站点?" }, "render": { @@ -311,6 +320,7 @@ "pt": "Esta estação é operada pelo(a) {operator}.", "pt_BR": "Essa estação é operada pelo(a) {operator}.", "ru": "Эта станция управляется {operator}.", + "uk": "Цю станцію обслуговує {operator}.", "zh_Hans": "这个站点由 {operator}运营" }, "freeform": { @@ -336,6 +346,7 @@ "pl": "Jak klasyfikowany jest operator stacji?", "pt": "Como esta estação é classificada?", "pt_BR": "Como essa estação é classificada?", + "uk": "Як класифікується оператор станції?", "zh_Hans": "车站运营商如何分类?" }, "render": { @@ -352,6 +363,7 @@ "nl": "De beheerder is van het type {operator:type}.", "pt": "O operador é uma entidade {operator:type}.", "pt_BR": "O operador é uma entidade {operator:type}.", + "uk": "Оператор є сутністю типу {operator:type} (n).", "zh_Hans": "运营者是一个 {operator:type} 实体。" }, "freeform": { @@ -381,6 +393,7 @@ "pt": "A estação é operada pelo governo.", "pt_BR": "A estação é operada pelo governo.", "ru": "Станция управляется правительством.", + "uk": "Станція експлуатується урядом.", "zh_Hans": "这个站点由政府运营。" } }, @@ -407,6 +420,7 @@ "pt": "A estação é operada por uma organização comunitária ou informal.", "pt_BR": "A estação é operada por uma organização comunitária ou informal.", "ru": "Станция управляется волонтёрами или частной организацией.", + "uk": "Станцією керує громадська або неформальна організація.", "zh_Hans": "该站由社区或非正式组织运营。" } }, @@ -432,6 +446,7 @@ "pl": "Stacja obsługiwana jest przez formalną grupę wolontariuszy.", "pt": "A estação é operada por um grupo formal de voluntários.", "pt_BR": "A estação é operada por um grupo formal de voluntários.", + "uk": "Станцією керує офіційна група волонтерів.", "zh_Hans": "该站由一群正式的志愿者运营。" } }, @@ -457,6 +472,7 @@ "pl": "Stacja jest własnością prywatną.", "pt": "A estação é operada de forma privada.", "pt_BR": "A estação é operada de forma privada.", + "uk": "Станція перебуває у приватній власності.", "zh_Hans": "该站是私人经营的。" } } diff --git a/assets/layers/animal_shelter/animal_shelter.json b/assets/layers/animal_shelter/animal_shelter.json index c2b77600c..b4efe9fd5 100644 --- a/assets/layers/animal_shelter/animal_shelter.json +++ b/assets/layers/animal_shelter/animal_shelter.json @@ -25,6 +25,7 @@ "es": "Un refugio de animales es una instalación donde se traen animales en problemas y el personal de la instalación (voluntarios o no) los alimenta y cuida, rehabilitándolos y curándolos si es necesario. Esta definición incluye perreras para perros abandonados, gaterías para gatos abandonados, refugios para otras mascotas abandonadas y centros de recuperación de fauna silvestre. ", "it": "Un rifugio per animali è una struttura dove vengono portati animali in difficoltà e il personale della struttura (volontari o meno) li nutre e si prende cura di loro, riabilitandoli e curandoli se necessario. Questa definizione include canili per cani abbandonati, gattili per gatti abbandonati, rifugi per altri animali domestici abbandonati e centri di recupero per la fauna selvatica.", "nl": "Een dierenasiel is een instelling waar dieren in nood binnengebracht worden en door de medewerkers gevoederd en verzorgd worden, eventueel met het oog op uitzetting. Hieronder vallen asielen voor achtergelaten huisdieren en opvangcentra voor wilde dieren.", + "uk": "Притулок для тварин – це заклад, куди приводять тварин, що потрапили в біду, а персонал закладу (волонтери чи ні) годує їх та піклується про них, реабілітуючи та лікуючи їх за необхідності. Це визначення включає розплідники для покинутих собак, розплідники для покинутих котів, притулки для інших покинутих домашніх тварин та центри відновлення диких тварин.", "zh_Hans": "动物收容所是一个设施,将遇到麻烦的动物带到这里,设施的工作人员(志愿者或非志愿者)喂养并照顾它们,并在必要时使它们康复和治愈。该定义包括被遗弃的狗的狗舍、被遗弃的猫的猫舍、其他被遗弃的宠物的庇护所和野生动物恢复中心。 " }, "source": { diff --git a/assets/layers/caravansites/caravansites.json b/assets/layers/caravansites/caravansites.json index 0bfcc9a16..2b9be46bf 100644 --- a/assets/layers/caravansites/caravansites.json +++ b/assets/layers/caravansites/caravansites.json @@ -3,7 +3,7 @@ "name": { "en": "Camper sites", "ca": "Llocs d'acampada", - "cs": "Kempovací místa", + "cs": "Místa pro karavany", "da": "Campingpladser", "de": "Wohnmobilstellplätze", "es": "Áreas para autocaravanas", @@ -25,7 +25,7 @@ "description": { "en": "camper sites", "ca": "llocs d'acampada", - "cs": "kempovací místa", + "cs": "místa pro karavany", "da": "autocamperpladser", "de": "Wohnmobilstellplätze", "es": "Áreas para autocaravanas", @@ -56,7 +56,7 @@ "render": { "en": "Camper site {name}", "ca": "Lloc d'acampada {name}", - "cs": "Kempovací místo {name}", + "cs": "Místo pro karavany {name}", "da": "Camperplads {name}", "de": "Wohnmobilstellplatz {name}", "es": "Área para autocaravanas {name}", @@ -81,7 +81,7 @@ "then": { "en": "Unnamed camper site", "ca": "Lloc d'acampada sense nom", - "cs": "Nepojmenované kempovací místo", + "cs": "Nepojmenované místo pro karavany", "da": "Unavngiven autocamperplads", "de": "Unbenannter Wohnmobilstellplatz", "es": "Área para autocaravanas sin nombre", @@ -144,7 +144,7 @@ "title": { "en": "a camper site", "ca": "un lloc d'acampada", - "cs": "kempovací místa", + "cs": "místo pro karavany", "da": "en autocamperplads", "de": "ein Wohnmobilstellplatz", "es": "un área para autocaravanas", @@ -165,7 +165,7 @@ "description": { "en": "Add a new camper site. These are places to stay overnight with your camper. They may be an official campground, or just look like parking, but they should be verified as a safe place to camp for the night without any \"no camping\" signs or other prohibitions from the local community. They might not be signposted at all, but just be defined in a municipal decision.", "ca": "Afig un nou lloc d'acampada oficial. Són llocs designats per a passar la nit amb la teua caravana. Poden semblar-se a un càmping real o simplement a un aparcament. Pot ser que no estiguen senyalitzats en absolut, sinó que simplement estiguen definits per una decisió municipal. Un aparcament normal destinat als acampadors en el qual no s'espera que es passe la nit, no és un càmping. ", - "cs": "Přidejte nové oficiální kempovací místo. Jedná se o místa, určená pro přenocování s karavanem. Mohou vypadat jako skutečný kemp nebo jen jako parkoviště. Takováto místa nemusí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce. Běžné parkoviště určené pro táborníky, kde se nepovažuje za kempovací místo. ", + "cs": "Přidejte nové místo pro karavany. Jedná se o místa pro přenocování s karavanem. Mohou vypadat jako oficiální kemp nebo jen jako parkoviště, ale musejí být ověřena jako bezpečné místo pro přenocování, bez značek \"zákaz kempování\" nebo jiných zákazů vydaných místními úřady. Takováto místa nemusejí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce.", "da": "Tilføj en ny officiel campingplads. Disse er udpegede steder at overnatte med din autocamper. De kan ligne en rigtig campingplads eller bare ligne en parkeringsplads. De er måske slet ikke skiltet, men er blot defineret i en kommunal beslutning. En almindelig parkering beregnet til campister, hvor det ikke forventes at overnatte, er -ikke- en autocamperplads ", "de": "Fügen Sie einen neuen offiziellen Wohnmobilstellplatz hinzu. Dies sind ausgewiesene Plätze, an denen Sie in Ihrem Wohnmobil übernachten können. Sie können wie ein richtiger Campingplatz oder nur wie ein Parkplatz aussehen. Möglicherweise sind sie gar nicht ausgeschildert, sondern nur in einem Gemeindebeschluss festgelegt. Ein normaler Parkplatz für Wohnmobile, auf dem übernachten nicht zulässig ist, zählt nicht als Wohnmobilstellplatz. ", "es": "Añade una nueva área para autocaravanas oficial. Estos son lugares designados para pasar la noche con tu autocaravana. Pueden parecer un camping real o simplemente un aparcamiento. Puede que no estén señalizados, sino definidos en una decisión municipal. Un aparcamiento normal destinado a autocaravanas donde no se espera pasar la noche, -no- es un área para autocaravanas ", @@ -436,7 +436,7 @@ "question": { "en": "How many campers can stay here? (skip if there is no obvious number of spaces or allowed vehicles)", "ca": "Quants acampadors poden allotjar-se ací? (ometre si no hi ha un nombre evident de places o vehicles permesos)", - "cs": "Kolik táborníků zde může zůstat? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", + "cs": "Kolik karavanů zde může stát? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", "da": "Hvor mange campister kan bo her? (spring over, hvis der ikke er noget åbenlyst antal pladser eller tilladte køretøjer)", "de": "Wie viele Wohnmobile können hier parken? (Überspringen, wenn es keine offensichtliche Anzahl von Stellplätzen oder erlaubten Fahrzeugen gibt)", "es": "¿Cuántas autocaravanas pueden alojarse aquí? (omita si no hay un número obvio de plazas o vehículos permitidos)", @@ -455,7 +455,7 @@ "render": { "en": "{capacity} campers can use this place at the same time", "ca": "{capacity} els acampadors poden utilitzar aquest lloc al mateix temps", - "cs": "{capacity} táborníků může toto místo využívat současně", + "cs": "{capacity} karavanů může toto místo využívat současně", "da": "{capacity} campister kan bruge dette sted på samme tid", "de": "{capacity} Wohnmobile können diesen Platz gleichzeitig nutzen", "es": "{capacity} autocaravanas pueden usar este lugar al mismo tiempo", diff --git a/assets/layers/icons/icons.json b/assets/layers/icons/icons.json index 54ebd45d5..93e9e91ec 100644 --- a/assets/layers/icons/icons.json +++ b/assets/layers/icons/icons.json @@ -430,10 +430,10 @@ } }, { - "id": "favourite_icon", + "condition": "_favourite=yes", "description": "Only for rendering", "icon": "circle:white;heart:red", - "condition": "_favourite=yes", + "id": "favourite_icon", "metacondition": "__showTimeSensitiveIcons!=no" }, { diff --git a/assets/layers/last_click/last_click.json b/assets/layers/last_click/last_click.json index 3185c513f..6aaa19115 100644 --- a/assets/layers/last_click/last_click.json +++ b/assets/layers/last_click/last_click.json @@ -217,8 +217,8 @@ }, { "id": "debug", - "render": "{all_tags()}", - "metacondition": "__featureSwitchIsDebugging=true" + "metacondition": "__featureSwitchIsDebugging=true", + "render": "{all_tags()}" } ], "filter": [ diff --git a/assets/layers/note/note.json b/assets/layers/note/note.json index 63117633b..9207f3fe4 100644 --- a/assets/layers/note/note.json +++ b/assets/layers/note/note.json @@ -114,9 +114,9 @@ "lineRendering": [], "tagRenderings": [ { + "classes": "p-0", "id": "conversation", - "render": "{visualize_note_comments()}", - "classes": "p-0" + "render": "{visualize_note_comments()}" }, { "id": "add_image", diff --git a/assets/layers/osm_community_index/osm_community_index.json b/assets/layers/osm_community_index/osm_community_index.json index 1c605ca38..150fc6ecd 100644 --- a/assets/layers/osm_community_index/osm_community_index.json +++ b/assets/layers/osm_community_index/osm_community_index.json @@ -66,16 +66,16 @@ ], "tagRenderings": [ { - "id": "country_name", + "condition": "level=country", "description": "The name of the country", - "render": "{nameEn} {emojiFlag}", - "condition": "level=country" + "id": "country_name", + "render": "{nameEn} {emojiFlag}" }, { - "id": "community_links", + "condition": "_community_links~*", "description": "Community Links (Discord, meetups, Slack groups, IRC channels, mailing lists etc...)", - "render": "{_community_links}", - "condition": "_community_links~*" + "id": "community_links", + "render": "{_community_links}" } ], "filter": [ diff --git a/assets/themes/benches/benches.json b/assets/themes/benches/benches.json index 628bed198..c8f33e81e 100644 --- a/assets/themes/benches/benches.json +++ b/assets/themes/benches/benches.json @@ -107,7 +107,7 @@ "=tagRenderings": [ { "id": "explanation", - "classes":"border-2 border-interactive low-interaction p-2 m-2", + "classes": "border-2 border-interactive low-interaction p-2 m-2", "render": { "en": "This is a bench that is known in Openbenches.org but might not exist in OpenStreetMap. If this bench still exists in the real world, you can add or link this information to OpenStreetMap with the tools below" } diff --git a/langs/layers/nl.json b/langs/layers/nl.json index 08ef896f3..eee81bb13 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -2226,6 +2226,9 @@ }, "title": { "mappings": { + "0": { + "then": "{name}" + }, "1": { "then": "Vogelkijkhut {name}" }, @@ -7252,6 +7255,11 @@ } }, "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, "render": "Natuurgebied" } }, @@ -7989,6 +7997,21 @@ "render": "Pijpleiding" } }, + "play_forest": { + "description": "Een speelbos is een vrij toegankelijke zone in een bos", + "name": "Speelbossen", + "title": { + "mappings": { + "0": { + "then": "{name}" + }, + "1": { + "then": "Speelbos {name}" + } + }, + "render": "Speelbos" + } + }, "playground": { "deletion": { "nonDeleteMappings": { @@ -10033,6 +10056,9 @@ }, "title": { "mappings": { + "0": { + "then": "{name}" + }, "1": { "then": "Voetpad" }, @@ -12343,7 +12369,16 @@ } }, "village_green": { - "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)" + "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)", + "name": "Speelweide", + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "Speelweide" + } }, "visitor_information_centre": { "description": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", @@ -12555,4 +12590,4 @@ "render": "windturbine" } } -} +} \ No newline at end of file diff --git a/langs/layers/uk.json b/langs/layers/uk.json index 405f895fe..689e56e1b 100644 --- a/langs/layers/uk.json +++ b/langs/layers/uk.json @@ -57,7 +57,6 @@ "render": "Найбільша висота стола для переодягання дорослих становить {canonical(max_height)}" }, "adult-changing-table-mechanism": { - "question": "Як регулюється висота пеленального столика?", "mappings": { "0": { "then": "Висота пеленального столика для дорослих регулюється вручну" @@ -65,12 +64,13 @@ "1": { "then": "Висота пеленального столика для дорослих регулюється електрично" } - } + }, + "question": "Як регулюється висота пеленального столика?" }, "adult-changing-table-min_height": { "question": "На яку найнижчу висоту можна пересунути пеленальний столик для дорослих?", - "render": "Найменша висота пеленального столика для дорослих становить {canonical(min_height)}", - "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика" + "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", + "render": "Найменша висота пеленального столика для дорослих становить {canonical(min_height)}" }, "adult-changing-table-support": { "mappings": { @@ -87,14 +87,14 @@ "question": "Як влаштовано пеленальний столик для дорослих?" }, "height": { - "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", - "render": "Пеленальний столик має висоту {canonical(height)}", "mappings": { "0": { "then": "Пеленальний столик регулюється по висоті" } }, - "question": "Яка висота пеленального столика для дорослих?" + "question": "Яка висота пеленального столика для дорослих?", + "questionHint": "Це вимірюється між підлогою та верхньою частиною пеленального столика", + "render": "Пеленальний столик має висоту {canonical(height)}" } }, "title": "Пеленальний столик для дорослих" @@ -218,6 +218,9 @@ "1": { "then": "Місцева інформація" }, + "10": { + "then": "Юридичні повідомлення" + }, "2": { "then": "Інформація про безпеку" }, @@ -241,9 +244,6 @@ }, "9": { "then": "Карта" - }, - "10": { - "then": "Юридичні повідомлення" } }, "question": "Яке повідомлення відображається?" @@ -313,21 +313,21 @@ "2": { "then": "Поштова скринька" }, + "3": { + "then": "Колонка" + }, "4": { "then": "Прапор" }, + "5": { + "then": "Екран" + }, "6": { "then": "Скульптура" }, "7": { "then": "Знак" }, - "3": { - "then": "Колонка" - }, - "5": { - "then": "Екран" - }, "8": { "then": "Брезент" }, @@ -337,27 +337,103 @@ } } }, + "aerialway": { + "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни.", + "name": "Канатні дороги", + "pointRendering": { + "1": { + "label": { + "render": "{name}" + } + } + }, + "tagRenderings": { + "duration": { + "question": "Скільки часу займає одна поїздка цим ліфтом?", + "questionHint": "Це не враховує час очікування.", + "render": "Одна поїздка триває {duration} хвилин" + }, + "length": { + "render": "Цей підйомник має довжину {_length:km} кілометрів" + }, + "occupancy": { + "question": "Скільки людей поміщається в один вагон?", + "render": "{aerialway:occupancy} людей поміщається в один вагон" + }, + "oneway": { + "mappings": { + "0": { + "then": "Цією канатною дорогою можна піднятися лише нагору" + }, + "1": { + "then": "Цією канатною дорогою можна користуватися в обох напрямках" + } + }, + "question": "У якому напрямку можна рухатись цією канатною дорогою?" + }, + "type": { + "mappings": { + "0": { + "then": "Це канатна дорога, де вагончик піднімається і спускається по тому ж тросу." + }, + "1": { + "then": "Це гондола, де вагони рухаються по безперервному колу" + }, + "10": { + "then": "Зіплайн. (Туристична атракція, де люди, що люблять пригоди, спускаються на великій швидкості)" + }, + "2": { + "then": "Відкритий крісельний підйомник із сидіннями, що відкриваються назовні." + }, + "3": { + "then": "Підвісна дорога, на якій є як крісельні, так і гондольні підйомники на одній безперервній колії" + }, + "4": { + "then": "Бугельний підйомник" + }, + "5": { + "then": "Бугельний підйомник з Т-подібними каретками для двох пасажирів одночасно" + }, + "6": { + "then": "Бугельний підйомник з L-подібними перекладинами для одного пасажира одночасно" + }, + "7": { + "then": "Бугельний підйомник з платформою для перевезення одного пасажира за раз" + }, + "8": { + "then": "Буксирний трос, за який тримаються або прикріплюються лижники" + }, + "9": { + "then": "Чарівний килим (конвеєрна стрічка на землі)" + } + }, + "question": "Що це за тип повітряної траси?" + } + }, + "title": { + "render": "Канатна дорога {name}" + } + }, "all_streets": { - "name": "Всі вулиці", "description": "Змішати з (майже) всіма вулицями", + "name": "Всі вулиці", "title": { "render": "Вулиця" } }, "ambulancestation": { + "description": "Станція швидкої медичної допомоги – це місце для зберігання автомобілів швидкої допомоги, медичного обладнання, засобів індивідуального захисту та інших медичних матеріалів.", "name": "Станції швидкої допомоги", + "presets": { + "0": { + "description": "Додати станцію швидкої допомоги на карту", + "title": "станція швидкої допомоги" + } + }, "tagRenderings": { - "ambulance-place": { - "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)", - "render": "Ця станція знаходиться в межах {addr:place}." - }, - "ambulance-street": { - "question": "Як називається вулиця, на якій розташована станція?", - "render": "Ця станція розташована вздовж шосе під назвою {addr:street}." - }, "ambulance-agency": { - "render": "Цю станцію обслуговує {operator}.", - "question": "Яке агентство керує цією станцією?" + "question": "Яке агентство керує цією станцією?", + "render": "Цю станцію обслуговує {operator}." }, "ambulance-name": { "question": "Як називається ця станція швидкої допомоги?", @@ -365,35 +441,37 @@ }, "ambulance-operator-type": { "mappings": { + "0": { + "then": "Станція експлуатується урядом." + }, "1": { "then": "Станцією керує громадська або неформальна організація." }, "2": { "then": "Станцією керує офіційна група волонтерів." }, - "0": { - "then": "Станція експлуатується урядом." - }, "3": { "then": "Станція перебуває у приватній власності." } }, "question": "Як класифікується оператор станції?", "render": "Оператор є сутністю типу {operator:type} (n)." + }, + "ambulance-place": { + "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)", + "render": "Ця станція знаходиться в межах {addr:place}." + }, + "ambulance-street": { + "question": "Як називається вулиця, на якій розташована станція?", + "render": "Ця станція розташована вздовж шосе під назвою {addr:street}." } }, - "presets": { - "0": { - "description": "Додати станцію швидкої допомоги на карту", - "title": "станція швидкої допомоги" - } - }, - "description": "Станція швидкої медичної допомоги – це місце для зберігання автомобілів швидкої допомоги, медичного обладнання, засобів індивідуального захисту та інших медичних матеріалів.", "title": { "render": "Станція швидкої допомоги" } }, "animal_shelter": { + "description": "Притулок для тварин – це заклад, куди приводять тварин, що потрапили в біду, а персонал закладу (волонтери чи ні) годує їх та піклується про них, реабілітуючи та лікуючи їх за необхідності. Це визначення включає розплідники для покинутих собак, розплідники для покинутих котів, притулки для інших покинутих домашніх тварин та центри відновлення диких тварин.", "name": "Притулки для тварин", "tagRenderings": { "2": { @@ -402,19 +480,18 @@ }, "boarded_animals": { "mappings": { + "1": { + "then": "Тут тримають котів" + }, "2": { "then": "Тут утримують коней" }, "3": { "then": "Тут тримають птахів" - }, - "1": { - "then": "Тут тримають котів" } } } - }, - "description": "Притулок для тварин – це заклад, куди приводять тварин, що потрапили в біду, а персонал закладу (волонтери чи ні) годує їх та піклується про них, реабілітуючи та лікуючи їх за необхідності. Це визначення включає розплідники для покинутих собак, розплідники для покинутих котів, притулки для інших покинутих домашніх тварин та центри відновлення диких тварин." + } }, "artwork": { "description": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу", @@ -3649,82 +3726,5 @@ "title": { "render": "Утилізація відходів" } - }, - "aerialway": { - "name": "Канатні дороги", - "pointRendering": { - "1": { - "label": { - "render": "{name}" - } - } - }, - "tagRenderings": { - "duration": { - "question": "Скільки часу займає одна поїздка цим ліфтом?", - "questionHint": "Це не враховує час очікування.", - "render": "Одна поїздка триває {duration} хвилин" - }, - "length": { - "render": "Цей підйомник має довжину {_length:km} кілометрів" - }, - "occupancy": { - "question": "Скільки людей поміщається в один вагон?", - "render": "{aerialway:occupancy} людей поміщається в один вагон" - }, - "oneway": { - "mappings": { - "0": { - "then": "Цією канатною дорогою можна піднятися лише нагору" - }, - "1": { - "then": "Цією канатною дорогою можна користуватися в обох напрямках" - } - }, - "question": "У якому напрямку можна рухатись цією канатною дорогою?" - }, - "type": { - "mappings": { - "0": { - "then": "Це канатна дорога, де вагончик піднімається і спускається по тому ж тросу." - }, - "10": { - "then": "Зіплайн. (Туристична атракція, де люди, що люблять пригоди, спускаються на великій швидкості)" - }, - "2": { - "then": "Відкритий крісельний підйомник із сидіннями, що відкриваються назовні." - }, - "5": { - "then": "Бугельний підйомник з Т-подібними каретками для двох пасажирів одночасно" - }, - "7": { - "then": "Бугельний підйомник з платформою для перевезення одного пасажира за раз" - }, - "4": { - "then": "Бугельний підйомник" - }, - "1": { - "then": "Це гондола, де вагони рухаються по безперервному колу" - }, - "3": { - "then": "Підвісна дорога, на якій є як крісельні, так і гондольні підйомники на одній безперервній колії" - }, - "6": { - "then": "Бугельний підйомник з L-подібними перекладинами для одного пасажира одночасно" - }, - "8": { - "then": "Буксирний трос, за який тримаються або прикріплюються лижники" - }, - "9": { - "then": "Чарівний килим (конвеєрна стрічка на землі)" - } - }, - "question": "Що це за тип повітряної траси?" - } - }, - "description": "Різні види транспорту для пасажирів і вантажів, що використовують дроти, включаючи канатні дороги, гондоли, крісельні підйомники, бугельні підйомники та зиплайни.", - "title": { - "render": "Канатна дорога {назва}" - } } -} +} \ No newline at end of file diff --git a/langs/themes/ca.json b/langs/themes/ca.json index 4d132cefb..6dc6023d2 100644 --- a/langs/themes/ca.json +++ b/langs/themes/ca.json @@ -687,7 +687,7 @@ "title": "Un mapa de mapes" }, "maxspeed": { - "description": "Aquest mapa mostra la velocitat màxima legalment permesa a cada carretera. Si falta una velocitat màxima o és incorrecta, podeu corregir-la aquí.", + "description": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera. Si falta una velocitat màxima o és incorrecta, podeu corregir-la aquí.", "shortDescription": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera.", "title": "Velocitat" }, @@ -1020,8 +1020,8 @@ "title": "Brossa" }, "waste_basket": { - "description": "A aquest mapa trobaràs les papereres a prop teua. Si falta una paperera al mapa pots afegir-la tu mateix.", + "description": "A aquest mapa trobaràs les papereres a prop teua. Si falta una paperera al mapa pots afegir-la tu mateix", "shortDescription": "Un mapa amb papereres", "title": "Papepera" } -} +} \ No newline at end of file diff --git a/langs/themes/da.json b/langs/themes/da.json index eede8494c..ac9941689 100644 --- a/langs/themes/da.json +++ b/langs/themes/da.json @@ -1229,7 +1229,17 @@ "title": "Vandrehjem udelukkende for grupper" } }, - "name": "Vandrehjem for grupper og spejdere" + "name": "Vandrehjem for grupper og spejdere", + "tagRenderings+": { + "1": { + "mappings": { + "1": { + "then": "Det koster et gebyr." + } + }, + "question": "Skal der betales et gebyr?" + } + } } }, "4": { @@ -1525,9 +1535,17 @@ "title": "Vinterservice" }, "zhv": { + "description": "Lille tema, der gør det muligt at importere busstoppesteder fra Zentrales Haltestellenverzeichnis i Tyskland.", "layers": { "0": { + "name": "Offentlige trafikstoppesteder i ZHV", "tagRenderings": { + "closest_stop": { + "render": "Det nærmeste stoppested i OSM er {_closest_osm_stop_name}." + }, + "id": { + "render": "ID'et for dette stop er {_ifopt}" + }, "import": { "render": { "special": { @@ -1535,26 +1553,19 @@ } } }, + "imported": { + "render": "Dette stop er (sandsynligvis) allerede tilføjet. Se punktet." + }, "name": { "render": "Dette stop hedder {Name}" }, "tag-hint": { "render": "Dette stop får følgende tags: {_tags}" - }, - "closest_stop": { - "render": "Det nærmeste stoppested i OSM er {_closest_osm_stop_name}." - }, - "id": { - "render": "ID'et for dette stop er {_ifopt}" - }, - "imported": { - "render": "Dette stop er (sandsynligvis) allerede tilføjet. Se punktet." } }, "title": { "render": "Offentlig transportstop i ZHV" - }, - "name": "Offentlige trafikstoppesteder i ZHV" + } }, "1": { "override": { @@ -1565,6 +1576,12 @@ "0": { "then": "Dette stoppested bruges til buskørsel." }, + "1": { + "then": "Dette stop bruges til togtransport." + }, + "2": { + "then": "Dette stoppested bruges til letbanetransport." + }, "3": { "then": "Dette stoppested bruges til metrotransport." }, @@ -1573,38 +1590,31 @@ }, "5": { "then": "Dette stoppested bruges til færgetransport." - }, - "1": { - "then": "Dette stop bruges til togtransport." - }, - "2": { - "then": "Dette stoppested bruges til letbanetransport." } }, "question": "Hvilke transporttyper bruges denne stoppested til?" }, "1": { - "question": "Hvad er IFOPT-referencen for dette stop?", "freeform": { "placeholder": "f.eks. NL:Q:15003950 eller de:03457:15801::2" }, + "question": "Hvad er IFOPT-referencen for dette stop?", "render": "IFOPT-referencen for dette stop er {ref:IFOPT}." }, + "2": { + "render": "Der er et ZHV-stoppested i nærheden.: {_closest_zhv_stop_name}." + }, "3": { "render": { "special": { "message": "Føj IFOPT til dette stop" } } - }, - "2": { - "render": "Der er et ZHV-stoppested i nærheden.: {_closest_zhv_stop_name}." } } } } }, - "title": "ZHV-importværktøj", - "description": "Lille tema, der gør det muligt at importere busstoppesteder fra Zentrales Haltestellenverzeichnis i Tyskland." + "title": "ZHV-importværktøj" } -} +} \ No newline at end of file diff --git a/langs/themes/de.json b/langs/themes/de.json index db6b71cb0..5a7917d53 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -726,6 +726,9 @@ }, "title": "Gesundheitseinrichtungen" }, + "historic_aircraft": { + "title": "historische Flugzeuge" + }, "hotels": { "description": "Auf dieser Karte finden Sie Hotels in Ihrer Nähe", "title": "Hotels" @@ -891,17 +894,6 @@ "version": { "question": "Welche Version von MapComplete wurde verwendet, um diese Änderung vorzunehmen?", "render": "Erstellt mit {editor}" - }, - "platform": { - "mappings": { - "0": { - "then": "Im Internet erstellt" - }, - "1": { - "then": "Erstellt mit der Android-App" - } - }, - "question": "Mit welcher Plattform wurde die Änderung vorgenommen?" } }, "title": { @@ -1098,11 +1090,6 @@ "override": { "name": "Hundefreundliche Geschäfte" } - }, - "6": { - "override": { - "name=": "Hundefreundliche Trinkstellen" - } } }, "title": "Haustiere" @@ -1171,9 +1158,18 @@ "description": "Auf dieser Karte sind Fußgängerüberwege mit Regenbogenfarben eingezeichnet und können leicht hinzugefügt werden", "title": "Regenbogen-Fußgängerübergänge" }, + "sauna": { + "description": "Sauna", + "title": "Sauna" + }, "scouting": { "description": "Eine Pfadfindergruppe ist eine soziale Jugendbewegung mit einem starken Fokus auf Aktivitäten im Freien. Die Aktivitäten reichen von Camping, Wandern, Wassersport, Rucksacktouren, Erkundung der Natur, ...", "layers": { + "1": { + "override": { + "name": "Gruppenzeltplatz" + } + }, "3": { "override": { "=presets": { @@ -1181,7 +1177,17 @@ "title": "Unterkunft ausschließlich für Gruppen/Pfadfinder:innen" } }, - "name": "Gruppenunterkünfte für Gruppen/Pfadfinder:innen" + "name": "Gruppenunterkünfte für Gruppen/Pfadfinder:innen", + "tagRenderings+": { + "1": { + "mappings": { + "1": { + "then": "Es gibt eine Gebühr." + } + }, + "question": "Gibt es hier eine Gebühr?" + } + } } }, "4": { @@ -1192,11 +1198,6 @@ } } } - }, - "1": { - "override": { - "name": "Gruppenzeltplatz" - } } }, "title": "Pfadfindergruppen" @@ -1446,30 +1447,7 @@ "shortDescription": "Eine Karte mit Abfalleimern", "title": "Abfalleimer" }, - "sauna": { - "title": "Sauna", - "description": "Sauna" - }, "winter_service": { "title": "Winterdienst" - }, - "historic_aircraft": { - "title": "historische Flugzeuge", - "description": "Eine Karte mit allen historischen, dauerhaft installierten Flugzeugen. Die Flugzeuge können sich in Museen, Kunstwerken oder Gedenkstätten befinden." - }, - "zhv": { - "layers": { - "1": { - "override": { - "tagRenderings+": { - "1": { - "freeform": { - "placeholder": "z. B. NL:Q:15003950 oder de:03457:15801::2" - } - } - } - } - } - } } -} +} \ No newline at end of file diff --git a/langs/themes/en.json b/langs/themes/en.json index f82f0cd76..08fd9dc45 100644 --- a/langs/themes/en.json +++ b/langs/themes/en.json @@ -108,7 +108,7 @@ "0": { "render": "This is a bench that is known in Openbenches.org but might not exist in OpenStreetMap. If this bench still exists in the real world, you can add or link this information to OpenStreetMap with the tools below" }, - "2": { + "1": { "render": { "special": { "text": "See {_idN} on openbenches.org" diff --git a/langs/themes/fr.json b/langs/themes/fr.json index df3f2fb22..f4d428265 100644 --- a/langs/themes/fr.json +++ b/langs/themes/fr.json @@ -1110,9 +1110,5 @@ "description": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même.", "shortDescription": "Une carte des poubelles", "title": "Poubelles" - }, - "architecture": { - "description": "Une carte montrant les styles architecturaux des bâtiments", - "title": "Bâtiments avec un style architectural" } -} +} \ No newline at end of file diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 693f13c7a..2018c7194 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -654,8 +654,37 @@ "building type": { "question": "Wat voor soort gebouw is dit?" }, + "grb-fixme": { + "mappings": { + "0": { + "then": "Geen fixme" + } + }, + "question": "Wat zegt de fixme?", + "render": "De fixme is {fixme}" + }, + "grb-housenumber": { + "mappings": { + "0": { + "then": "Geen huisnummer" + } + }, + "question": "Wat is het huisnummer?", + "render": "Het huisnummer is {addr:housenumber}" + }, + "grb-min-level": { + "question": "Hoeveel verdiepingen ontbreken?", + "render": "Dit gebouw begint maar op de {building:min_level} verdieping" + }, "grb-reference": { "render": "Werd geïmporteerd vanuit GRB, het referentienummer is {source:geometry:ref}" + }, + "grb-street": { + "question": "Wat is de straat?", + "render": "De straat is {addr:street}" + }, + "grb-unit": { + "render": "De wooneenheid-aanduiding is {addr:unit} " } } }, @@ -697,7 +726,9 @@ "render": "Link op profiel verplicht" } } - } + }, + "shortDescription": "Grb import helper tool", + "title": "GRB import helper" }, "guideposts": { "description": "Wegwijzers (ook wel handwijzer genoemd) zijn vaak te vinden langs officiële wandel-, fiets-, ski- of paardrijroutes om de richtingen naar verschillende bestemmingen aan te geven. Vaak zijn ze vernoemd naar een regio of plaats en geven ze de hoogte aan.\n\nDe positie van een wegwijzer kan door een wandelaar/fietser/renner/skiër worden gebruikt als bevestiging van de huidige positie, vooral als ze een gedrukte kaart zonder GPS-ontvanger gebruiken. ", @@ -1100,6 +1131,11 @@ }, "title": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen" }, + "play_forests": { + "description": "Een speelbos is een zone in een bos die vrij toegankelijk is voor spelende kinderen. Deze wordt in bossen van het Agentschap Natuur en bos altijd aangeduid met het overeenkomstige bord.", + "shortDescription": "Deze kaart toont speelbossen", + "title": "Speelbossen" + }, "playgrounds": { "description": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen", "shortDescription": "Een kaart met speeltuinen", @@ -1173,6 +1209,47 @@ "description": "Alles om te skiën", "title": "Skipistes en kabelbanen" }, + "speelplekken": { + "description": "

Welkom bij de Groendoener!

De Zuidrand dat is spelen, ravotten, chillen, wandelen,… in het groen. Meer dan 200 grote en kleine speelplekken liggen er in parken, in bossen en op pleintjes te wachten om ontdekt te worden. De verschillende speelplekken werden getest én goedgekeurd door kinder- en jongerenreporters uit de Zuidrand. Met leuke challenges dagen de reporters jou uit om ook op ontdekking te gaan. Klik op een speelplek op de kaart, bekijk het filmpje en ga op verkenning!

Het project groendoener kadert binnen het strategisch project Beleefbare Open Ruimte in de Antwerpse Zuidrand en is een samenwerking tussen het departement Leefmilieu van provincie Antwerpen, Sportpret vzw, een OpenStreetMap-België Consultent en Createlli vzw. Het project kwam tot stand met steun van Departement Omgeving van de Vlaamse Overheid.
", + "layers": { + "6": { + "name": "Wandelroutes van provincie Antwerpen", + "tagRenderings": { + "walk-description": { + "render": "

Korte beschrijving:

{description}" + }, + "walk-length": { + "render": "Deze wandeling is {_length:km}km lang" + }, + "walk-operator": { + "question": "Wie beheert deze wandeling en plaatst dus de signalisatiebordjes?" + }, + "walk-operator-email": { + "question": "Naar wie kan men emailen bij problemen rond signalisatie?", + "render": "Bij problemen met signalisatie kan men emailen naar {operator:email}" + }, + "walk-type": { + "mappings": { + "0": { + "then": "Dit is een internationale wandelroute" + }, + "1": { + "then": "Dit is een nationale wandelroute" + }, + "2": { + "then": "Dit is een regionale wandelroute" + }, + "3": { + "then": "Dit is een lokale wandelroute" + } + } + } + } + } + }, + "shortDescription": "Speelplekken in de Antwerpse Zuidrand", + "title": "Welkom bij de groendoener!" + }, "sport_pitches": { "description": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen", "shortDescription": "Deze kaart toont sportvelden", @@ -1291,6 +1368,10 @@ }, "title": "Straatverlichting" }, + "street_lighting_assen": { + "description": "Op deze kaart vind je alles over straatlantaarns + een dataset van Assen", + "title": "Straatverlichting - Assen" + }, "surveillance": { "description": "Op deze open kaart kan je bewakingscamera's vinden.", "shortDescription": "Bewakingscameras en dergelijke", @@ -1404,9 +1485,13 @@ "description": "Kaart met afvalbakken en recyclingfaciliteiten.", "title": "Afval" }, + "waste_assen": { + "description": "Kaart met afvalbakken en recyclingfaciliteiten + een dataset voor Assen.", + "title": "Afval - Assen" + }, "waste_basket": { "description": "Op deze kaart vind je afvalbakken bij jou in de buurt. Als er een afvalbak ontbreekt op deze kaart, kun je deze zelf toevoegen", "shortDescription": "Een kaart met vuilnisbakken", "title": "Vuilnisbakken" } -} +} \ No newline at end of file diff --git a/langs/themes/pt_BR.json b/langs/themes/pt_BR.json index ffcd32c64..f73157758 100644 --- a/langs/themes/pt_BR.json +++ b/langs/themes/pt_BR.json @@ -40,8 +40,5 @@ "trees": { "description": "Mapeie todas as árvores!", "title": "Árvores" - }, - "bicycle_rental": { - "description": "Neste mapa, você encontrará as diversas estações de aluguel de bicicletas, conforme são conhecidas pelo OpenStreetMap" } -} +} \ No newline at end of file diff --git a/langs/themes/ru.json b/langs/themes/ru.json index c498483ac..25285f22c 100644 --- a/langs/themes/ru.json +++ b/langs/themes/ru.json @@ -276,4 +276,4 @@ "waste_basket": { "title": "Корзины для мусора" } -} +} \ No newline at end of file diff --git a/langs/themes/uk.json b/langs/themes/uk.json index 9dd59c7b0..824401917 100644 --- a/langs/themes/uk.json +++ b/langs/themes/uk.json @@ -357,9 +357,6 @@ "render": "Цей велосипедний вузол востаннє опитувався на {survey:date}" } } - }, - "title": { - "render": "Велосипедний вузол" } }, "2": { @@ -379,8 +376,7 @@ } } } - }, - "title": "Мережі велосипедних вузлів" + } }, "cyclestreets": { "description": "Велодорога — це шлях, на якому моторизованому транспорту заборонено обганяти велосипедистів. Вони позначені спеціальним дорожнім знаком. Велодоріжки можна знайти в Нідерландах і Бельгії, а також у Німеччині та Франції. ", @@ -393,16 +389,8 @@ "0": { "then": "{name} скоро стане велосипедною доріжкою" } - }, - "render": "Майбутня велодоріжка" + } } - }, - "2": { - "name": "Всі вулиці", - "title": { - "render": "Вулиця" - }, - "description": "Шар для позначення будь-якої вулиці як велосипедної" } }, "shortDescription": "Мапа велодоріжок", @@ -465,11 +453,6 @@ "override": { "=name": "Спортивні місця без етимологічної інформації" } - }, - "8": { - "override": { - "=name": "Парки без інформації про етимологію" - } } }, "shortDescription": "Від чого походить назва топоніма?", @@ -477,90 +460,7 @@ }, "facadegardens": { "shortDescription": "На цій мапі показані фасадні сади з фотографіями та корисною інформацією про орієнтацію, сонячне освітлення та типи рослин.", - "title": "Фасадні сади", - "layers": { - "0": { - "description": "Фасадні сади", - "name": "Фасадні сади", - "presets": { - "0": { - "description": "Додати фасадний сад", - "title": "фасадний сад" - } - }, - "tagRenderings": { - "facadegardens-description": { - "question": "Додаткова інформація про сад (якщо потрібно і ще не описана вище)", - "render": "Більше деталей: {description}" - }, - "facadegardens-direction": { - "question": "Яка орієнтація саду?", - "render": "Орієнтація: {direction} (де 0=Північ і 90=Схід)" - }, - "facadegardens-edible": { - "mappings": { - "0": { - "then": "Є їстівні рослини" - }, - "1": { - "then": "Немає їстівних рослин" - } - }, - "question": "Чи є якісь їстівні рослини?" - }, - "facadegardens-plants": { - "mappings": { - "0": { - "then": "Є виноградні лози" - }, - "1": { - "then": "Є квітучі рослини" - }, - "2": { - "then": "Є чагарники" - }, - "3": { - "then": "Є рослини, що вкривають землю" - } - }, - "question": "Які рослини тут ростуть?" - }, - "facadegardens-rainbarrel": { - "mappings": { - "1": { - "then": "Немає бочки для дощової води" - }, - "0": { - "then": "Є бочка для дощової води" - } - }, - "question": "Чи встановлено бочку для води для саду?" - }, - "facadegardens-start_date": { - "question": "Коли був побудований сад? (достатньо вказати рік)", - "render": "Дата будівництва саду: {start_date}" - }, - "facadegardens-sunshine": { - "mappings": { - "0": { - "then": "Сад знаходиться на сонячному місці" - }, - "1": { - "then": "Сад знаходиться в півтіні" - }, - "2": { - "then": "Сад знаходиться в тіні" - } - }, - "question": "Сад затінений чи сонячний?" - } - }, - "title": { - "render": "Фасадний сад" - } - } - }, - "description": "href='https://nl.wikipedia.org/wiki/Geveltuin' target=_blank>Фасадні сади, зелені фасади та дерева в місті не лише приносять мир і спокій, але й роблять місто красивішим, збільшують біорізноманіття, створюють охолоджувальний ефект та покращують якість повітря.
Klimaan VZW та Mechelen Klimaatneutraal хочуть створити карту існуючих та нових фасадних садів як приклад для людей, які хочуть створити власний сад, або для міських пішоходів, які люблять природу.
Більше інформації про проект на сайті klimaan.be." + "title": "Фасадні сади" }, "fireplace": { "description": "Відкрите місце для розведення багаття або стаціонарне барбекю в офіційному місці.", @@ -572,29 +472,7 @@ }, "fritures": { "description": "На цій мапі ви знайдете свій улюблений заклад з картоплею фрі!", - "title": "Картопля фрі", - "layers": { - "0": { - "override": { - "filter+": { - "0": { - "options": { - "0": { - "question": "Немає переваг щодо типу масла" - }, - "1": { - "question": "Показувати тільки фритюри з використанням рослинної олії" - }, - "2": { - "question": "Показувати лише фритюри з використанням тваринного жиру" - } - } - } - }, - "name": "Магазин картоплі фрі" - } - } - } + "title": "Картопля фрі" }, "ghostbikes": { "description": "Велосипед-примара — це меморіал велосипедисту, який загинув у дорожньо-транспортній пригоді, у вигляді білого велосипеда, постійно розміщеного поблизу місця аварії.

На цій мапі ви можете побачити всі велосипеди-примари, відомі в OpenStreetMap. Велосипед-примара відсутній? Кожен може додавати або оновлювати інформацію тут — вам потрібно лише мати обліковий запис OpenStreetMap.

На Mastodon існує бот, який публікує щомісячний огляд велосипедів-примар у всьому світі

", @@ -602,26 +480,7 @@ }, "ghostsigns": { "description": "Мапа, на якій показані вивіски на будівлях, що не використовуються", - "title": "Примарні знаки", - "layers": { - "2": { - "override": { - "+tagRenderings": { - "0": { - "mappings": { - "1": { - "then": "Цей витвір мистецтва не є історичною рекламою" - }, - "0": { - "then": "Цей витвір мистецтва є історичною рекламою" - } - }, - "question": "Чи є цей витвір мистецтва історичною рекламою?" - } - } - } - } - } + "title": "Примарні знаки" }, "glutenfree": { "description": "Колективна мапа з безглютеновими продуктами", @@ -633,34 +492,15 @@ }, "hackerspaces": { "shortDescription": "Мапа хакерських просторів", - "title": "Хакерспейси та мейкерспейси", - "description": "На цій карті ви можете побачити хакерспейси, додати новий хакерспейс або оновити дані безпосередньо" + "title": "Хакерспейси та мейкерспейси" }, "hailhydrant": { "shortDescription": "Мапа, що показує гідранти, вогнегасники, пожежні станції та станції швидкої допомоги.", - "title": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги", - "description": "На цій карті ви можете знайти та оновити гідранти, пожежні станції, станції швидкої допомоги та вогнегасники у ваших улюблених районах." + "title": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги" }, "healthcare": { "description": "На цій мапі показані різні обʼєкти, повʼязані з охороною здоровʼя", - "title": "Охорона здоров'я", - "layers": { - "5": { - "override": { - "=presets": { - "0": { - "title": "магазин медичних товарів" - }, - "1": { - "title": "магазин слухових апаратів" - }, - "2": { - "title": "оптик" - } - } - } - } - } + "title": "Охорона здоров'я" }, "historic_aircraft": { "description": "Карта, що показує всі історичні, стаціонарно встановлені літаки. Літак може бути музеєм, витвором мистецтва або меморіалом.", @@ -675,8 +515,7 @@ "title": "Готелі" }, "icecream": { - "title": "Морозиво", - "description": "Карта з позначенням кафе-морозива та автоматів з продажу морозива" + "title": "Морозиво" }, "indoors": { "description": "На цій мапі показані загальнодоступні плани приміщень", @@ -688,19 +527,7 @@ }, "kerbs_and_crossings": { "description": "Мапа з позначенням бордюрів та пішохідних переходів.", - "title": "Бордюри та переходи", - "layers": { - "1": { - "override": { - "=presets": { - "0": { - "description": "Перехід для пішоходів та/або велосипедистів", - "title": "перехід" - } - } - } - } - } + "title": "Бордюри та переходи" }, "lactosefree": { "description": "Колективна мапа з магазинами та ресторанами з безлактозними продуктами", @@ -717,8 +544,7 @@ }, "maxspeed": { "shortDescription": "Ця мапа показує дозволену законом максимальну швидкість на кожній дорозі.", - "title": "Максимальна швидкість", - "description": "Ця карта показує дозволену законом максимальну швидкість на кожній дорозі. Якщо максимальна швидкість відсутня або неправильна, ви можете виправити її тут." + "title": "Максимальна швидкість" }, "memorials": { "description": "Меморіали — це фізичні обʼєкти, постійно розміщені в публічному просторі на згадку про особу чи подію. Це можуть бути найрізноманітніші обʼєкти, такі як статуї, меморіальні дошки, картини, військові обʼєкти (наприклад, танки), …", @@ -735,74 +561,11 @@ }, "observation_towers": { "shortDescription": "Загальнодоступні вежі, з яких можна насолоджуватися краєвидом", - "title": "Спостережні вежі", - "description": "Вежі, з яких можна помилуватися краєвидом, доступні для громадськості" + "title": "Спостережні вежі" }, "onwheels": { "description": "На цій мапі показані громадські місця, доступні для осіб в інвалідних візків, їх також можна легко додати", - "title": "На колесах", - "layers": { - "16": { - "override": { - "tagRenderings+": { - "0": { - "mappings": { - "0": { - "then": "Жоден вхід не позначено" - }, - "1": { - "then": "Жоден з {_entrance_count} входів ще не має інформації про ширину" - } - }, - "render": { - "after": "Для входів ({_entrances_count_without_width_count}) ще немає інформації про ширину", - "before": "

Входи

У цій будівлі є {_entrances_count} входів:", - "special": { - "tagrendering": "Вхід розміром {canonical(width)}" - } - } - } - } - } - }, - "20": { - "override": { - "=title": { - "render": "Статистика" - } - } - }, - "7": { - "override": { - "=filter": { - "0": { - "options": { - "0": { - "question": "Всі види бордюрів" - }, - "3": { - "question": "Врівень з бордюром (~0 см)" - }, - "1": { - "question": "Піднятий бордюр (>3 см)" - }, - "2": { - "question": "Знижений бордюр (~3 см)" - } - } - } - } - } - }, - "9": { - "override": { - "name": "Паркувальні місця для інвалідів" - } - }, - "0": { - "description": "Усі об'єкти, дані входу яких відображено на зручності, а не на об'єкті входу" - } - } + "title": "На колесах" }, "openwindpowermap": { "description": "Мапа для показу та редагування вітрових турбін.", @@ -810,13 +573,11 @@ }, "osm_community_index": { "shortDescription": "Індекс ресурсів спільноти для OpenStreetMap.", - "title": "Індекс спільноти OSM", - "description": "Список ресурсів для користувачів OpenStreetMap. «Ресурси» можуть бути посиланнями на форуми, зустрічі, групи Slack, IRC-канали, списки розсилки тощо. Все, що може бути цікавим або корисним для картографів, особливо початківців." + "title": "Індекс спільноти OSM" }, "parkings": { "shortDescription": "На цій мапі показані різні місця для паркування", - "title": "Парковки", - "description": "На цій карті показано різні місця для паркування" + "title": "Парковки" }, "personal": { "description": "Створіть особисту тему на основі всіх доступних шарів усіх тем. Щоб показати деякі дані, відкрийте вибір шару", @@ -839,21 +600,6 @@ "override": { "name": "Магазини, дружні до собак" } - }, - "8": { - "override": { - "=presets": { - "0": { - "title": "зоомагазин" - } - }, - "name": "Зоомагазини" - } - }, - "6": { - "override": { - "name=": "Місця для пиття, де дозволено проживання з собаками" - } } }, "title": "Ветеринари, собачі парки та інші зручності для домашніх тварин" @@ -866,33 +612,7 @@ "postboxes": { "description": "На цій карті ви можете знайти та додати дані поштових відділень та поштових скриньок. Ви можете використовувати цю карту, щоб знайти, куди можна надіслати свою наступну листівку! :)
Помітили помилку або відсутня поштова скринька? Ви можете редагувати цю карту за допомогою безкоштовного облікового запису OpenStreetMap.", "shortDescription": "Мапа з позначенням поштових скриньок та поштових відділень", - "title": "Мапа поштових скриньок та поштових відділень", - "layers": { - "3": { - "override": { - "=presets": { - "0": { - "title": "відсутній магазин, який є партнером пошти", - "description": "Якщо магазину ще немає на карті, але він є партнером пошти, ви можете додати його сюди." - } - }, - "description": "Додати нового партнера з публікацій на карту в існуючому магазині", - "+tagRenderings": { - "0": { - "mappings": { - "1": { - "then": "Цей магазин не є поштовим партнером" - }, - "0": { - "then": "Цей магазин є партнером пошти" - } - }, - "question": "Цей магазин є поштовим партнером?" - } - } - } - } - } + "title": "Мапа поштових скриньок та поштових відділень" }, "rainbow_crossings": { "description": "На цій мапі показуються пішохідні переходи позначені кольорами веселки, вони також можуть бути легко додані", @@ -900,33 +620,7 @@ }, "scouting": { "description": "Скаутський загін - це громадський молодіжний рух, що робить акцент на активному відпочинку на природі. Заходи варіюються від таборування, піших прогулянок, водних видів спорту, рюкзаків, дослідження природи, ...", - "title": "Скаутські групи", - "layers": { - "4": { - "override": { - "=presets": { - "0": { - "title": "Хостел" - } - } - } - }, - "3": { - "override": { - "=presets": { - "0": { - "title": "Хостел виключно для груп" - } - }, - "name": "Гуртожитки для груп та скаутів" - } - }, - "1": { - "override": { - "name": "Групові кемпінги" - } - } - } + "title": "Скаутські групи" }, "shops": { "description": "На цій мапі можна позначити основну інформацію про магазини, додати години роботи та номери телефонів", @@ -939,8 +633,7 @@ }, "sport_pitches": { "shortDescription": "Мапа з позначенням спортивних майданчиків", - "title": "Спортивні майданчики", - "description": "Спортивний майданчик – це зона, де проводяться спортивні ігри" + "title": "Спортивні майданчики" }, "sports": { "shortDescription": "Мапа спортивних обʼєктів.", @@ -983,313 +676,5 @@ "wayside_shrines": { "description": "Ця мапа показує святині та хрести, знайдені на узбіччях доріг і стежок, а також дозволяє додавати нові", "title": "Придорожні святині" - }, - "grb": { - "popup": { - "0": { - "body": { - "0": { - "render": { - "special": { - "text": "Редагувати профіль користувача" - }, - "after": "щоб додати посилання https://wiki.openstreetmap.org/wiki/WikiProject_Belgium/Building_and_address_import" - } - }, - "1": { - "render": { - "special": { - "message": "Оновіть свій профіль" - } - } - } - }, - "title": { - "render": "Згадка профілю обов'язкова" - } - } - }, - "description": "Ця тема є спробою допомогти автоматизувати імпорт GRB.", - "layers": { - "0": { - "tagRenderings": { - "grb-reference": { - "render": "Імпортовано з GRB, номер посилання: {source:geometry:ref}" - }, - "building type": { - "question": "Що це за будівля?" - } - }, - "title": { - "mappings": { - "0": { - "then": "Частина будівлі" - } - } - } - }, - "1": { - "tagRenderings": { - "Import-button": { - "mappings": { - "0": { - "then": "Метатеги ще не обчислено... Знову відкрити це спливаюче вікно" - }, - "1": { - "then": "Ця будівля має отвори та змодельована як відношення. Таким чином, її не можна об'єднати. Зробіть об'єднання вручну через сайт експорту будівель {open_in_josm()}" - } - } - } - } - } - } - }, - "items_with_image": { - "title": "Усі предмети із зображеннями", - "description": "Карта, що показує всі елементи в OSM, які мають зображення. Ця тема дуже погано підходить для MapComplete, оскільки користувач не може безпосередньо додавати зображення. Однак ця тема здебільшого призначена для того, щоб включити все це до бази даних, що дозволить швидко отримувати зображення поблизу для інших функцій" - }, - "mapcomplete-changes": { - "layers": { - "0": { - "filter": { - "0": { - "options": { - "0": { - "question": "Назва теми містить {search}" - } - } - }, - "10": { - "options": { - "0": { - "question": "Виключити тему етимології" - } - } - }, - "11": { - "options": { - "0": { - "question": "Усі платформи" - }, - "1": { - "question": "Зроблено на Android" - }, - "2": { - "question": "Зроблено в інтернеті" - } - } - }, - "4": { - "options": { - "0": { - "question": "Зроблено до {search}" - } - } - }, - "5": { - "options": { - "0": { - "question": "Зроблено після {search}" - } - } - }, - "6": { - "options": { - "0": { - "question": "Мова користувача (iso-code) {search}" - } - } - }, - "9": { - "options": { - "0": { - "question": "Виключити тему GRB" - } - } - }, - "1": { - "options": { - "0": { - "question": "Назва теми не містить {search}" - } - } - }, - "8": { - "options": { - "0": { - "question": "Набір змін додав щонайменше одне зображення" - } - } - }, - "2": { - "options": { - "0": { - "question": "Зроблено автором {search}" - } - } - }, - "3": { - "options": { - "0": { - "question": "Не створено автором {search}" - } - } - }, - "7": { - "options": { - "0": { - "question": "Зроблено за допомогою хоста {search}" - } - } - } - }, - "name": "Центри змін", - "tagRenderings": { - "contributor": { - "question": "Хто зробив цю зміну?", - "render": "Зміну вніс користувач {user}" - }, - "platform": { - "mappings": { - "0": { - "then": "Зроблено в інтернеті" - }, - "1": { - "then": "Зроблено за допомогою додатку для Android" - } - }, - "question": "На якій платформі було здійснено зміни?" - }, - "version": { - "render": "Зроблено за допомогою {editor}", - "question": "Яку версію MapComplete було використано для внесення цієї зміни?" - }, - "host": { - "render": "Змінити на {host", - "question": "На якому хості (веб-сайті) було внесено цю зміну?" - }, - "locale": { - "render": "Локаль користувача: {locale}", - "question": "Якою мовою (локацією) було внесено цю зміну?" - }, - "show_changeset_id": { - "render": "Набір змін {id}" - }, - "theme-id": { - "question": "Яку тему було використано для цієї зміни?", - "render": "Змінити тему {theme}" - } - }, - "title": { - "render": "Набір змін для {theme}" - }, - "description": "Показує всі зміни MapComplete" - }, - "1": { - "override": { - "tagRenderings+": { - "0": { - "render": "Більше статистичних даних можна знайти тут" - } - } - } - } - }, - "shortDescription": "Показує зміни, внесені MapComplete", - "title": "Зміни, внесені за допомогою MapComplete", - "description": "Ця карта показує всі зміни, внесені за допомогою MapComplete" - }, - "openlovemap": { - "layers": { - "2": { - "override": { - "=presets": { - "0": { - "title": "еротичний магазин" - } - }, - "name": "Еротичні магазини" - } - }, - "6": { - "override": { - "=presets": { - "0": { - "title": "еротичне кіно" - } - } - } - }, - "9": { - "override": { - "+tagRenderings": { - "0": { - "question": "Що це за готель?" - } - } - } - }, - "4": { - "override": { - "=presets": { - "0": { - "title": "автомат з продажу презервативів" - } - } - } - } - }, - "overrideAll": { - "tagRenderings+": { - "0": { - "questionHint": "Це для використання однією особою.", - "question": "Чи є у {title()} приватна відеокабінка?" - } - } - }, - "title": "Відкрити карту кохання", - "description": "

Кохання на долоні

На Open Love Map перелічено різні заклади для дорослих, такі як борделі, еротичні магазини та стриптиз-клуби." - }, - "postal_codes": { - "layers": { - "0": { - "tagRenderings": { - "postal_code": { - "render": "Поштовий індекс: {postal_code}" - } - }, - "name": "поштові індекси", - "title": { - "render": "Поштовий індекс {postal_code}" - } - }, - "2": { - "name": "ратуші", - "title": { - "render": "Міська ратуша {name}" - } - } - }, - "shortDescription": "Поштові індекси", - "title": "Поштові індекси", - "description": "Поштові індекси" - }, - "sauna": { - "description": "Сауна", - "layers": { - "6": { - "override": { - "presets=": { - "0": { - "title": "салон краси" - }, - "1": { - "title": "масажний салон" - } - } - } - } - }, - "title": "Сауна" } -} +} \ No newline at end of file diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json index a931a456a..6b1247912 100644 --- a/langs/themes/zh_Hant.json +++ b/langs/themes/zh_Hant.json @@ -646,13 +646,6 @@ "grb-reference": { "render": "已經從GRB匯入,編號是{source:geometry:ref}" } - }, - "title": { - "mappings": { - "0": { - "then": "建築部分" - } - } } }, "1": { @@ -1123,11 +1116,6 @@ "override": { "name": "寵物友善商家" } - }, - "6": { - "override": { - "name=": "寵物友善開喝場所" - } } }, "title": "獸醫院、寵物公園以及其他寵物設施" @@ -1382,7 +1370,7 @@ }, "transit": { "description": "藉由大眾運輸系統來計畫你的旅程。", - "title": "大眾運輸路線" + "title": "公車路線" }, "trees": { "description": "繪製所有樹木!", @@ -1523,88 +1511,5 @@ } }, "title": "冬季服務" - }, - "zhv": { - "layers": { - "0": { - "name": "ZHV 當中的公共運輸站點", - "tagRenderings": { - "id": { - "render": "站點的編號是 {_ifopt}" - }, - "import": { - "render": { - "special": { - "text": "新增這一站點" - } - } - }, - "name": { - "render": "這個站點叫 {Name}" - }, - "tag-hint": { - "render": "這個站點有下列標籤:{_tags}" - }, - "closest_stop": { - "render": "OSM 上最近的站點是 {_closest_osm_stop_name}。" - }, - "imported": { - "render": "這站點(也許)已經加了。檢視這個點。" - } - }, - "title": { - "render": "ZHV 當中的大眾運輸站點" - } - }, - "1": { - "override": { - "tagRenderings+": { - "0": { - "mappings": { - "0": { - "then": "這個站點用於公車運輸。" - }, - "4": { - "then": "這個站點用於街車運輸。" - }, - "5": { - "then": "這個站點用於渡輪運輸。" - }, - "1": { - "then": "這個站點用於鐵路運輸。" - }, - "3": { - "then": "這個站點是用於捷運運輸。" - }, - "2": { - "then": "這個站點用於輕軌運輸。" - } - }, - "question": "這個站點用於何種運輸類型?" - }, - "1": { - "question": "這個站點的 IFOPT 編號是?", - "freeform": { - "placeholder": "例如 NL:Q:15003950 or de:03457:15801::2" - }, - "render": "這個站點的 IFOPT 站點是 {ref:IFOPT}。" - }, - "3": { - "render": { - "special": { - "message": "新增 IFOPT 編號到這站點" - } - } - }, - "2": { - "render": "附近有個 ZHV 站點:{_closest_zhv_stop_name}。" - } - }, - "name": "OSM 的大眾運輸站點" - } - } - }, - "title": "ZHV 匯入工具", - "description": "從德國中央公車服務目錄匯入公車站的小型主題。" } -} +} \ No newline at end of file diff --git a/langs/zh_Hant.json b/langs/zh_Hant.json index e989316dc..6148dcae2 100644 --- a/langs/zh_Hant.json +++ b/langs/zh_Hant.json @@ -6,14 +6,14 @@ "back": "回到MapComplete", "download": "下載應用程式", "downloadOnFDroid": "在 F-Droid 下載 MapComplete", + "getOnGoogle": "從 Google Play 市集下載 MapComplete", "getOnObtanium": "從 Obtainium 取得", "intro": "MapComplete 有 Android App 型式在不同的應用程式商城,安裝 app 版本更容易連結 MapComplete 也使用更少流量,然而網頁版也有相同功能。", "legacyExplanation": "由於Google的限制,並無法為更新與更舊的Android編譯相同的APK版本。\n\n如果你透過F-Droid、Google Play、Obtainium或是安裝「最新」的版本失敗,請為其他較舊Android版本使用其他版本。", "legacyHeader": "為較舊Android手機建構", "noPlayServices": "本應用無需 Google Play 服務即可運行", "older": "檢視較舊的軟體構建", - "title": "MapComplete Android 應用", - "getOnGoogle": "從 Google Play 市集下載 MapComplete" + "title": "MapComplete Android 應用" }, "centerMessage": { "allFilteredAway": "檢視畫面當中沒有滿足過瀘條件的圖徵", @@ -23,6 +23,9 @@ "retrying": "無法讀取資料,請在 {count} 秒後再試一次…", "zoomIn": "放大來檢視或編輯資料" }, + "collectionTimes": { + "addTime": "新增時刻" + }, "communityIndex": { "available": "這個社群說 {native}", "intro": "與其他人接洽並且與他們熟悉,從他們的經驗學習,…", @@ -354,6 +357,7 @@ "open_during_ph": "國定假日的時候,這個場所是", "open_until": "{date}關閉", "opensAt": "開始時間", + "ph": "國定假日", "ph_closed": "無營業", "ph_not_known": " ", "ph_open": "營業中", @@ -365,8 +369,7 @@ "thursday": "星期四時 {ranges}", "tuesday": "星期二時 {ranges}", "unknown": "營業時間未知", - "wednesday": "星期三時 {ranges}", - "ph": "國定假日" + "wednesday": "星期三時 {ranges}" }, "pdf": { "attr": "地圖資料 @ 開放街圖貢獻者,採用 ODbL 授權可再利用", @@ -375,6 +378,12 @@ "versionInfo": "v{version} - {date} 產生的" }, "pickLanguage": "選擇語言", + "points_in_time": { + "closed": "關閉", + "daily": "每天", + "weekdays": "週間", + "weekends": "在週間" + }, "poweredByMapComplete": "由 MapComplete 提供支援—群眾外包,OpenStreetMap 的專題地圖", "poweredByOsm": "由開放街圖資料驅動", "questionBox": { @@ -533,6 +542,7 @@ "tuesday": "星期二", "wednesday": "星期三" }, + "welcomeBack": "歡迎回來", "welcomeExplanation": { "addNew": "有物件遺漏嗎?使用左下角的按鈕來新增新興趣點。", "general": "在這份地圖,你可以檢視、編輯與新增興趣點。在附近放大來檢視興趣點,點一個來檢視或是編輯資訊。所有資料來源以及儲存到開放街圖,能夠自由被再利用。" @@ -550,13 +560,6 @@ "readMore": "閱讀剩下的條目內容", "searchToShort": "你的搜尋檢索太短了,請輸入長一點的文字", "searchWikidata": "在 Wikidata 搜尋" - }, - "welcomeBack": "歡迎回來", - "points_in_time": { - "daily": "每天", - "weekdays": "週間", - "weekends": "在週間", - "closed": "關閉" } }, "hotkeyDocumentation": { @@ -676,8 +679,8 @@ }, "input_helpers": { "distance": { - "setFirst": "目前位置的測量", - "measureAgain": "從目前位置開始測量" + "measureAgain": "從目前位置開始測量", + "setFirst": "目前位置的測量" } }, "inspector": { @@ -754,6 +757,22 @@ "typeText": "輸入些文字來新增評論", "warnAnonymous": "你還未登入,我們無法聯繫你來解決你的問題。" }, + "offline": { + "actions": "行動", + "autoCheckmark": "當瀏覽週邊時自動下載底圖", + "autoExplanation": "如果勾選,MapComplete 會自動下載區域內的底圖到快取,也許一開始載入的資料比較多,但運作一段時間後不用那麼多網路。如果你打算拜訪網路沒那麼好的地方,那邊你也可以先下載。", + "autoExplanationIntro": "自動下載底圖意味什麼?", + "date": "地圖產生資料", + "delete": "刪除底圖", + "deleteAll": "刪除所有底圖", + "download": "下載區域", + "installing": "已經在下載資料", + "localOnMap": "離線地圖底圖", + "name": "名稱", + "overview": "離線底圖概覽", + "range": "縮放範圍", + "size": "大小" + }, "plantDetection": { "back": "回到物種總纜", "button": "自動用 Plantnet.org 的 AI 來偵測植物的物種", @@ -820,9 +839,12 @@ "deleteConfirm": "永久刪除這則評論", "deleteText": "這無法恢復", "deleteTitle": "刪除這則評論?", + "disabledForPrivacy": "由於隱私設定評論已經關閉。", "edit": "編輯評論", + "editPrivacySettings": "編輯你的隱私設定", "i_am_affiliated": "我是這物件的相關關係者", "i_am_affiliated_explanation": "檢查你是否是店主、創造者或是員工…", + "loadOnce": "載入一次評論", "no_reviews_yet": "還沒有評論。成為第一個!", "non_place_review": "並未顯示一篇與地點無關的評論。", "non_place_reviews": "並未顯示 {n} 篇與地點無關的評論。", @@ -845,10 +867,7 @@ "too_long": "最多允許 {max} 字元,你的評鑑有 {amount} 字元。", "tos": "如果你創建審核,你同意TOS 與 Mangrove.reviews 的隱私權政策", "your_reviews": "你先前的評鑑", - "your_reviews_empty": "我們無法找到任何你先前的評鑑", - "editPrivacySettings": "編輯你的隱私設定", - "loadOnce": "載入一次評論", - "disabledForPrivacy": "由於隱私設定評論已經關閉。" + "your_reviews_empty": "我們無法找到任何你先前的評鑑" }, "split": { "cancel": "取消", @@ -960,24 +979,5 @@ "empty": "請輸入一些 Wikidata 項目", "startsWithQ": "維基數據編號以 Q 開頭後面接數字" } - }, - "collectionTimes": { - "addTime": "新增時刻" - }, - "offline": { - "autoCheckmark": "當瀏覽週邊時自動下載底圖", - "size": "大小", - "name": "名稱", - "overview": "離線底圖概覽", - "range": "縮放範圍", - "autoExplanationIntro": "自動下載底圖意味什麼?", - "date": "地圖產生資料", - "delete": "刪除底圖", - "deleteAll": "刪除所有底圖", - "download": "下載區域", - "installing": "已經在下載資料", - "localOnMap": "離線地圖底圖", - "actions": "行動", - "autoExplanation": "如果勾選,MapComplete 會自動下載區域內的底圖到快取,也許一開始載入的資料比較多,但運作一段時間後不用那麼多網路。如果你打算拜訪網路沒那麼好的地方,那邊你也可以先下載。" } -} +} \ No newline at end of file diff --git a/package.json b/package.json index 4763cfa3c..0f42f8e8a 100644 --- a/package.json +++ b/package.json @@ -130,7 +130,7 @@ "weblate:add-upstream-layers": "git remote add weblate-layers https://translate.mapcomplete.org/git/mapcomplete/layers/ ; git remote update weblate-layers", "weblate:add-upstream-themes": "git remote add weblate-themes https://translate.mapcomplete.org/git/mapcomplete/themes/ ; git remote update weblate-themes", "weblate:add-upstream": "npm run weblate:add-upstream-core; npm run weblate:add-upstream-layers; npm run weblate:add-upstream-themes", - "weblate:fix": "npm run weblate:add-upstream && git merge weblate-core/master weblate-layers/master weblate-themes/master && git rebase source/master && git push", + "weblate:fix": "npm run weblate:add-upstream && git merge weblate-core/master weblate-layers/master weblate-themes/master && git push", "lint": "npm run lint:prettier && npm run lint:eslint && npm run lint:themes", "lint:eslint": "eslint ./src --fix", "lint:prettier": "prettier --check 'src/**/*.ts' 'test/**/*.ts' 'src/**/*.svelte'", diff --git a/scripts/generateTranslations.ts b/scripts/generateTranslations.ts index 1c9ea2bbc..8226fccc9 100644 --- a/scripts/generateTranslations.ts +++ b/scripts/generateTranslations.ts @@ -568,7 +568,7 @@ function MergeTranslation(source: any, target: any, language: string, context: s const targetV = target[keyRemapping?.get(key) ?? key] if (targetV === undefined) { - throw `Merging translations failed; targetV is undefined for context ${context}; but we are trying to add ${sourceV} (${key}) to it` + throw `Merging translations failed; targetV is undefined for context ${context}; but we are trying to add ${JSON.stringify(sourceV)} (${key}) to it` } if (typeof sourceV === "string") {