From 1b64151aee62ad18d8adad6f5a13c3402edd1134 Mon Sep 17 00:00:00 2001 From: x7z4w Date: Sat, 29 Nov 2025 20:16:28 +0000 Subject: [PATCH 01/60] [cmake] Use default linker Signed-off-by: x7z4w --- CMakeLists.txt | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d0ecf6e39..38c297395 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -116,20 +116,6 @@ endif() message(STATUS "Build type: " ${CMAKE_BUILD_TYPE}) -if (PLATFORM_LINUX OR PLATFORM_ANDROID) - find_program(LLD_FOUND ld.lld) - if (LLD_FOUND) - message(STATUS "Using ld.lld linker") - set(CMAKE_EXE_LINKER_FLAGS "-fuse-ld=lld") - else() - find_program(GOLD_FOUND ld.gold) - if (GOLD_FOUND) - message(STATUS "Using ld.gold") - set(CMAKE_EXE_LINKER_FLAGS "-fuse-ld=gold") - endif() - endif() -endif() - if (NOT SKIP_TESTS) enable_testing() # Enables ctest -T memcheck with valgrind From 94bcd5f366449f67ff058b2a07bdb8c574da58fc Mon Sep 17 00:00:00 2001 From: ldcuof Date: Wed, 31 Dec 2025 17:49:52 +0530 Subject: [PATCH 02/60] [styles] Replace unpaved warning icon with new one Signed-off-by: ldcuof --- .../default/dark/symbols/warning-general.svg | 15 ++++++++ .../dark/symbols/warning-unpaved_road.svg | 38 ++++++++++++------- .../default/light/symbols/warning-general.svg | 15 ++++++++ .../light/symbols/warning-unpaved_road.svg | 38 ++++++++++++------- 4 files changed, 78 insertions(+), 28 deletions(-) create mode 100644 data/styles/default/dark/symbols/warning-general.svg create mode 100644 data/styles/default/light/symbols/warning-general.svg diff --git a/data/styles/default/dark/symbols/warning-general.svg b/data/styles/default/dark/symbols/warning-general.svg new file mode 100644 index 000000000..8d68c0740 --- /dev/null +++ b/data/styles/default/dark/symbols/warning-general.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/data/styles/default/dark/symbols/warning-unpaved_road.svg b/data/styles/default/dark/symbols/warning-unpaved_road.svg index 8d68c0740..6608e9cb2 100644 --- a/data/styles/default/dark/symbols/warning-unpaved_road.svg +++ b/data/styles/default/dark/symbols/warning-unpaved_road.svg @@ -1,15 +1,25 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/styles/default/light/symbols/warning-general.svg b/data/styles/default/light/symbols/warning-general.svg new file mode 100644 index 000000000..8d68c0740 --- /dev/null +++ b/data/styles/default/light/symbols/warning-general.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/data/styles/default/light/symbols/warning-unpaved_road.svg b/data/styles/default/light/symbols/warning-unpaved_road.svg index 8d68c0740..dc9fa05f0 100644 --- a/data/styles/default/light/symbols/warning-unpaved_road.svg +++ b/data/styles/default/light/symbols/warning-unpaved_road.svg @@ -1,15 +1,25 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + From 4226e2f9995321d97644b0541dd1e967c274e01d Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Tue, 30 Dec 2025 23:09:41 +0100 Subject: [PATCH 03/60] [android] Fix wrong text style Signed-off-by: Jean-Baptiste --- android/app/src/main/res/layout/dialog_sorting_types.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/src/main/res/layout/dialog_sorting_types.xml b/android/app/src/main/res/layout/dialog_sorting_types.xml index b5b6b84fe..bac164b99 100644 --- a/android/app/src/main/res/layout/dialog_sorting_types.xml +++ b/android/app/src/main/res/layout/dialog_sorting_types.xml @@ -27,7 +27,7 @@ android:layout_marginTop="@dimen/margin_base"> Date: Tue, 30 Dec 2025 18:14:49 +0100 Subject: [PATCH 04/60] update cdn setup for apache Signed-off-by: zyphlar --- tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md b/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md index 01d821d8b..83ec67276 100644 --- a/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md +++ b/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md @@ -22,6 +22,13 @@ vim /etc/nginx/nginx.conf access_log /var/log/nginx/access.log comaps; ``` +if using Apache, try this: + +``` + LogFormat "0.0.0.0 %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" comaps + CustomLog ${APACHE_LOG_DIR}/access.log comaps +``` + ### set up monitoring: apt install goaccess edit /etc/goaccess/goaccess.conf and uncomment time-format %H:%M:%S, date-format %Y-%m-%d, log-format COMBINED @@ -29,6 +36,8 @@ vim /etc/crontab `*/5 * * * * root /usr/bin/goaccess /var/log/nginx/access.log -o /var/www/html/monitor.html` +or Apache: `*/5 * * * * root /usr/bin/goaccess /var/log/apache2/access.log -o /var/www/html/monitor.html` + ### set up basic http pages/responses: cd /var/www/html/ mkdir maps From bfe65e0de0ca83347b4ea22e9d6eee8dd4b77c7d Mon Sep 17 00:00:00 2001 From: zyphlar Date: Tue, 30 Dec 2025 18:43:41 +0100 Subject: [PATCH 05/60] change date format Signed-off-by: zyphlar --- tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md b/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md index 83ec67276..c2df9445f 100644 --- a/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md +++ b/tools/python/maps_generator/CDN_SETUP_INSTRUCTIONS.md @@ -31,7 +31,11 @@ if using Apache, try this: ### set up monitoring: apt install goaccess -edit /etc/goaccess/goaccess.conf and uncomment time-format %H:%M:%S, date-format %Y-%m-%d, log-format COMBINED +edit /etc/goaccess/goaccess.conf and uncomment: +- time-format %H:%M:%S +- date-format %d/%b/%Y +- log-format COMBINED + vim /etc/crontab `*/5 * * * * root /usr/bin/goaccess /var/log/nginx/access.log -o /var/www/html/monitor.html` From a62f9470ec35a6b7dffc60261cb0bd980d040ef2 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Tue, 30 Dec 2025 18:31:14 +0100 Subject: [PATCH 06/60] Update copyright of the project Signed-off-by: Jean-Baptiste --- NOTICE | 2 +- iphone/metadata/copyright.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/NOTICE b/NOTICE index 88fd285f8..6e16c86cb 100644 --- a/NOTICE +++ b/NOTICE @@ -1,6 +1,6 @@ Copyright 2020 My.com B.V. (Mail.Ru Group) Copyright 2025 Organic Maps Contributors -Copyright 2025 CoMaps Contributors +Copyright 2026 CoMaps Contributors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/iphone/metadata/copyright.txt b/iphone/metadata/copyright.txt index 7307fff8d..6a77486b5 100644 --- a/iphone/metadata/copyright.txt +++ b/iphone/metadata/copyright.txt @@ -1 +1 @@ -© 2025 CoMaps Contributors +© 2026 CoMaps Contributors From 008a7855647ff773237d7bbe4d504b81f923e96f Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Sun, 21 Dec 2025 15:07:01 +0100 Subject: [PATCH 07/60] [android] Update Android dependencies Signed-off-by: Jean-Baptiste --- android/app/build.gradle | 1 + android/gradle/libs.versions.toml | 11 ++++++----- android/sdk/build.gradle | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 8a286f56e..447f621f2 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -351,6 +351,7 @@ dependencies { implementation libs.androidx.recyclerview implementation libs.androidx.work.runtime implementation libs.androidx.lifecycle.process + implementation libs.androidx.documentfile implementation libs.android.material // Fix for app/organicmaps/util/FileUploadWorker.java:14: error: cannot access ListenableFuture // https://github.com/organicmaps/organicmaps/issues/6106 diff --git a/android/gradle/libs.versions.toml b/android/gradle/libs.versions.toml index 97820c341..603423c95 100644 --- a/android/gradle/libs.versions.toml +++ b/android/gradle/libs.versions.toml @@ -1,15 +1,15 @@ [versions] -androidGradlePlugin = "8.11.2" +androidGradlePlugin = "8.13.2" androidxCarApp = "1.7.0" [libraries] android-tools = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" } -triplet-play-publisher = { module = "com.github.triplet.gradle:play-publisher", version = "3.12.1" } +triplet-play-publisher = { module = "com.github.triplet.gradle:play-publisher", version = "3.13.0" } huawei-publish = { module = "ru.cian:huawei-publish-gradle-plugin", version = "1.4.2" } android-tools-desugar = { module = "com.android.tools:desugar_jdk_libs", version = "2.1.5" } microg-services-location = { module = "org.microg.gms:play-services-location", version = "0.3.6.244735" } androidx-core = { module = "androidx.core:core", version = "1.17.0" } -jetbrains-kotlin-bom = { module = "org.jetbrains.kotlin:kotlin-bom", version = "2.2.20" } +jetbrains-kotlin-bom = { module = "org.jetbrains.kotlin:kotlin-bom", version = "2.2.21" } androidx-annotation = { module = "androidx.annotation:annotation", version = "1.9.1" } androidx-appcompat = { module = "androidx.appcompat:appcompat", version = "1.7.1" } androidx-car-app = { module = "androidx.car.app:app", version.ref = "androidxCarApp" } @@ -21,12 +21,13 @@ androidx-recyclerview = { module = "androidx.recyclerview:recyclerview", version androidx-work-runtime = { module = "androidx.work:work-runtime", version = "2.10.5" } androidx-lifecycle-process = { module = "androidx.lifecycle:lifecycle-process", version = "2.9.4" } androidx-media = { module = "androidx.media:media", version = "1.7.1" } +androidx-documentfile= { module = "androidx.documentfile:documentfile", version ="1.1.0" } android-material = { module = "com.google.android.material:material", version = "1.12.0" } -google-guava = { module = "com.google.guava:guava", version = "33.4.8-android" } +google-guava = { module = "com.google.guava:guava", version = "33.5.0-android" } appdevnext-androidchart = { module = "com.github.AppDevNext:AndroidChart", version = "3.1.0.31" } androidx-test-junit = { module = "androidx.test.ext:junit", version = "1.3.0" } junit = { module = "junit:junit", version = "4.13.2" } -mockito-core = { module = "org.mockito:mockito-core", version = "5.20.0" } +mockito-core = { module = "org.mockito:mockito-core", version = "5.21.0" } [plugins] android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" } diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle index ccc3e58c7..827f57f4c 100644 --- a/android/sdk/build.gradle +++ b/android/sdk/build.gradle @@ -126,6 +126,7 @@ dependencies { implementation libs.androidx.recyclerview implementation libs.androidx.preference implementation libs.android.material + implementation libs.androidx.documentfile testImplementation libs.junit } From 42f0855ec87cc259b715fb74752ea1567b85c83b Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Thu, 1 Jan 2026 07:48:38 +0100 Subject: [PATCH 08/60] [android] Improve error message for custom server dialog Signed-off-by: Jean-Baptiste --- android/app/src/main/res/values-fr/strings.xml | 2 +- android/app/src/main/res/values/strings.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/res/values-fr/strings.xml b/android/app/src/main/res/values-fr/strings.xml index 49f5688cb..5a40b5cb9 100644 --- a/android/app/src/main/res/values-fr/strings.xml +++ b/android/app/src/main/res/values-fr/strings.xml @@ -924,6 +924,6 @@ Avancé Non défini Serveur de cartes personnalisé - Veuillez saisir une URL complète débutant par https:// et se terminant par / + Veuillez saisir une URL complète commençant par http:// ou https:// Serveur pour télécharger les cartes. Laissez vide pour utiliser le serveur par défaut CoMaps. diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml index 6e29def96..aa092818d 100644 --- a/android/app/src/main/res/values/strings.xml +++ b/android/app/src/main/res/values/strings.xml @@ -972,5 +972,5 @@ Custom Map Server Override the default map download server used for map downloads. Leave empty to use CoMaps default server. Not set - Please enter a full URL starting with https:// and ending with / + Please enter a URL starting with http:// or https:// From 7f693b9dfd36a7dcce242a2ee8f1f7c791b288f6 Mon Sep 17 00:00:00 2001 From: Codeberg Translate Date: Thu, 1 Jan 2026 15:21:27 +0000 Subject: [PATCH 09/60] [strings] Update from Codeberg Translate Co-authored-by: Codeberg Translate Co-authored-by: JanezPavelZebovec Co-authored-by: Kachelkaiser Co-authored-by: Outbreak2096 Co-authored-by: Prefill add-on Co-authored-by: RicoElectrico Co-authored-by: Weblate Co-authored-by: Weblate Translation Memory Co-authored-by: astro-ray Co-authored-by: codebergian42 Co-authored-by: fbausch Co-authored-by: focaccina Co-authored-by: gedankenstuecke Co-authored-by: in-Dev Co-authored-by: metehan Co-authored-by: ovl-005 Co-authored-by: rimas Co-authored-by: yannikbloscheck Translation: CoMaps/Android - Map Feature Types Translation: CoMaps/Android UI Strings Translation: CoMaps/Android UI Strings (SDK) Translation: CoMaps/Apple AppStore description Translation: CoMaps/Countries and regions names Translation: CoMaps/F-Droid app description Translation: CoMaps/Google Play and Huawei AppGallery descriptions Translation: CoMaps/Search synonyms / aliases Translation: CoMaps/Voice announcements for navigation (TTS) Translation: CoMaps/iOS - Map Feature Types Translation: CoMaps/iOS Plurals Translation: CoMaps/iOS UI Strings --- .../play/listings/de-DE/full-description.txt | 10 +- .../play/listings/de-DE/short-description.txt | 2 +- .../play/listings/de-DE/full-description.txt | 12 +- .../play/listings/de-DE/short-description.txt | 2 +- .../app/src/main/res/values-bn/strings.xml | 18 +- .../app/src/main/res/values-de/strings.xml | 68 ++--- .../app/src/main/res/values-pl/strings.xml | 14 +- .../src/main/res/values-pt-rBR/strings.xml | 7 +- .../app/src/main/res/values-tr/strings.xml | 8 +- .../app/src/main/res/values-zh/strings.xml | 2 +- .../sdk/src/main/res/values-bn/strings.xml | 7 + .../src/main/res/values-bn/types_strings.xml | 58 +++- .../src/main/res/values-de/types_strings.xml | 2 +- .../src/main/res/values-lt/types_strings.xml | 86 +++++- .../sdk/src/main/res/values-nb/strings.xml | 2 +- .../src/main/res/values-nb/types_strings.xml | 4 +- .../src/main/res/values-pl/types_strings.xml | 1 + .../main/res/values-pt-rBR/types_strings.xml | 3 +- .../src/main/res/values-sl/types_strings.xml | 109 +++++++- .../src/main/res/values-tr/types_strings.xml | 11 +- data/categories-strings/de.json/localize.json | 260 +++++++++--------- data/countries-strings/de.json/localize.json | 240 ++++++++-------- data/sound-strings/de.json/localize.json | 38 +-- data/sound-strings/lt.json/localize.json | 4 +- .../bn.lproj/Localizable.strings | 30 +- .../bn.lproj/Localizable.stringsdict | 14 + .../bn.lproj/LocalizableTypes.strings | 113 ++++---- .../de.lproj/Localizable.strings | 90 +++--- .../de.lproj/LocalizableTypes.strings | 2 +- .../lt.lproj/LocalizableTypes.strings | 96 +++++-- .../nb.lproj/Localizable.strings | 2 +- .../nb.lproj/LocalizableTypes.strings | 4 +- .../pl.lproj/LocalizableTypes.strings | 1 + .../pt-BR.lproj/Localizable.strings | 2 +- .../pt-BR.lproj/LocalizableTypes.strings | 1 + .../sl.lproj/LocalizableTypes.strings | 105 +++++++ .../tr.lproj/Localizable.strings | 2 +- .../tr.lproj/LocalizableTypes.strings | 11 +- iphone/metadata/de-DE/description.txt | 10 +- 39 files changed, 957 insertions(+), 494 deletions(-) diff --git a/android/app/src/fdroid/play/listings/de-DE/full-description.txt b/android/app/src/fdroid/play/listings/de-DE/full-description.txt index 9d637e846..7575cc131 100644 --- a/android/app/src/fdroid/play/listings/de-DE/full-description.txt +++ b/android/app/src/fdroid/play/listings/de-DE/full-description.txt @@ -1,6 +1,6 @@ Eine von der Community betriebene, kostenlose Open-Source Karten-App, die auf OpenStreetMap Daten basiert. Transparent und nicht gewinnorientiert. CoMaps ist ein Fork/Abspaltung von Organic Maps, die wiederum ein Fork/Abspaltung von Maps.Me ist. -Lese mehr über die Gründe und Ziele des Projektes unter codeberg.org/comaps. +Lese mehr über die Gründe und Ziele des Projektes unter codeberg.org/comaps (auf Englisch). Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln • Nutze die App und erzähle anderen davon • Gib Feedback und melde Probleme @@ -9,9 +9,9 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln ‣ Einfach und ausgereift: Essenzielle, leicht zu bedienende Funktionen, die einfach funktionieren. ‣ Offline-orientiert: Plane und navigiere im Ausland ohne Mobilfunkverbindung, finde Wegpunkte auf abgelegenen Wanderungen usw. Alle Funktionen sind für den Offline-Einsatz konzipiert. ‣ Datenschutzfreundlich: Die App wurde mit Fokus auf Privatsphäre entwickelt – keine Personenidentifikation, kein Tracking, keine Erfassung persönlicher Daten, keine Werbung. -‣ Spart Akku und Speicherplatz: Verbraucht nicht unnötig Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf deinem Gerät. +‣ Spart Akku und Speicherplatz: Verbraucht nicht unnötig viel Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf deinem Gerät. ‣ Kostenlos und von der Community entwickelt: Menschen wie du haben geholfen, diese App zu entwickeln – durch das Hinzufügen von Orten zu OpenStreetMap, Testen von neuen Funktionen, Softwareentwicklung oder Spenden. -‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open-Source +‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open-Source. Hauptfunktionen: • Detaillierte, herunterladbare Karten mit Orten, die bei Google Maps oft fehlen @@ -28,5 +28,5 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln • Dunkler Modus für die Nutzung bei Nacht • Kartenbearbeitung direkt in der App mit einem einfachen Editor -Entdecke die Unabhängigkeit -Entdecke deine Reise – navigiere in der Welt mit Datenschutz! +Freiheit beginnt hier +Entdecke deine Reise, wobei Datenschutz und Gemeinschaft im Vordergrund stehen! diff --git a/android/app/src/fdroid/play/listings/de-DE/short-description.txt b/android/app/src/fdroid/play/listings/de-DE/short-description.txt index 734bddae6..5d91943d0 100644 --- a/android/app/src/fdroid/play/listings/de-DE/short-description.txt +++ b/android/app/src/fdroid/play/listings/de-DE/short-description.txt @@ -1 +1 @@ -Einfache Navigation - Entdecken Sie mehr von Ihrer Reise - Community-Entwickelt +Leichte Navigation – Erlebe mehr von deiner Reise – Community-unterstützt diff --git a/android/app/src/google/play/listings/de-DE/full-description.txt b/android/app/src/google/play/listings/de-DE/full-description.txt index ceb8548e2..26b1acf84 100644 --- a/android/app/src/google/play/listings/de-DE/full-description.txt +++ b/android/app/src/google/play/listings/de-DE/full-description.txt @@ -3,7 +3,7 @@ Eine von der Community betriebene, kostenlose Open-Source Karten App, die auf Op Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln • Nutze die App und erzähle anderen davon • Gib Feedback und melde Probleme -• Aktualisiere Kartendaten in der App oder auf der OpenStreetMap Website +• Aktualisiere Kartendaten in der App oder auf der OpenStreetMap-Webseite Dein Feedback und deine 5-Sterne-Bewertung sind die beste Unterstützung für uns! @@ -12,7 +12,7 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln ‣ Datenschutz ist uns wichtig!: Die App wurde mit Fokus auf Privatsphäre entwickelt – kein Tracking, keine Erfassung persönlicher Daten, keine Werbung. ‣ Spart Akku und Speicherplatz: Verbraucht nicht unnötig Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf Deinem Gerät. ‣ Kostenlos und von der Community entwickelt: Menschen wie du haben geholfen, die App zu entwickeln – durch das Hinzufügen von Orten zu OpenStreetMap, Testen von neuen Funktionen, Softwareentwicklung oder Spenden. -‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open Source +‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open Source. Hauptfunktionen: • Detaillierte, herunterladbare Karten mit Orten, die bei Google Maps oft fehlen @@ -24,13 +24,13 @@ Werde Teil der Community und hilf mit, die beste Karten-App zu entwickeln • Lesezeichen mit einem einzigen Tippen speichern • Offline verfügbare Wikipedia-Artikel • U- und S-Bahn-Netze -• Aufzeichnen von GPS Tracks +• Aufzeichnen von GPS-Tracks • Import und Export von Favoriten und Routen im KML-, KMZ- oder GPX-Format • Dunkler Modus für die Nutzung bei Nacht • Kartenbearbeitung direkt in der App mit einem einfachen Editor • Unterstützung für Android Auto -Bitte melde Probleme, schlage neue Funktionen vor und werde Teil der Community auf unserer Website: comaps.app +Bitte melde Probleme, schlage neue Funktionen vor und werde Teil der Community auf unserer Website: comaps.app/de/ -Entdecke die Unabhängigkeit -Entdecke deine Reise – navigiere in der Welt mit Datenschutz! +Freiheit beginnt hier +Entdecke deine Reise, wobei Datenschutz und Gemeinschaft im Vordergrund stehen! diff --git a/android/app/src/google/play/listings/de-DE/short-description.txt b/android/app/src/google/play/listings/de-DE/short-description.txt index 734bddae6..5d91943d0 100644 --- a/android/app/src/google/play/listings/de-DE/short-description.txt +++ b/android/app/src/google/play/listings/de-DE/short-description.txt @@ -1 +1 @@ -Einfache Navigation - Entdecken Sie mehr von Ihrer Reise - Community-Entwickelt +Leichte Navigation – Erlebe mehr von deiner Reise – Community-unterstützt diff --git a/android/app/src/main/res/values-bn/strings.xml b/android/app/src/main/res/values-bn/strings.xml index 6bd85fc85..cdd26afbb 100644 --- a/android/app/src/main/res/values-bn/strings.xml +++ b/android/app/src/main/res/values-bn/strings.xml @@ -1,13 +1,13 @@ পিছনে - ডাউনলোডকৃত মানচিত্র - মুছো + মানচিত্র ডাউনলোড করুন + মুছুন বাতিল মাইল পরে খুঁজুন - ডাউনলোড ব্যর্থ। আবার চেষ্টা করতে টিপ দাও। + ডাউনলোড ব্যর্থ হয়েছে, আবার চেষ্টা করতে টিপ দিন ম্যাপ অনুসন্ধান কিলোমিটার ডাউনলোডরত… @@ -303,4 +303,16 @@ আলাদা সমস্যা কমিউনিটি দ্বারা তৈরি ওপেনস্ট্রিটম্যাপ ডেটা টি %s তারিখ অব্দি সাম্পতিক। মানচিত্রটি সম্পাদনা এবং আপডেট করার সম্পর্কে আরও জানুন OpenStreetMap.org-এ শ্রেণি + %s এ খুলবে + %s এ বন্ধ হবে + %2$d এর মধ্যে %1$d + সঠিক বিল্ডিং নম্বর দিন + আরো OpenStreetMap সম্বন্ধে + আপনি কোনো মানচিত্র ডাউনলোড করেননি + বর্তমান অবস্থান অজানা + স্থানটি অস্তিত্বই নেই + সঠিক ফোন নম্বর দিন + সঠিক ওয়েব এড্রেস দিন + সঠিক ইমেইল দিন + OpenStreetMap এ স্থান যোগ করুন diff --git a/android/app/src/main/res/values-de/strings.xml b/android/app/src/main/res/values-de/strings.xml index adcfe29d0..eed2267a2 100644 --- a/android/app/src/main/res/values-de/strings.xml +++ b/android/app/src/main/res/values-de/strings.xml @@ -23,7 +23,7 @@ Auf der Karte suchen - Standortdienste sind für dieses Gerät oder diese App deaktiviert. Bitte aktivieren Sie diese in den Einstellungen. + Standortdienste sind für dieses Gerät oder diese App deaktiviert. Bitte aktiviere diese in den Einstellungen. Eingeschränkte Genauigkeit @@ -54,9 +54,9 @@ Bitte USB-Kabel entfernen oder Speicherkarte einsetzen, um CoMaps zu verwenden Bitte zuerst den Speicherplatz auf der SD-Karte/USB-Speicher freigeben, um die Anwendung nutzen zu können - Bevor Sie die App verwenden, laden Sie bitte die weltweite Übersichtskarte herunter. \nEs werden %s des Speicherplatzes benötigt. + Bevor du die App verwendest, lade bitte die weltweite Übersichtskarte herunter. \nEs werden %s des Speicherplatzes benötigt. Zur Karte - %1$s (%2$s) wird heruntergeladen. \nSie können jetzt zur Karte weitergehen. + %1$s (%2$s) wird heruntergeladen. \nDu kannst jetzt zur Karte weitergehen. %1$s herunterladen? (%2$s) %1$s aktualisieren? (%2$s) @@ -149,7 +149,7 @@ Notizen CoMaps-Lesezeichen wurden mit dir geteilt - Hallo! \n \nIm Anhang sind meine Lesezeichen der CoMaps-App. Du kannst in CoMaps öffnen. Wenn du die App nicht installiert hast, kannst du sie von https://www.comaps.app/download/ für iOS oder Android herunterladen. \n \nViel Spaß beim Navigieren mit CoMaps! + Hallo! \n \nIm Anhang sind meine Lesezeichen aus der CoMaps-App. Du kannst sie in CoMaps öffnen. Wenn du die App nicht installiert hast, kannst du sie unter https://www.comaps.app/de/download/ herunterladen. \n \nViel Spaß beim Navigieren mit CoMaps! Lesezeichen werden geladen @@ -169,7 +169,7 @@ Die Karte wird jetzt heruntergeladen - Sieh dir meinen aktuellen Standort auf CoMaps an! %1$s oder %2$s Keine Offline-Karten installiert? Hier herunterladen: https://www.comaps.app/de/download/ + Sieh dir meinen aktuellen Standort auf CoMaps an! %1$s oder %2$s Du hast CoMaps nicht installiert? Lade die App hier herunter: https://www.comaps.app/de/download/ Hey, sieh dir meine Stecknadel in der CoMaps-App an! @@ -181,7 +181,7 @@ E-Mail - In die Zwischenablage kopiert: %s + Kopiert in der Zwischenablage: %s Fertig @@ -236,11 +236,11 @@ Feedback - Bewerten Sie die App + Bewerte die App Hilfe - Häufige Fragen und Antworten + Häufige Fragen und Antworten (FAQ) Spenden @@ -254,9 +254,9 @@ Bewegen Sie das Telefon in einer Achterbewegung, um den Kompass zu kalibrieren und die Pfeilrichtung auf der Karte festzulegen. - Tippe erneut lange auf die Karte, um die Benutzeroberfläche zu sehen + Tippe erneut lange auf die Karte, um die Benutzeroberfläche wiederzusehen - Alle aktualisieren + Alle Karten aktualisieren Alle abbrechen @@ -329,23 +329,23 @@ Graublau - Wenn Sie der Route folgen, beachten Sie bitte: + Wenn du der Route folgst, beachte bitte: — Zustand der Straßen, die Verkehrsordnung und Straßenschilder haben stets Vorrang vor Navigationsanweisungen; - – Die Karte kann ungenau sein, und die vorgeschlagene Route ist möglicherweise nicht der optimale Weg, um das Ziel zu erreichen; + — Die Karte kann ungenau sein, und die vorgeschlagene Route ist möglicherweise nicht der optimale Weg, um das Ziel zu erreichen; — Die vorgeschlagenen Routen sind als Empfehlungen zu verstehen; — Bitte seien Sie vorsichtig bei Routen in Grenzgebieten: die Routen, die unsere App erstellt, können manchmal Landesgrenzen in gesperrten Gebieten überschreiten. - Bitte fahren Sie aufmerksam und sicher! + Bitte fahre aufmerksam und sicher! GPS-Signal prüfen Route kann nicht erstellt werden. Aktuelle GPS-Koordinaten konnten nicht ermittelt werden. - Bitte prüfen Sie Ihr GPS-Signal. WLAN verbessert Ihre Standortgenauigkeit. + Bitte prüfe dein GPS-Signal. Aktiviertes W-LAN verbessert deine Standortgenauigkeit. Standortdienste aktivieren - Aktuelle GPS-Koordinaten können nicht ermittelt werden. Aktivieren Sie Standortdienste, um die Route zu berechnen. + Aktuelle GPS-Koordinaten können nicht ermittelt werden. Aktiviere die Standortdienste, um die Route zu berechnen. Route kann nicht ermittelt werden Route konnte nicht erstellt werden - Bitte passen Sie Ihren Startpunkt oder Ihr Ziel an. + Bitte passe deinen Startpunkt oder Ziel an. Startpunkt anpassen Route wurde nicht erstellt. Startpunkt konnte nicht gefunden werden. - Bitte wählen Sie einen Startpunkt, der näher an einer Straße liegt. + Bitte wähle einen Startpunkt, der näher an einer Straße liegt. Ziel anpassen Route wurde nicht erstellt. Ziel konnte nicht gefunden werden. Bitte wählen Sie einen Zielort näher an einer Straße @@ -353,10 +353,10 @@ Bitte passen Sie Ihren Zwischenstopp an Systemfehler Wegen eines Anwendungsfehlers konnte keine Route erstellt werden - Bitte versuchen Sie es erneut + Bitte versuche es erneut Nicht jetzt - Möchten Sie die Karte herunterladen und eine bessere Route erstellen, die mehr als eine Karte umfasst? - Laden Sie zusätzliche Karten herunter, um eine bessere Route zu erstellen, welche die Grenzen dieser Karte überschreitet. + Möchtest du die Karte herunterladen und eine bessere Route erstellen, die mehr als eine Karte umfasst? + Lade zusätzliche Karten herunter, um eine bessere Route zu erstellen, welche die Grenzen dieser Karte überschreitet. Um mit der Suche und dem Erstellen von Routen zu beginnen, laden Sie bitte die Karte herunter. Sie benötigen danach keine Internetverbindung mehr. Karte auswählen @@ -368,16 +368,16 @@ Verlauf Uups, kein Ergebnis gefunden - Laden Sie die Region herunter, in der Sie suchen, oder fügen Sie den Namen einer nahe gelegenen Stadt oder eines Dorfes hinzu. + Lade die Region herunter, in der du suchst, oder füge den Namen einer nahe gelegenen Stadt oder eines Dorfes hinzu. Suchverlauf Ihre letzten Suchanfragen anzeigen Suchverlauf löschen - Ihr Standort + Dein Standort Start - Von - Nach + Route von + Route nach Die Navigation ist nur von Ihrem aktuellen Standort aus möglich - Soll eine Route von Ihrem aktuellen Standort aus berechnet werden? + Soll eine Route von deinem aktuellen Standort aus berechnet werden? Weiter @@ -395,17 +395,17 @@ Erweiterter Modus Einfacher Modus Schließzeiten - Beispiele + Beispielwerte Fehler korrigieren Standort auswählen Bitte beschreiben Sie das Problem detailliert, damit die OpenStreetMap-Community den Fehler korrigieren kann. - Oder korrigieren Sie es selbst auf https://www.openstreetmap.org/ + Oder korrigiere es selbst auf https://www.openstreetmap.org/ Senden Problem Dieser Ort existiert nicht Wegen Bauarbeiten geschlossen Doppelt vorhanderer Ort - Karten automatisch herunterladen + Automatisch herunterladen Täglich 24/7 @@ -427,7 +427,7 @@ Straße Hausnummer - Details + Einzelheiten Social Media Gebäude @@ -480,7 +480,7 @@ Beschreiben Sie Kartenfehler oder Dinge, die mit CoMaps nicht bearbeitet werden können - Ihre Bearbeitungen werden in die öffentliche OpenStreetMap Datenbank hochgeladen. Bitte tragen Sie keine privaten oder urheberrechtlich geschützten Informationen ein. + Deine Bearbeitungen werden in die öffentliche OpenStreetMap Datenbank hochgeladen. Bitte trage keine privaten oder urheberrechtlich geschützten Informationen ein. Mehr Informationen über OpenStreetMap Ihr Bearbeitungsverlauf Ihre Hinweise zu den Kartendaten @@ -488,7 +488,7 @@ Betreiber: %s Keine passende Kategorie gefunden? - Mit CoMaps kann man nur einfache Punktkategorien hinzufügen, dass bedeutet keine Städte, Straßen, Seen, Gebäudeumrisse etc. Bitte füge solche Kategorien direkt bei OpenStreetMap.org hinzu. In unserem Leitfaden findest du eine detaillierte Schritt-für-Schritt Anleitung. + Mit CoMaps kannst du nur einfache Punktkategorien hinzufügen, dass bedeutet keine Städte, Straßen, Seen, Gebäudeumrisse etc. Bitte füge solche Kategorien direkt bei OpenStreetMap.org hinzu. In unserem Leitfaden (auf Englisch) findest du eine detaillierte Schritt-für-Schritt Anleitung. Keine Karten heruntergeladen Laden Sie Karten für die Offline-Suche und Navigation herunter Aktueller Standort ist unbekannt @@ -547,7 +547,7 @@ Protokollierung aktivieren Allgemeines Feedback - Wir verwenden Text-to-Speech-Systeme für Sprachanweisungen. Viele Android-Geräte nutzen Google-TTS, das Sie bei Google Play (https://play.google.com/store/apps/details?id=com.google.android.tts) herunterladen oder aktualisieren können + Wir verwenden Text-to-Speech-Systeme (TTS; zu deutsch: Text-zu-Sprache) für Sprachanweisungen. Viele Android-Geräte nutzen Google-TTS, das du bei Google Play (https://play.google.com/store/apps/details?id=com.google.android.tts) herunterladen oder aktualisieren kannst Für einige Sprachen müssen Sie einen anderen Sprachgenerator oder ein zusätzliches Sprachpaket aus dem App Store installieren (Google Play, Galaxy Store, App Gallery, FDroid).\nÖffnen Sie die Einstellungen Ihres Gerätes → Sprache und Eingabe → Sprache → Text-to-Speech-Ausgabe.\nHier können Sie die Einstellungen für Sprachsynthese verwalten (beispielsweise ein Sprachpaket für die Offline-Verwendung herunterladen) und ein anderes Sprachausgabeprogramm auswählen. Weitere Informationen finden Sie in dieser Anleitung Transliteration ins lateinische Alphabet @@ -871,7 +871,7 @@ Bestätigt %s Kein Text-zu-Sprache-Modul gefunden, überprüfe die App-Einstellungen Treppen vermeiden - Beschreibe wie der Ort jetzt aussieht um eine Fehlermeldung an die OpenStreetMap Community zu senden + Beschreibe wie der Ort jetzt aussieht, um eine Fehlermeldung an die OpenStreetMap Community zu senden Offline-Karten Um die Gegend anzusehen und zu erkunden, musst du eine Karte runterladen.\nLade dir Karten für die Gebiete runter, die du bereisen willst. Typ 2 (ohne Kabel) @@ -919,5 +919,5 @@ Fortgeschritten Nicht konfiguriert Standardserver für Kartendownloads überschreiben. Leer lassen, um den CoMaps-Standardserver zu nutzen. - Bitte eine vollständige URL eingeben, die mit https:// beginnt und mit / endet + Bitte eine vollständige URL eingeben, die mit https:// oder http:// anfängt diff --git a/android/app/src/main/res/values-pl/strings.xml b/android/app/src/main/res/values-pl/strings.xml index 765534a96..f3c0b85ba 100644 --- a/android/app/src/main/res/values-pl/strings.xml +++ b/android/app/src/main/res/values-pl/strings.xml @@ -165,7 +165,7 @@ Nie określono jeszcze aktualnego położenia - Przepraszamy, ustawienia pamięci mapy są aktualnie wyłączone. + Przepraszamy, ustawienia pamięci mapy są aktualnie wyłączone Trwa pobieranie mapy @@ -918,4 +918,16 @@ Ostrzeżenia o fotoradarach są wyłączone w krajach, gdzie takie alerty są zabronione prawnie. "Startowanie nawigacji, język komunikatów głosowych: " Komunikaty głosowe są wyłączone: silnik TTS jest niedostępny + Własny serwer map + Zastąp domyślny serwer pobierania map. Zostaw puste, by użyć domyślnego serwera CoMaps. + Nieustawiony + Proszę wprowadzić pełny URL zaczynający się od https:// i kończący na / + Lokal jest pusty + Oznacz lokal jako pusty + Dane mapy nieaktualne + Twoje dane mapy są nieaktualne, proszę zaktualizować mapę. + Twoje dane mapy są nieaktualne, proszę zaktualizować mapę oraz aplikację CoMaps. + Zaktualizuj region mapy + Edytowanie OpenStreetMap jest wyłączone, ponieważ dane mapy są zbyt stare. + Zaawansowane diff --git a/android/app/src/main/res/values-pt-rBR/strings.xml b/android/app/src/main/res/values-pt-rBR/strings.xml index b516f14d0..f5f572f13 100644 --- a/android/app/src/main/res/values-pt-rBR/strings.xml +++ b/android/app/src/main/res/values-pt-rBR/strings.xml @@ -448,7 +448,7 @@ Editar favorito Anotações pessoais (texto ou html) Descartar todas as modificações locais? - Descartar + Descartar alterações Remover local adicionado? Remover O lugar não existe @@ -893,4 +893,9 @@ Alertas de radar fotográfico de velocidade estão desativados em países onde os alertas são proibidos pelas leis locais. "Iniciando navegação, idioma da instrução por voz: " Instrução por voz desativada: nenhum motor de texto para voz disponível + Avançadas + Servidor de Mapas Personalizado + Substitua o servidor padrão usado para baixar mapas. Deixe em branco para usar o servidor padrão do CoMaps. + Não definido + Insira um URL completo começando com https:// e terminando com / diff --git a/android/app/src/main/res/values-tr/strings.xml b/android/app/src/main/res/values-tr/strings.xml index 36c2a37f0..54056d6ca 100644 --- a/android/app/src/main/res/values-tr/strings.xml +++ b/android/app/src/main/res/values-tr/strings.xml @@ -503,7 +503,7 @@ Yer İmini Düzenle Kişisel notlar (metin veya html) Tüm yerel değişiklikler sıfırlansın mı? - Sıfırla + Değişiklikleri gözden çıkar Eklenen yer kaldırılsın mı? Kaldır Bu yer yok @@ -894,4 +894,10 @@ Değer pozitif olmalıdır Geçersiz sayı Asfalt yollardan kaçın + Harita verisi güncel değil + Mevcut harita verileriniz çok eski, lütfen haritayı güncelleyin. + Mevcut harita verileriniz çok eski, lütfen CoMaps uygulamasını güncelleyin. + Bölge haritasını güncelle + Harita verisi çok eski olduğu için OpenStreetMap düzenleyicisi devre dışı. + Yerel yasalarca uyarıların yasaklandığı ülkelerde hız kamerası uyarıları devre dışıdır. diff --git a/android/app/src/main/res/values-zh/strings.xml b/android/app/src/main/res/values-zh/strings.xml index 50855332c..f38187fad 100644 --- a/android/app/src/main/res/values-zh/strings.xml +++ b/android/app/src/main/res/values-zh/strings.xml @@ -918,7 +918,7 @@ 更新地图区域 由于地图数据太旧,OpenStreetMap 编辑被禁用。 未设置 - 请输入以 https:// 开头、以 / 结尾的完整 URL + 请输入以 http:// 或 https:// 开头的 URL 高级 自定义地图服务器 覆盖用于地图下载的默认地图下载服务器。留空则使用 CoMaps 默认服务器。 diff --git a/android/sdk/src/main/res/values-bn/strings.xml b/android/sdk/src/main/res/values-bn/strings.xml index 8275283e5..5670d32b9 100644 --- a/android/sdk/src/main/res/values-bn/strings.xml +++ b/android/sdk/src/main/res/values-bn/strings.xml @@ -11,4 +11,11 @@ অভ্যন্তরীণ শেয়ার্ড স্টোরেজ ডাক কোড আজকে + কিমি + গতকাল + %s দিন আগে + %s সপ্তাহ আগে + %s মাস আগে + %s বছর আগে + প্রবেশ diff --git a/android/sdk/src/main/res/values-bn/types_strings.xml b/android/sdk/src/main/res/values-bn/types_strings.xml index be528ccc2..e326fe6d7 100644 --- a/android/sdk/src/main/res/values-bn/types_strings.xml +++ b/android/sdk/src/main/res/values-bn/types_strings.xml @@ -17,7 +17,7 @@ ইন্টারনেট ক্যাফে কিন্ডারগার্টেন গ্রন্থাগার - মার্কেটপ্লেস + বাজার বাইক পার্কিং নাইটক্লাব নার্সিংহোম @@ -83,4 +83,60 @@ লটারি টিকিট বুটিক ব্যাগের দোকান + জলের ট্যাঙ্ক + বেঞ্চ + বাস স্টেশন + আদালত + দাঁতের ডাক্তার + ডাক্তার + ওষুধ দোকান + গির্জা + স্কুল + টেলিফোন + বিশ্ববিদ্যালয় + পেট্রোল পাম্প + বাঁধা + প্রবেশদ্বার + জার্মান + জাপানি + পাস্তা + চা + প্রস্থান (শুধুমাত্র) + বিনামূল্যে + পথ + স্টেডিয়াম + চিমনি + জলের কল + পাতকুয়া + প্রকৃতি + এটিএম + ব্যাঙ্ক + পুলিশ + বিল্ডিং + ঠিকানা + ক্রোয়েসীয় + ফরাসি + গ্রিক + আইসক্রিম + ফারসি + তুর্কি + ইন্টারনেট + ইন্টারনেট + পানীয় জল + আরবি + বালুকা + প্ল্যাটফর্ম + হ্রদ + মহাদেশ + রাজ্য + নিলাম + স্বয়ংসেবা আছে + আংশিক স্বয়ংসেবা + স্বয়ংসেবা নেই + নুডুলস + জল + সমুদ্র + গণপরিবহন + ফেরি + মিডিয়া স্টুডিও diff --git a/android/sdk/src/main/res/values-de/types_strings.xml b/android/sdk/src/main/res/values-de/types_strings.xml index e1e0ae0c9..b93d8c2ef 100644 --- a/android/sdk/src/main/res/values-de/types_strings.xml +++ b/android/sdk/src/main/res/values-de/types_strings.xml @@ -1499,7 +1499,7 @@ Tages-Spa Spendenbox Weihnachtsbaum - Mobile Money Vertretung + Mobile Money Agent Food Sharing Sand Beregnungshydrant diff --git a/android/sdk/src/main/res/values-lt/types_strings.xml b/android/sdk/src/main/res/values-lt/types_strings.xml index e002d54f7..d215a540a 100644 --- a/android/sdk/src/main/res/values-lt/types_strings.xml +++ b/android/sdk/src/main/res/values-lt/types_strings.xml @@ -76,9 +76,9 @@ Pralaida Pralaida Sniego parkas - Sniego pėsčiųjų takas - \"Piste Connection - \"Skitour\" takas + Sniego žygių pėsčiomis trasa + Jungiamoji trasa + Turistinio slidinėjimo trasa Galimybė naudotis savitarnos paslaugomis Tik savitarna Dalinė savitarna @@ -93,7 +93,7 @@ Sporto salė Adresas / blokas Adresas / blokas - Oro keltuvas + Keltuvas Adresas / blokas Paslauga Oro transporto infrastruktūra @@ -251,7 +251,7 @@ Dušas Striptizo klubas Taksi stovėjimo vieta - Taksofonas + Telefonas Teatras Tualetas Tualetas @@ -265,7 +265,7 @@ Maisto išdavimo automatas Spaudos išdavimo automatas Parkomatas - Bilietomatas + Viešojo transporto bilietų automatas Saldainių išdavimo automatas Išmatų maišelių stovas Paštomatas @@ -564,7 +564,7 @@ Magistralinis kelias Vietinės reikšmės kelias Senovinis / istorinis objektas - Istorinio mūšio laukas + Mūšio laukas Senovinis riboženklis Pilis Romėnų fortas @@ -1144,7 +1144,7 @@ Keltas Parduotuvė Alkoholinių gėrimų parduotuvė - Kepykla + Kepyklėlė Vonios įranga Grožio salonas Manikiūro salonas @@ -1188,11 +1188,11 @@ Vaisių ir daržovių parduotuvė Maisto prekių parduotuvė Kirpykla - Metalo dirbinių parduotuvė + Metalo gaminių parduotuvė Sveiko maisto parduotuvė Vaistažolių parduotuvė Gero garso aparatūros parduotuvė - Prekių namams parduotuvė + Namų apyvokos prekių parduotuvė Juvelyrinių dirbinių parduotuvė Kioskas Virtuvės studija @@ -1363,4 +1363,70 @@ Kalėdų eglė Bagažo pasaugojimo automatas Mobiliųjų pinigų kasa + Gondolinis keltuvas + Didysis gondolinis keltuvas + Krėslinis keltuvas + Traukiamasis keltuvas + Mišrus keltuvas + Keltuvo stotelė + Prievaža (rampa) + Pakeleivių paėmimo / išleidimo punktas + Pašto paslaugos + Kritinė situacija + Kardinalinis navigacinis ženklas + Kardinalinis navigacinis ženklas + Kardinalinis navigacinis ženklas + Kardinalinis navigacinis ženklas + Pavienės kliūties ženklas + Lateralinis navigacinis ženklas + Lateralinis navigacinis ženklas + Saugių vandenų navigacinis ženklas + Specialusis navigacinis ženklas + Kardinalinė buja + Kardinalinė buja + Kardinalinė buja + Kardinalinė buja + Pavienės kliūties buja + Lateralinė buja + Lateralinė buja + Saugių vandenų buja + Specialioji buja + Kardinalinė sferinė buja + Kardinalinė sferinė buja + Kardinalinė sferinė buja + Kardinalinė sferinė buja + Pavienės kliūties sferinė buja + Lateralinė sferinė buja + Lateralinė sferinė buja + Saugių vandenų sferinė buja + Specialioji sferinė buja + Privažiavimo kelias + Privažiavimo kelias + Privažiavimo kelias + Privažiavimo kelias + Privažiavimo kelias + Archeologinė vietovė + Laktinis keltuvas + Keltuvas-konvejeris + Bugelinis disko formos keltuvas + Įsikimbamasis keltuvas + Bugelinis „T“ formos keltuvas + Kalnų slidinėjimo trasa + Kalnų slidinėjimo trasa + Sudėtinga kalnų slidinėjimo trasa + Sudėtinga kalnų slidinėjimo trasa + Nesudėtinga kalnų slidinėjimo trasa + Nesudėtinga kalnų slidinėjimo trasa + Ypač sudėtinga kalnų slidinėjimo trasa + Ypač sudėtinga kalnų slidinėjimo trasa + Laisvojo kalnų slidinėjimo trasa + Vidutinio sudėtingumo kalnų slidinėjimo trasa + Vidutinio sudėtingumo kalnų slidinėjimo trasa + Pradedančiųjų kalnų slidinėjimo trasa + Pradedančiųjų kalnų slidinėjimo trasa + Slidinėjimo kroso trasa + Rogučių trasa + Rogučių trasa + Sporto centras + Lauko tenisas diff --git a/android/sdk/src/main/res/values-nb/strings.xml b/android/sdk/src/main/res/values-nb/strings.xml index 144c71310..64c676b59 100644 --- a/android/sdk/src/main/res/values-nb/strings.xml +++ b/android/sdk/src/main/res/values-nb/strings.xml @@ -28,7 +28,7 @@ fot - Avslutt + Utgang Inngang T-banekart er utilgjengelig Offentlig tilgang diff --git a/android/sdk/src/main/res/values-nb/types_strings.xml b/android/sdk/src/main/res/values-nb/types_strings.xml index 245dd9fca..6dc0158d4 100644 --- a/android/sdk/src/main/res/values-nb/types_strings.xml +++ b/android/sdk/src/main/res/values-nb/types_strings.xml @@ -1050,8 +1050,8 @@ Reisebyrå Dekkforretning Billigbutikk - Videobutikken - Videospillbutikken + Videobutikk + Videospillbutikk Alkoholutsalg Landbruksbutikk Antikviteter diff --git a/android/sdk/src/main/res/values-pl/types_strings.xml b/android/sdk/src/main/res/values-pl/types_strings.xml index de75f217f..15c776925 100644 --- a/android/sdk/src/main/res/values-pl/types_strings.xml +++ b/android/sdk/src/main/res/values-pl/types_strings.xml @@ -1497,4 +1497,5 @@ Północ Południe Zachód + Szkoła przygotowująca do egzaminów diff --git a/android/sdk/src/main/res/values-pt-rBR/types_strings.xml b/android/sdk/src/main/res/values-pt-rBR/types_strings.xml index 91070ecd0..06b2ac1c0 100644 --- a/android/sdk/src/main/res/values-pt-rBR/types_strings.xml +++ b/android/sdk/src/main/res/values-pt-rBR/types_strings.xml @@ -150,7 +150,7 @@ Máquina de venda de comidas Máquina de venda de jornais Máquina de venda de tíquetes de estacionamento - Máquina de venda de passagens de transporte público + Máquina de Venda de Passagens de Transporte Público Máquina de venda de doces Saquinhos de lixo Armário de encomendas @@ -1489,4 +1489,5 @@ Boia lateral Mastro de comunicações Manicure + Hidrante de Irrigação diff --git a/android/sdk/src/main/res/values-sl/types_strings.xml b/android/sdk/src/main/res/values-sl/types_strings.xml index 83b17fff1..f9a0e3f3c 100644 --- a/android/sdk/src/main/res/values-sl/types_strings.xml +++ b/android/sdk/src/main/res/values-sl/types_strings.xml @@ -253,7 +253,7 @@ Kartoni Šola Zavetje - Izpostavljen nadstrešek + Izpostavljeno zavetje Polnilna postaja rezervoarja z vodo Ovira Ovira @@ -313,7 +313,7 @@ Zabojnik za ločene odpadke Zabojnik za ločene odpadke Zavetje - Avtomat za vozovnice + Avtomat za vozovnice javnega prometa Osebna vratca Postaja za praznjenje zbiralnih rezervoarjev Bivak @@ -605,4 +605,109 @@ Zgodovinsko sidro Zgodovinsko bojišče Arheološko najdišče + Mejni kamen + Top + Grad + Rimska utrdba + Obrambni grad + Utrjena cerkev + Trdnjava + Gradišče + Kremelj + Graščina + Palača + Japonski grad + Dvorec + Mestna vrata + Mestno obzidje + Utrdba + Vislice + Zgodovinska lokomotiva + Spominsko obeležje + Spominski križ + Spominska plošča + Spominski kip + Kip + Kamen spotike (Stolperstein) + Zgodovinski kamen + Vojno spominsko obeležje + Zgodovinski rudnik + Spomenik + Sramotilni steber + Zgodovinske ruševine + Zgodovinska ladja + Zgodovinski tank + Grobnica + Križ + Križ ob poti + Kapelica ob poti + Ladijske razbitine + Medmrežje + Medmrežje + Križišče + Krožišče + Krožišče + Uporaba zemljišča + Vrtne parcele + Vodni zadrževalnik + Zapuščeno industrijsko območje + Pokopališče + Krščansko pokopališče + Versko območje + Poslovno območje + Območje v gradnji + Izobraževalno območje + Obdelovana zemlja + Kmetija + Cvetlična greda + Gozd + Iglasti gozd + Listnati gozd + Mešani gozd + Garaže + Trava + Rastlinjak + Industrijsko območje + Odlagališče odpadkov + Travnik + Vojaško območje + Sadovnjak + Kamnolom + Območje železnice + Rekreacijska površina + Vodni zbiralnik + Stanovanjsko območje + Trgovsko območje + Soline + Zelenica + Vinograd + Vrtnarstvo + Površina za prostočasne dejavnosti + Glasbeni paviljon + Javna površina + Park za pse + Soba pobega + Vadbeni prostor + Vadbena postaja + Plesna dvorana + Vrt + Stanovanjski vrt + Golf igrišče + Mali golf + Drsališče + Notranja igralnica + Pristan + Zavarovano območje narave + Zunanje sedišče + Ognjišče + Park + Zasebni park + Park + Zasebni park + Miza za piknik + Športno igrišče + Otroško igrišče + Rekreacijska površina + Savna + Splavilna klančina diff --git a/android/sdk/src/main/res/values-tr/types_strings.xml b/android/sdk/src/main/res/values-tr/types_strings.xml index 736e72e94..98f2d6915 100644 --- a/android/sdk/src/main/res/values-tr/types_strings.xml +++ b/android/sdk/src/main/res/values-tr/types_strings.xml @@ -1366,7 +1366,7 @@ Elektrik Direği Hizmet Direği - Stüdyo + Medya Stüdyosu Yüksek Dalış Alanı Anket Noktası Merdiven @@ -1400,4 +1400,13 @@ Sırtı Açık Bank Araç Şarj Noktası Denizcilik Okulu + Ağaç + Yılbaşı Ağacı + Teleskop + Teleskop (Optik) + Teleskop (Radyo) + Teleskop (Gama) + Gözlemevi + Can simidi + Acil Durum Noktası diff --git a/data/categories-strings/de.json/localize.json b/data/categories-strings/de.json/localize.json index 2cbee8fb7..248f2f7d3 100644 --- a/data/categories-strings/de.json/localize.json +++ b/data/categories-strings/de.json/localize.json @@ -1,25 +1,25 @@ { -"@category_eat": "3Essen|Trinken|4Gastronomie|Gastro|Lokal|Speisen|Verpflegung|Hunger", +"@category_eat": "3Essen|3Trinken|4Gastronomie|4Gastro|3Lokal|3Speisen|4Verpflegung|3Hunger", "@category_food": "4Lebensmittel|4Essen|4Nahrung|4Nahrungsmittel", "@category_transport": "ÖPNV", "@category_fuel": "2Tankstelle|4Tanken|3Benzin|4Diesel|4Sprit|3Kraftstoff|4Tankfüllung", -"@category_parking": "4Parkplätze|Parkplatz|Parkhaus|Tiefgarage|Parken", -"@category_shopping": "4Einkaufen|Laden|2Läden|Bummeln|Shoppen|Geschäfte", -"@category_hotel": "Hotel|Hotels|Übernachtung|übernachten|Schlaf|schlafen|Unterkunft", -"@category_tourism": "4Sehenswürdigkeit|4Attraktion|4Tourismus|Touristenattraktion|Sehenswürdigkeiten|Wahrzeichen|Attraktionen", +"@category_parking": "4Parkplätze|3Parkplatz|4Parkhaus|5Tiefgarage|4Parken", +"@category_shopping": "4Einkaufen|3Laden|2Läden|3Bummeln|3Shoppen|3Geschäfte", +"@category_hotel": "3Hotel|3Hotels|3Übernachtung|3übernachten|4Schlaf|4schlafen|3Unterkunft", +"@category_tourism": "4Sehenswürdigkeit|4Attraktion|4Tourismus|3Touristenattraktion|3Sehenswürdigkeiten|3Wahrzeichen|3Attraktionen", "@category_entertainment": "3Unterhaltung|4Ausgehen", -"@category_nightlife": "Nachtleben|Party|Ausgehen", -"@category_children": "Freizeit mit Kindern|Familienurlaub|Familie|Kinder|Babies|Babys|kinderfreundlich|familienfreundlich", -"@category_atm": "3Geldautomat|4Bankautomat|7Bargeldautomat|3Geldscheinautomat", -"@category_rv": "6Einrichtungen für Wohnmobile|4Wohnmobile|4Wohnmobilstellplatz|Campingbus", +"@category_nightlife": "3Nachtleben|3Party|3Ausgehen", +"@category_children": "4Freizeit mit Kindern|3Familienurlaub|3Familie|3Kinder|3Babies|3Babys|3kinderfreundlich|3familienfreundlich", +"@category_atm": "3Geldautomat|4Bankautomat|7Bargeldautomat|3Geldscheinautomat|U+1F3E7", +"@category_rv": "6Einrichtungen für Wohnmobile|4Wohnmobile|4Wohnmobilstellplatz|3Campingbus", "amenity-atm|@category_atm": "5Geldautomat|5Bankautomat|5Bankomat|4Bargeld|3Geld|U+1F3E7|U+1F4B2|U+1F4B3|U+1F4B4|U+1F4B5|U+1F4B6|U+1F4B7", "@category_bank": "3Bank|4Geldbank|4Kreditinstitut", -"@category_secondhand": "3Second-hand|3Second Hand|3Gebrauchte Ware|3Gebrauchte Artikel", -"amenity-bank|@category_bank": "3Bankfiliale|Geld", -"@category_recycling": "Recycling|Abfallverwertung|Recyclebares Material|Getrennte Müllsammlung|Müllsortierung|Wiederverwendung|Wiederverwertung|Entsorgung", -"amenity-bureau_de_change": "3Geldwechselstelle|Wechselstube|Geld|Geldumtausch", +"@category_secondhand": "3Second-hand|3Second Hand|3Gebrauchte Ware|3Gebrauchte Artikel|5Brockenhaus|5Brockenstube", +"amenity-bank|@category_bank": "3Bankfiliale|3Geld", +"@category_recycling": "3Recycling|3Abfallverwertung|3Recyclebares Material|3Getrennte Müllsammlung|2Müllsortierung|4Wiederverwendung|4Wiederverwertung|3Entsorgung", +"amenity-bureau_de_change": "3Geldwechselstelle|3Wechselstube|3Geld|3Geldumtausch", "amenity-bar|amenity-pub|@category_eat|@category_nightlife": "2Bar|2Pub|4Kneipe|3Bier|4Trinken|4Gaststätte|4Bars und Kneipen|4Brauhaus|4Cocktail-Lounge|3Lokal", -"amenity-cafe|@category_eat": "3Café|6Kaffeehaus|Kaffeebar|Cafeteria|Kaffee|Bistro", +"amenity-cafe|@category_eat": "3Café|6Kaffeehaus|3Kaffeebar|3Cafeteria|3Kaffee|3Bistro", "amenity-fast_food|@category_eat": "4Fast Food|3Imbiss |7Schnellimbiss| Junkfood |Essen zum Mitnehmen", "amenity-restaurant|@category_eat": "3Restaurant|4Gasthaus|4Gaststube|6Speiselokal|4Gastwirtschaft|U+1F356|U+1F357|U+1F35A|U+1F35B|U+1F35C|U+1F35D|U+1F363|U+1F366|U+1F367|U+1F368|U+1F369|U+1F370|U+1F372|U+1F374|U+1F377|U+1F60B", "amenity-fuel|@category_fuel": "3Tankstelle|3Zapfsäule|U+26FD", @@ -30,50 +30,50 @@ "shop-deli|@category_food|@shop": "4Feinkostladen|4Feinkostgeschäftt|4Delikatessen", "shop-farm|@category_food|@shop": "4Hofladen|4Bauernhofladen|4Bauernladen|4Direktvermarkter", "shop-garden_centre|@shop": "4Gartencenter|4Gärtnerei|4Pflanzen", -"shop-grocery|@category_food|@shop": "Lebensmittelkonserven", -"shop-health_food|@category_food|@shop": "4Reformhaus|5Naturkostladen|5Bioladen", -"shop-hearing_aids|@shop": "4Hörgeräte", -"shop-mobile_phone|@shop": "4Handyladen|Eletronikgeschäft|Mobiltelefone", -"shop-florist|@shop": "4Florist|Gestecke|Blumengeschäft|4Blumenladen|Blumenhändler|Blumen|Blumenstrauß|Taggleiche Blumen", -"shop-butcher|@category_food|@shop": "5Metzgerei|3Metzger|5Schlachter|4Fleischhauer", -"shop-furniture|@shop": "5Möbelhaus|Möbelgeschäft", -"shop-kitchen|@shop": "6Küchenstudio|2Küchengeschäft", -"shop-alcohol|@category_food|@shop": "5Spirituosengeschäft|Spirituosen", +"shop-grocery|@category_food|@shop": "4Lebensmittel|4Nahrungsmittel|Lebensmittelkonserven", +"shop-health_food|@category_food|@shop": "3Reformhaus|5Naturkostladen|3Bioladen", +"shop-hearing_aids|@shop": "4Hörgeräte|Hörgeräteakustiker", +"shop-mobile_phone|@shop": "4Handyladen|4Eletronikgeschäft|4Mobiltelefone|4Mobilshop|4Smartphoneladen|4Smartphoneshop|4Smartphone|4Handy|U+1F4F1|U+1F4F2", +"shop-florist|@shop": "4Florist|4Gestecke|3Blumengeschäft|3Blumenladen|3Blumenhändler|3Blumen|3Blumenstrauß|U+1F337|U+1F338|U+1F339|U+1F33A|U+1F33B|U+1F33C|U+1F490|U+1F33E", +"shop-butcher|@category_food|@shop": "5Metzgerei|3Metzger|5Schlachter|4Fleischhauer|4Fleischerladen|5Schlachterei|4Fleischhauer|4Fleisch|3Wurst|4Fleischerei|U+1F356|U+1F357|U+1F969|U+1F953", +"shop-furniture|@shop": "5Möbelhaus|Möbelgeschäft|Einrichtungshaus", +"shop-kitchen|@shop": "2Küchenstudio|2Küchengeschäft|2Küchenware", +"shop-alcohol|@category_food|@shop": "5Spirituosengeschäft|Spirituosen|Alkohol|Schnaps|Wein|Bier", "shop-books|@shop": "Büchergeschäft|4Buchhandlung|Buchladen|Bücher", "shop-shoes|@category_shopping|@shop": "4Schuhgeschäft|Schuhe|Schuhladen|Schuhhandlung|Fußbekleidung", -"shop-electronics|@shop": "4Elektrofachgeschäft|Elektronikgeschäft|Elektrofachhandel", -"shop-hardware|shop-doityourself|@shop": "4Eisenwarengeschäft|3Baumarkt|4Heimwerkermarkt|4Eisenwarenhandlung|3DIY", +"shop-electronics|@shop": "4Elektrofachgeschäft|6Elektronikgeschäft|Elektrofachhandel", +"shop-hardware|shop-doityourself|@shop": "4Eisenwarengeschäft|8Eisenwarenhandel|3Baumarkt|4Heimwerkermarkt|4Eisenwarenhandlung|3DIY", "shop-houseware|@shop": "4Haushaltswaren", -"shop-jewelry|@category_shopping|@shop": "4Juwelier|Juweliergeschäft|Schmuck", -"shop-optician|@shop": "4Optiker|5Brillengeschäft|5Augenoptiker", +"shop-jewelry|@category_shopping|@shop": "4Juwelier|Juweliergeschäft|Schmuck|Schmuckgeschäft|Uhren", +"shop-optician|@shop": "4Optiker|4Brillengeschäft|5Augenoptiker|Brillen|5Sonnenbrillen", "shop-gift|@category_shopping|@shop": "7Geschenkeladen|5Geschenke|6Geschenkartikelladen|5Andenkenladen|3Andenken|3Präsente|4Mitbringsel|4Souvenirladen", "shop-beauty": "5Schönheitssalon|Schönheitsshop|Kosmetiker|Kosmetikstudio|Kosmetiksalon", "shop-beauty-nails": "5Nagelstudio|Nagelsalon|Fingernägel|Fußnägel|Nägel", -"shop-greengrocer|@category_food|@shop": "5Gemüseladen|Gemüsehändler", +"shop-greengrocer|@category_food|@shop": "5Gemüseladen|Gemüsehändler|Obst und Gemüse", "shop-sports|@category_shopping|@shop": "4Sportgeschäft|Sportartikel|Fitnessgeschäft", -"shop-supermarket|@category_food|@shop": "3Supermarkt", -"shop-mall|@category_shopping|@shop": "5Einkaufszentrum|5Ladenstraße|4Einkaufsgalerie|4Einkaufen|4Einkaufspassage|3Kaufhalle|8Vergnügungszentrum|4Einzelhandel", -"shop-department_store|@category_shopping|@shop": "4Kaufhaus|4Einkaufen|4Einkaufszentrum|4Einkaufspassage", -"shop-beverages|@category_food|@shop": "5Getränkemarkt", -"shop-computer|@shop": "4Computerfachgeschäft|4Computer|4Computergeschäft", +"shop-supermarket|@category_food|@shop": "3Supermarkt|Kaufhalle|Discounter", +"shop-mall|@category_shopping|@shop": "5Einkaufszentrum|5Ladenstraße|4Einkaufsgalerie|4Einkaufen|4Einkaufspassage|3Kaufhalle|8Vergnügungszentrum|4Einzelhandel|5Shoppingcenter|5Einkaufscenter|EKZ|7Shoppingmall", +"shop-department_store|@category_shopping|@shop": "4Kaufhaus|Warenhaus|Einkaufspassage", +"shop-beverages|@category_food|@shop": "5Getränkemarkt|Getränke", +"shop-computer|@shop": "4Computerfachgeschäft|4Computer|4Computergeschäft|Computerladen|Computerhandel|PC", "shop-confectionery|craft-confectionery|@category_food|@shop": "3Süßwarenladen|Süßwarengeschäft|Süßwaren|4Süßigkeiten|4Konfiserie", "shop-laundry": "5Wäscherei|5Waschsalon", -"shop-toys|@category_children|@shop": "5Spielwarengeschäft|Spielzeuggeschäft", -"amenity-marketplace|@category_food": "3Marktplatz|Markt", -"amenity-money_transfer": "4Geldtransfer|5Geldtransferbüro|4Wechselstube|5Geldwechsel|5Geldwechselbüro", -"shop-clothes|@category_shopping|@shop": "5Bekleidungsgeschäft|4Kleidung|5Bekleidung|4Kleidungsgeschäft|5Kleiderladen|5Einkaufen|4Shoppen ", -"shop-caravan|@category_rv|@shop": "5Wohnmobilhändler|5Wohnwagenhändler|6Wohnmobilgeschäft|6Wohnmobilshop|6Wohnwagenshop|6Wohnwagengeschäft|5Wohnwagen|5Wohnmobil", -"shop-car|@shop": "4Autohaus|4Autohändler|5Autoladen|5Autofachgeschäft|5Autogeschäft|5Automobil", +"shop-toys|@category_children|@shop": "5Spielwarengeschäft|Spielzeuggeschäft|Spielzeug", +"amenity-marketplace|@category_food": "3Marktplatz|Markt|Wochenmarkt", +"amenity-money_transfer": "4Geldtransfer|5Geldtransferbüro|4Geldversand", +"shop-clothes|@category_shopping|@shop": "5Bekleidungsgeschäft|4Kleidung|Bekleidung|Kleidungsgeschäft|5Kleiderladen|Einkaufen|Shoppen|4Klamotten|Klamottenladen|4Modegeschäft ", +"shop-caravan|@category_rv|@shop": "5Wohnmobilhändler|5Wohnwagenhändler|6Wohnmobilgeschäft|5Wohnwagen|5Wohnmobil|U+1F690", +"shop-car|@shop": "4Autohaus|Autohändler|Fahrzeugverkauf|Autohandlung|Autohaus", "shop-bicycle|@shop": "3Fahrradladen|4Fahrrad|3Velo|4Radladen|5Fahrradshop|6Radlerladen|5Fahrradfachgeschäft|3Bikeshop", "shop-kiosk": "3Kiosk", "highway-bus_stop|@category_transport": "3Bushaltestelle|Haltestelle|2Bus|Autobus|ÖPNV|Omnibushaltestelle", -"railway-tram_stop|@category_transport": "4Straßenbahnhaltestelle|4Tramhaltestelle|3Haltestelle|Tram|ÖPNV", -"amenity-bus_station|@category_transport": "3Busbahnhof|Bushaltestelle|Haltestelle|Bus|Autobus|ÖPNV", +"railway-tram_stop|@category_transport": "4Straßenbahnhaltestelle|4Tramhaltestelle|3Haltestelle|Tram|ÖPNV|Straßenbahn", +"amenity-bus_station|@category_transport": "3Busbahnhof|Bushaltestelle|Haltestelle|Bus|Autobus|ÖPNV|ZOB", "railway-station|railway-halt|building-train_station|@category_transport": "4Bahnhof|3Haltepunkt|3Station|Zug|Bahn|ÖPNV|Hbf", "railway-station-funicular": "5Standseilbahn|6Seilbahn", -"railway-station-subway|@category_transport": "2U-Bahn|3Metro|2ÖPNV|4Ubahn|5Underground|4Subway|3U Bahn|5Untergrundbahn|4Nahverkehr", -"amenity-ferry_terminal|@category_transport": "2Fähre|Fähranleger|Terminal", -"amenity-taxi|@category_transport": "3Taxi|3Taxistand|4Taxe|2ÖPNV|4Nahverkehr", +"railway-station-subway|@category_transport": "2U-Bahn|Metro|ÖPNV|U-Bahn-Station|Stadtbahn|Untergrundbahn|U-Bahn Haltestelle|Stadtbahnstation", +"amenity-ferry_terminal|@category_transport": "2Fähre|2Fähranleger|3Terminal|3Fährhafen|U+1F6A2|U+1F6A4|U+2693", +"amenity-taxi|@category_transport": "Taxistand|Taxenstand|Taxi|Taxe|Droschke|Taxistandplatz", "amenity-townhall": "3Rathaus|4Gemeindeamt", "tourism-attraction|@category_tourism": "3Attraktion|3Sehenswürdigkeit", "tourism-artwork": "3Kunstwerk|4Skulptur|4Gemälde|Statue", @@ -83,14 +83,14 @@ "tourism-viewpoint|@category_tourism": "3Panorama|Ausblick|4Aussichtspunkt", "tourism-information": "4Tourist-Information|Information|7Touristeninformation", "tourism-picnic_site|amenity-bbq|leisure-picnic_table": "3Picknickplatz|5Grillplatz|3Picknicktisch|3BBQ", -"amenity-place_of_worship": "4Anbetungsstätte|3Tempel|3Gotteshaus", -"amenity-place_of_worship-christian": "4Kirche|2Dom|3Kathedrale|4Münster|4Anbetungsstätte|5Christentum|U+1F64F|U+26EA|U+271D|U+2626", +"amenity-place_of_worship": "4Anbetungsstätte|3Tempel|3Gotteshaus|U+1F64F", +"amenity-place_of_worship-christian": "4Kirche|2Dom|3Kathedrale|4Münster|4Anbetungsstätte|4Christentum|3Kapelle|U+1F64F|U+26EA|U+271D|U+2626", "amenity-place_of_worship-muslim": "4Moschee|3Tekke|4Anbetungsstätte|4Gebetstempel|3Islam|4Tempel|U+1F64F|U+262A|U+1F54B|U+1F54C|U+262A", "amenity-place_of_worship-buddhist": "3Buddhistischer Tempel|4Tempel|4Anbetungsstätte|3Buddhismus|U+1F64F|U+26EA|U+2638", "amenity-place_of_worship-hindu": "4Hinduistischer Tempel|4Tempel|4Anbetungsstätte|4Hinduismus|U+1F64F|U+1F549", -"amenity-place_of_worship-shinto": "4Schrein|4Anbetungsstätte|4Tempel|4Shintoismus|Shinto|U+1F64F|U+26E9", -"amenity-place_of_worship-jewish": "4Synagoge|4Anbetungsstätte|4Tempel|4Judentum|U+1F64F|U+1F54D|U+2721", -"amenity-place_of_worship-taoist": "3Daoistischer Tempel|3Taoistischer Tempel|4Daoismus|4Taoismus|4Tempel|4Anbetungsstätte|U+1F64F|U+262F", +"amenity-place_of_worship-shinto": "4Schrein|4Anbetungsstätte|4Tempel|4Shintoismus|3Shinto|U+1F64F|U+26E9", +"amenity-place_of_worship-jewish": "3Synagoge|4Anbetungsstätte|4Tempel|3Judentum|3jüdischU+1F64F|U+1F54D|U+2721", +"amenity-place_of_worship-taoist": "3Daoistischer Tempel|3Taoistischer Tempel|3Daoismus|3Taoismus|4Tempel|4Anbetungsstätte|U+1F64F|U+262F", "tourism-museum|@category_tourism": "2Museum|Ausstellung|3Galerie|Sehenswürdigkeit", "waterway-waterfall|@category_tourism": "2Wasserfall", "historic-archaeological_site|@category_tourism": "Ausgrabungen|4Ausgrabungsstätte|4Archäologische Stätte", @@ -100,45 +100,45 @@ "historic-castle|@category_tourism": "3Burg|4Schloss|Festung|3Palast|Wallburg|Kreml|4Herrenhaus|Palais|3Ruine", "historic-city_gate|@category_tourism": "4Stadttor|4Historisches Stadttor|U+1F3DB|U+1F3F0", "historic-citywalls|@category_tourism": "4Stadtmauer|4Historische Stadtmauer|U+1F9F1", -"historic-fort|@category_tourism": "Fort", +"historic-fort|@category_tourism": "3Fort|4Festung|U+1F3EF|U+1F3F0", "historic-gallows|@category_tourism": "3Galgen", "historic-memorial|@category_tourism": "4Denkmal|3Gedenkstätte", "historic-memorial-cross": "3Gedenkkreuz", "historic-memorial-plaque": "3Gedenktafel", -"historic-memorial-sculpture|@category_tourism": "4Skulptur|U+1F5FF|U+1F5FD", +"historic-memorial-sculpture|@category_tourism": "4Skulptur|3Büste|4Plastik|5Standbild|4Statue|4Statuette|5steinernes Bild|U+1F5FF|U+1F5FD", "historic-memorial-statue|@category_tourism": "4Statue|U+1F5FD", "historic-memorial-stolperstein": "3Stolperstein", "historic-memorial-war_memorial|@category_tourism": "4Kriegerdenkmal|Kriegsdenkmal", -"historic-monument|@category_tourism": "4Monument", +"historic-monument|@category_tourism": "4Monument|Denkmal", "historic-pillory|@category_tourism": "Pranger", "historic-cannon": "Kanone", "historic-anchor": "4Historischer Anker|4Anker|6Schiffsanker|U+2693", "historic-ruins|@category_tourism": "4Historische Ruine|3Ruine|U+1F3DA|U+1F3F0", -"historic-mine": "4Historische Mine|4Mine|U+1FAA8|U+2692|U+1FA8F|U+1F4A3|U+1F6D8", -"historic-ship|@category_tourism": "4Schiff|Boot", +"historic-mine": "4Historische Mine|4Alte Mine|3Mine|U+1FAA8|U+2692|U+1FA8F|U+1F4A3|U+1F6D8", +"historic-ship|@category_tourism": "4Schiff|Boot|Museumsschiff", "historic-wreck": "Schiffswrack", -"historic-locomotive|@category_tourism": "4Historische Lokomotive|4Lokomotive|4Historische Eisenbahn|6Eisenbahn|3Lok|4Historische Lok|U+1F682", +"historic-locomotive|@category_tourism": "4Historische Lokomotive|4Lokomotive|4Historische Eisenbahn|6Eisenbahn|3Lok|4Historische Lok|4Historische Dampflok|3Dampflok|U+1F682", "historic-tank|@category_tourism": "4Historischer Panzer|4Panzer", "historic-aircraft|@category_tourism": "4Historisches Flugzeug|6Flugzeug|U+2708|U+1F6E9|U+1F6EB|U+1F6EC", -"historic-tomb|@category_tourism": "Historische Grabstätte|Grab", +"historic-tomb|@category_tourism": "4Historische Grabstätte|3Grab|3Gruft|", "historic-wayside_cross": "4Wegkreuz|4Flurkreuz", "historic-wayside_shrine": "4Bildstock|4Marterl|4Wegstock|4Helgenstöckli", "leisure-dog_park": "4Hundezone|4Hundeauslaufzone|4Hundeauslauffläche|5Hunde|5Hundepark|U+1F436|U+1F415|U+1F9AE|U+1F429", "leisure-garden": "2Garten", "amenity-bench|amenity-bench-backless": "4Sitzbank|4Parkbank", -"amenity-bicycle_rental": "4Fahrradverleih|4Fahrrad|4Fahrradvermietung|4Radfahren|4Radverleih|3Velo|5Verleih|5Vermietung|U+1F6B2|U+1F510|U+1F6B4|U+1F6B5", -"amenity-bicycle_repair_station": "4Fahrradreparatur|4Radservicestation|4Radreparatur|U+1F6B2|U+1F527|U+1F529|U+26D3|U+1FA9B|U+1F6DE", +"amenity-bicycle_rental": "4Fahrradverleih|4Fahrrad|4Fahrradvermietung|4Radfahren|4Radverleih|3Velo|3Veloverleih|3Velovermietung|5Verleih|5Vermietung|U+1F6B2|U+1F510|U+1F6B4|U+1F6B5", +"amenity-bicycle_repair_station": "4Fahrradreparatur|4Radservicestation|4Radreparatur|Velomechaniker|Veloreparatur|U+1F6B2|U+1F527|U+1F529|U+26D3|U+1FA9B|U+1F6DE", "amenity-car_sharing": "4Carsharing|4Car-Sharing|4Carsharing-Dienste|5Auto teilen|4Auto|5Fahrgemeinschaft|4Mitfahrzentrale|U+1F690|U+1F697|U+1F698|U+1F699|U+1F6FB|U+1F46B|U+1F465", "amenity-car_rental": "5Autovermietung|5Autoverleih|4Mietauto|4Auto|5Fahrzeug mieten|5Verleih|4KFZ-Vermietung|5Fahrzeugvermietung|U+1F697|U+1F698|U+1F699", -"amenity-motorcycle_rental": "5Motorradvermietung|5Motorrad|5Motorrad mieten|5Mofa mieten|5Motorroller mieten|U+1F3CD|U+1F6F5", -"amenity-cinema|@category_entertainment": "3Kino|4Cinema|4Filmtheater|5Lichtspielhaus|U+1F3A6|U+1F3AC", -"leisure-bowling_alley|@category_entertainment": "3Bowlingbahn|3Bowlen|3Bowling|3Bowlingcenter|3Bowling-Center|3Bowling Center|3Bowling-Bahn|3Bowling Bahn|U+1F3B3", -"amenity-theatre|@category_entertainment": "3Theater", +"amenity-motorcycle_rental": "5Motorradvermietung|5Motorrad|5Motorrad mieten|5Mofa mieten|5Motorroller mieten|3Töffvermietung|3TöffverleihU+1F3CD|U+1F6F5", +"amenity-cinema|@category_entertainment": "3Kino|4Cinema|4Filmtheater|4Film|4Filme|5Lichtspielhaus|U+1F3A6|U+1F3AC", +"leisure-bowling_alley|@category_entertainment": "3Bowlingbahn|3Bowlen|3Bowling|3Bowlingcenter|3Bowling-Center|3Bowling Center|3Bowling-Bahn|3Bowling Bahn|3Bowlingzentrum|3Kegelbahn|3Kegeln|U+1F3B3", +"amenity-theatre|@category_entertainment": "3Theater|4Schauspielhaus|U+1F3AD", "amenity-nightclub|@category_entertainment|@category_nightlife": "3Nachtclub|Nachtklub|Nachtbar|Nachtlokal|Disko|Tanzen|Club", "amenity-brothel": "Bordell", "@gambling": "Glücksspiel", -"amenity-casino|@category_entertainment|@category_nightlife|@gambling": "Casino|Kasino|Spielkasino|Spielhalle", -"leisure-adult_gaming_centre|@gambling": "Gaming-Zentrum für Erwachsene", +"amenity-casino|@category_entertainment|@category_nightlife|@gambling": "3Casino|3Kasino|5Spielkasino|5Spielhalle|5Spielbank|U+1F3B0|U+1F3B2|U+1F3B4", +"leisure-adult_gaming_centre|@gambling": "5Spielhalle|5Spielothek|5Spielsalon|5Spielcasino|U+1F3B0|U+1F3B2|U+1F3B4", "leisure-amusement_arcade|@category_entertainment": "Arcade", "amenity-college": "4Bildungseinrichtung|3Volkshochschule|Berufsakademie|Fachschule|4Kolleg", "amenity-fire_station": "5Feuerwehr|Feuerwache", @@ -148,7 +148,7 @@ "@category_hospital": "4Krankenhaus", "amenity-hospital|@category_hospital": "4Spital|Klinik|3Arzt|Doktor|Medizinische Einrichtung|Medizinisches Zentrum|Gesundheitswesen|3Ambulanz|Gesundheitsdienstleistungen|Erste Hilfe", "amenity-clinic|@category_hospital": "4Klinik|Krankenhaus|Ambulanz|Arzt|Diagnostik|Gesundheitsdienstleistungen|4Doktor", -"amenity-doctors|@category_hospital": "Arztpraxis|Klinik|Krankenhaus", +"amenity-doctors|@category_hospital": "3Arztpraxis|3Arzt|5Allgemeinmediziner|3Ärztezentrum|3Ärztehaus|U+1F489|U+1F3E5|U+1F691", "amenity-dentist": "4Zahnarzt", "healthcare-laboratory": "5Medizinisches Labor|3Labor", "healthcare-physiotherapist": "4Physiotherapie|Physiotherapeut|Physiotherapeutin", @@ -165,31 +165,31 @@ "amenity-library": "3Bibliothek|4Bücherei|5Stadtbibliothek|3Bib|3Uni-Bib|4Uni-Bibliothek|U+1F4D6|U+1F4DA|U+1F3DB|U+1F3E2", "amenity-parking|amenity-parking_entrance|@category_parking": "4Parkplatz|4Parken|4Parkhaus|4Tiefgarage|4Parkgarage|4Garage|5Autoparkplatz|U+1F697|U+1F17F|U+1F698|U+1F699", "@category_pharmacy": "3Apotheke|Pharmazie", -"amenity-pharmacy|@category_pharmacy": "Apotheke|Drogerie", +"amenity-pharmacy|@category_pharmacy": "3Apotheke|3Drogerie|3Medikamente|U+1F489|U+1F48A", "@category_post": "3Post", -"amenity-post_box|@category_post": "3Briefkasten|3Postfach|post", +"amenity-post_box|@category_post": "3Briefkasten|3Postfach|3Post|U+2709|U+1F4E8|U+1F4E9|U+1F4EA|U+1F4EB|U+1F4EE|U+1F4EC|U+1F4ED", "amenity-post_office|post_office-post_partner|@category_post": "3Postfiliale|Postamt", "amenity-vehicle_inspection": "Fahrzeuginspektion", "amenity-waste_disposal": "4Müllcontainer|Mülltonne|Abfälle|Müll|Müllentsorgung", -"amenity-recycling-centre|@category_recycling": "4Recyclinghof|Recyclingzentrum", -"amenity-recycling-container|amenity-recycling|@category_recycling": "5Wertstoffcontainer|5Recyclingbehälter", +"amenity-recycling-centre|@category_recycling": "3Recyclinghof|3Recyclingzentrum|3Wertstoffhof|U+1F6AE|U+267B", +"amenity-recycling-container|amenity-recycling|@category_recycling": "3Wertstoffcontainer|3Recyclingbehälter|3Container|U+1F6AE|U+267B", "recycling-batteries|@category_recycling": "Batterien", -"recycling-clothes|@category_recycling": "4Altkleider|Alte Kleidung|Sachen spenden", -"recycling-glass_bottles|@category_recycling": "4Glas-Container|Glasflaschen", +"recycling-clothes|@category_recycling": "3Altkleider|3Alte Kleidung|3Kleiderspende|3Altkleidercontainer", +"recycling-glass_bottles|@category_recycling": "4Glas-Container|3Glasflaschen|3Altglas", "recycling-paper|@category_recycling": "4Altpapier|Papier", -"recycling-plastic|@category_recycling": "Plastik-Müll|Kunststoff", -"recycling-plastic_bottles|@category_recycling": "Plastikflaschen", +"recycling-plastic|@category_recycling": "3Kunststoff|3Plastik|3Plastikmüll|3Plaste|3Plast", +"recycling-plastic_bottles|@category_recycling": "3Plastikflaschen|3Pfandflaschen", "recycling-scrap_metal|@category_recycling": "4Altmetall|Schrott", "recycling-small_appliances|@category_recycling": "Elektroschrott", -"amenity-sanitary_dump_station|@category_rv": "3VE-Station|4Entsorgungsstation|4Versorgungsstation|2RV Dump|U+1F6BE|U+1F690|U+1F4A9", +"amenity-sanitary_dump_station|@category_rv": "3VE-Station|4Entsorgungsstation|4Versorgungsstation|2RV Dump|3Abwasser|3Toilette entleeren|U+1F6BE|U+1F690|U+1F4A9", "amenity-school": "3Schule|Schulgebäude", "amenity-shelter": "5Unterstand|Wetterschutz|Schutzhütte", -"amenity-shelter-basic_hut": "4Biwakschachtel|4Schutzhütte|6Schlafunterkunft|U+1F634|U+1F4A4|U+1F6D6|U+1F6CF|U+1F6CC", +"amenity-shelter-basic_hut": "3Biwakschachtel|4Schutzhütte|5Schlafunterkunft|3Notunterkunft|3Biwak|U+1F634|U+1F4A4|U+1F6D6|U+1F6CF|U+1F6CC", "amenity-shelter-lean_to": "3Lean-to Schlafunterstand|Lean-to|3A-Frame Shelter|4Wetterschutz|4Schutzhütte|U+1F6D6", -"amenity-stripclub": "5Stripclub|5Striptease|5Strip Club|4Tabledance|5Striplokal|5Strip Lokal|5Nachtklub|5Stripklub|5Nachtclub|U+1F46F|U+1F459|U+1F460|U+1F51E", +"amenity-stripclub": "5Stripclub|5Striptease|5Strip Club|4Tabledance|5Striplokal|5Strip Lokal|5Striptease|5Nachtklub|5Stripklub|5Nachtclub|U+1F46F|U+1F459|U+1F460|U+1F51E", "amenity-telephone": "2Telefon|Fernsprecher", "@category_toilet": "3Toilette|WC|3Klosett|Pissoir|Null-Null|00", -"amenity-toilets|toilets-yes|@category_toilet": "3Toilette|2WC|5Stilles Örtchen|5Gäste-WC|6Wasserkloset|00|3Klo", +"amenity-toilets|toilets-yes|@category_toilet": "3Toilette|2WC|5Stilles Örtchen|5Gäste-WC|6Wasserkloset|00|3Klo|Öffentliche Toilette|U+1F6BD|U+1F6BE|U+1F4A9|U+1F6BB|U+1F6B9|U+1F6BA", "amenity-university": "4Universität|Uni|Hochschule|Institut", "place-continent": "Kontinent|Festland", "place-country": "Land|Staat", @@ -201,8 +201,8 @@ "place-region": "Region", "place-island|place-islet": "Insel", "place-suburb|place-quarter|place-neighbourhood|landuse-residential": "Stadtteil|Stadtviertel|Wohnviertel|Wohnbezirk|Siedlung|Wohngebiet", -"place-hamlet": "3Weiler|4Dorf|4Siedlung|U+1F3D8", -"place-village": "3Dorf|5Weiler|4Siedlung|U+1F3D8", +"place-hamlet": "3Weiler|4Dorf|4Siedlung|5Bauerschaft|4Ansiedlung|3Gemeinde|U+1F3D8", +"place-village": "3Dorf|4Siedlung|3Gemeinde|3Ortschaft|U+1F3D8", "place-locality": "Örtlichkeit|Lokalität|Region|Ort", "place-farm": "4Bauernhof|Farm", "highway-raceway": "Rennstrecke|Rennbahn", @@ -214,23 +214,23 @@ "landuse-forest": "Wald|Urwald|Nadelwald|Laubwald|Mischwald|Forst", "leisure-park": "Park", "tourism-aquarium|@category_tourism": "3Aquarium|3Aquarien", -"tourism-hostel|@category_hotel": "3Herberge|Hostel|Gasthaus|Unterkunft", +"tourism-hostel|@category_hotel": "3Herberge|3Hostel|3Gasthaus|3Unterkunft|3Jugendherberge|3Jugendgästehaus|5Naturfreundehaus|U+1F3E8", "tourism-hotel|@category_hotel": "Gasthaus", -"tourism-guest_house|@category_hotel": "3Pension|Unterkunft|Herberge|Wohnheim|Gästehaus", -"tourism-motel|@category_hotel": "3Motel|Gasthaus|Wohnheim", +"tourism-guest_house|@category_hotel": "3Pension|3Unterkunft|3Herberge|3Wohnheim|3Gästehaus|3Fremdenzimmer|U+1F3E8", +"tourism-motel|@category_hotel": "3Motel|3Gasthaus|3Wohnheim|3Raststätte|3Rasthaus|3Autohof|U+1F3E8", "tourism-alpine_hut|@category_hotel": "4Berghütte|Almhütte|Berghotel|Hotel|Unterkunft|Bergunterkunft|Herberge|Lager", -"shop-hairdresser": "3Friseur|3Frisiersalon|3Frisör|3Friseursalon|3Frisörsalon|4Coiffeur|4Haare schneiden|4Haarschnitt|4Haarstyling|U+1FAAE|U+1F487|U+1F488|U+2702", -"aeroway-aerodrome": "3Flughafen|4Flugzeug|3Flugplatz|U+1F6EB|U+1F6EC|U+2708|U+1F6E9|U+1F681", +"shop-hairdresser": "3Friseur|3Frisiersalon|3Frisör|3Friseursalon|3Frisörsalon|3Coiffeur|4Haare schneiden|4Haarschnitt|3Friseurladen|3Barbier|4Haarstyling|3Haarschneider|3Hairstylist|3Hair-Stylist|U+1FAAE|U+1F487|U+1F488|U+2702", +"aeroway-aerodrome": "3Flughafen|4Flugzeug|3Flugplatz|3Flugfeld|3Landeplatz|3Lufthafen|3Flgh.|3Airport|U+1F6EB|U+1F6EC|U+2708|U+1F6E9|U+1F681", "leisure-stadium": "4Stadion|5Sport|4Olympiastadion|5Sportanlage|5Sportstadion|5Sportkomplex|5Sporthalle|3Arena|U+26BD|U+26BE|U+1F3BE|U+1F3C0|U+1F3C8|U+1F4AA|U+1F3C9|U+1F3DF", "leisure-playground|@category_children": "Spielplatz", "leisure-sports_centre|leisure-sports_centre-sport-american_football|leisure-sports_centre-sport-archery|leisure-sports_centre-sport-athletics|leisure-sports_centre-sport-australian_football|leisure-sports_centre-sport-badminton|leisure-sports_centre-sport-baseball|leisure-sports_centre-sport-basketball|leisure-sports_centre-sport-beachvolleyball|leisure-sports_centre-sport-bowls|leisure-sports_centre-sport-climbing|leisure-sports_centre-sport-cricket|leisure-sports_centre-sport-curling|leisure-sports_centre-sport-equestrian|leisure-sports_centre-sport-field_hockey|leisure-sports_centre-sport-futsal|leisure-sports_centre-sport-golf|leisure-sports_centre-sport-gymnastics|leisure-sports_centre-sport-handball|leisure-sports_centre-sport-ice_hockey|leisure-sports_centre-sport-multi|leisure-sports_centre-sport-padel|leisure-sports_centre-sport-pelota|leisure-sports_centre-sport-scuba_diving|leisure-sports_centre-sport-shooting|leisure-sports_centre-sport-skateboard|leisure-sports_centre-sport-skiing|leisure-sports_centre-sport-soccer|leisure-sports_centre-sport-table_tennis|leisure-sports_centre-sport-tennis|leisure-sports_centre-sport-volleyball|leisure-sports_centre-sport-yoga": "4Sportzentrum|4Sport|4Fitness-Zentrum|4Fitness-Center|4Sportkomplex|5Sportforum|5Sporthalle|4Sportanlage|U+26BD|U+26BE|U+1F3BE|U+1F4AA|U+1F3C8|U+1F3C0|U+1F3C9", "leisure-sports_centre-sport-swimming": "4Schwimmbad|Freibad|Hallenbad|Schwimmhalle", "leisure-fitness_centre-sport-yoga": "Yoga-Studio", -"leisure-golf_course": "3Golfplatz|Golf|U+26F3|U+1F3CC", -"leisure-miniature_golf": "4Minigolf|5Miniaturgolf|4Golf|U+26F3|U+1F3CC", +"leisure-golf_course": "3Golfplatz|2Golf|3Golfanlage|U+26F3|U+1F3CC", +"leisure-miniature_golf": "4Minigolf|5Miniaturgolf|4Golf|3Pitch und Putt|4Mini Golf |4Mini-Golf|U+26F3|U+1F3CC", "leisure-escape_game": "Escape room", "leisure-pitch": "4Sportplatz|4Feld|3Sport|4Platz|U+1F3BE|U+1F3C0|U+1F3C8|U+1F3C9|U+1F3C3", -"leisure-swimming_pool": "4Schwimmbecken|4Schwimmen|5Sport|U+1F3CA", +"leisure-swimming_pool": "4Schwimmbecken|4Schwimmen|4Schwimmbad|3Swimmingpool|3Bassin|5Sport|U+1F3CA", "sport-american_football": "Amerikanischer Fußball", "sport-archery": "Bogenschießen", "sport-athletics": "Leichtathletik", @@ -261,35 +261,35 @@ "building": "Gebäude", "building-address": "Adresse", "@category_police": "Polizeistation|4Polizei", -"amenity-police|@category_police": "4Polizeiwache|4Polizeistation|4Polizeirevier|4Polizei|U+1F693|U+1F46E|U+1F694|U+1F482|U+1F6A8", -"office-diplomatic": "4Botschaft|4Konsulat|4Verbindungsbüro|U+1F3E2|U+1F3DB", +"amenity-police|@category_police": "4Polizeiwache|4Polizeistation|4Polizeirevier|4Polizei|4Polizeidienststelle|4Polizeiinspektion|4Kommisariat|U+1F693|U+1F46E|U+1F694|U+1F482|U+1F6A8", +"office-diplomatic": "4Botschaft|4Konsulat|4Verbindungsbüro|4diplomatische Vertretung|5konsularische Vertretung|4Verbindungsbüro|5ständige Vertretung|4Auslandsvertretung|4Diplomatische Vertretung|U+1F3E2|U+1F3DB", "natural-bay": "Bucht|Bai", "@category_water": "3Wasser", -"amenity-drinking_water|drinking_water-yes|@category_water": "4Trinkwasser", +"amenity-drinking_water|drinking_water-yes|@category_water": "4Trinkwasser|4Trinkbrunnen|U+1F6B0", "natural-hot_spring|@category_water": "Heiße Quelle|Thermalquelle", "natural-spring|@category_water": "Quelle", "man_made-water_well|@category_water": "Brunnen", -"amenity-water_point|@category_water|@category_rv": "6Wassertank-Auffüllstation|5Wasseranschluss|U+1F4A7|U+1F6B0|U+1F6BF", -"man_made-water_tap|@category_water": "5Wasserhahn|U+1F6B0", +"amenity-water_point|@category_water|@category_rv": "6Wassertank-Auffüllstation|5Wasseranschluss|5Wasserzapfsäule|5Wasserzapfstelle|5Wasseranschluss|5Frischwasser|4Trinkwasserzapfstelle|U+1F4A7|U+1F6B0|U+1F6BF", +"man_made-water_tap|@category_water": "5Wasserhahn|5Wasserkran|U+1F6B0", "@waterbody": "Wasserfläche|Gewässer", "natural-water-basin|landuse-basin|@waterbody": "Wasserbecken", -"natural-water-pond|@waterbody": "Teich|Wasserbecken", +"natural-water-pond|@waterbody": "3Teich|5Wasserbecken|3Tümpel|3Weiher", "natural-water-lake|@waterbody": "See|Wasserbecken", "natural-water-reservoir|landuse-reservoir|@waterbody": "5Reservoir|5Wasserreservoir|5Stausee", "waterway-river|waterway-stream|natural-water-river": "Fluss|Strom", "waterway-canal": "Kanal", -"shop-car_repair": "3Autowerkstatt|3Kfz-Werkstatt|4Reparaturwerkstatt|4Auto|4Werkstatt|5Reparieren|U+1F527", +"shop-car_repair": "3Autowerkstatt|3Kfz-Werkstatt|4Reparaturwerkstatt|3Auto|3Werkstatt|4Reparieren|3Automechaniker|3Kfz-Werkstätte|3Automobilwerkstatt|3Carrosserie|3Autoreparaturwerkstatt|U+1F527", "tourism-camp_site|@category_hotel": "4Campingplatz|4Camping|4Zeltplatz|4Zelten|U+26FA|U+1F3D5", "tourism-caravan_site|@category_rv||@category_hotel": "4Wohnmobilstellplatz|Wohnmobilpark|Wohnwagenstellplatz|Wohnwagenplatz|Campingplatz", "office": "Büro|Amt|Unternehmen|Agentur|Dienststelle|Firma|Geschäft|Gesellschaft", "office-company": "Firmenbüro|Niederlassung", -"office-government": "3Regierungsstelle|3Amt|3Behörde|4Verwaltung|U+1F3E2|U+1F3DB", +"office-government": "3Regierungsstelle|3Amt|3Behörde|4Verwaltung|3öffentliche Verwaltung|3Dienststelle|5Ministerium|3Regierung|4staatliche Institution|3Amtssitz|U+1F3E2|U+1F3DB", "office-lawyer": "5Anwaltskanzlei|4Anwaltsbüro|4Anwalt|4Rechtsanwalt|3Jurist|4Gerichtsanwalt|4Rechtsbeistand|4Rechtsberater|4Verteidiger|U+2696", -"office-telecommunication": "5Mobilfunkbetreiber|5Mobilfunkanbieter|5Telekommunikationsanbieter|5Telefonabieter|6Internetanbieter|5Telekommunikation|U+1F4F1|U+260E|U+1F4DE|U+1F4E1|U+1F4E7", +"office-telecommunication": "5Mobilfunkbetreiber|5Mobilfunkanbieter|5Telekommunikationsanbieter|5Telefonabieter|6Internetanbieter|5Telekommunikation|5Telekommunikationsunternehmen|5Telekommunikationsfirma|U+1F4F1|U+260E|U+1F4DE|U+1F4E1|U+1F4E7", "craft-beekeeper": "3Imker", "craft-blacksmith": "Schmied", "craft-brewery": "4Brauerei|Brauhaus|Hausbrauerei|Bier|Bierausschank|Hausbräu", -"craft-caterer": "4Caterer|3Catering|5Partyservice|U+1F973|U+1F371", +"craft-caterer": "4Caterer|3Catering|5Partyservice|3Caterer|4Verpflegung|U+1F973|U+1F371", "craft-carpenter": "4Zimmermann", "craft-confectionery": "Süßwarenladen", "craft-electrician": "4Elektriker", @@ -297,37 +297,37 @@ "craft-gardener": "Landschaftsgärtner|4Gärtnerei", "craft-grinding_mill": "Mühle", "craft-handicraft": "4Kunsthandwerk", -"craft-hvac": "4Heizung|4Lüftung|4Kühlung|4Klimatisierung|U+1F32C|U+1F975|U+1F976|U+2668|U+2744|U+1F525|U+1F321", +"craft-hvac": "4Heizung|4Lüftung|4Kühlung|4Klimatisierung|3Lüftung und Klimatisierung|4Installationsbetrieb für Heizungs-, Lüftungs- und Klimatechnik|3Lüftungstechnik|3Klimatechnik|3Heizungstechnik|3Wärmetechnik|3Heiztechnik|3Raumlufttechnik|U+1F32C|U+1F975|U+1F976|U+2668|U+2744|U+1F525|U+1F321", "craft-metal_construction": "5Metallverarbeitung|4Schlosser", -"craft-key_cutter": "5Schlüssel-Nachmachdienst|5Schlüssel|5Schlüsselservice|5Schlüssel-Service|U+1F511|U+1F5DD|U+00A9", +"craft-key_cutter": "4Schlüssel-Nachmachdienst|4Schlüssel|4Schlüsselservice|4Schlüssel-Service|U+1F511|U+1F5DD|U+00A9", "craft-locksmith": "4Schlüsseldienst", "craft-painter": "Maler", "craft-photographer": "4Fotograf|Fotostudio", -"craft-plumber": "5Installateur|4Klempner|U+1F527|U+1F6C1|U+1F6BD", +"craft-plumber": "5Installateur|4Klempner|4Installationsbetrieb für Sanitär-, Heizungs- und Klimatechnik|4Sanitärinstallateur|4Spengler|6Sanitärtechnik|U+1F527|U+1F6C1|U+1F6BD", "craft-sawmill": "4Sägewerk", "craft-shoemaker": "Schuhreparatur|4Schuhmacher|Schuster", -"craft-winery": "4Kellerei|4Weingut|3Winzer|4Weinbauer|U+1F347|U+1F377", +"craft-winery": "3Kellerei|4Weingut|3Winzer|4Weinbauer|3Winzerbetrieb|4Weinbau|3Winzergenossenschaft|3Weinkellerei|4Weinbaubetrieb|3Rebgut|U+1F347|U+1F377", "craft-tailor": "4Schneider", "area:highway-footway|area:highway-pedestrian|area:highway-steps|place-square": "Platz|Fußgängerzone", "place-sea": "Meer", "place-ocean": "Ozean", -"@category_wifi": "3WLAN|3W-LAN|3WiFi|3Wi-Fi|6Internet|U+1F6DC", +"@category_wifi": "3WLAN|3W-LAN|3WiFi|3Wi-Fi|6Internet|W-Lan|Wireless LAN|3Wireless Local Area Network|3Hotspot|5Internet-Hotspot|3WiFi-Hotspot|3WLAN-Hotspot|U+1F6DC", "internet_access|internet_access-wlan|@category_wifi": "3Internet|Internetzugang", "natural-beach|natural-beach-sand|natural-beach-gravel|leisure-beach_resort": "Strand", -"man_made-lighthouse": "5Leuchtturm|6Schifffahrtszeichen|5Leuchtfeuer|5Leuchtbake|U+1F6A8|U+1F4A1", +"man_made-lighthouse": "5Leuchtturm|6Schifffahrtszeichen|5Leuchtfeuer|5Leuchtbake|5Befeuerung|U+1F6A8|U+1F4A1", "man_made-survey_point": "4Vermessungspunkt", -"man_made-flagpole": "4Fahnenmast|4Flaggenmast|U+1F3F3", +"man_made-flagpole": "4Fahnenmast|4Flaggenmast|4Fahnenstange|U+1F3F3", "man_made-mast": "Mast", "man_made-communications_tower|man_made-tower-communication": "Funkturm|Kommunikationsturm", -"man_made-petroleum_well": "4Erdölbohrung|3Ölquelle|U+1F6E2", +"man_made-petroleum_well": "4Erdölbohrung|3Ölquelle|5Ölfördereinrichtung|4Erdölpumpe|4Erdölförderung|4Eruptionskreuz|4Ölbohrung|3Bohrung|U+1F6E2", "organic-only|organic-yes": "3Bio|Biologische|biologisch|5Ökologische|Ökologisches|öko|bio|4organische|organisch|naturnah|natürliches|natürlich|gesundes|gesund|umweltfreundlich", "shop-copyshop": "4Kopierladen|4Drucker|Copyshop", "shop-photo|@shop": "4Fotofachgeschäft|Foto|Rahmen", -"shop-camera|@shop": "4Kamerageschäft|4Kamerafachgeschäft|4Fotofachgeschäft|4Fotogeschäft|4Kamera|4Photografie|4Fotografie|U+1F4F7|U+1F4F8|U+1F4F9|U+1F39E|U+1F5BC", +"shop-camera|@shop": "3Kamerageschäft|3Kamerafachgeschäft|3Fotofachgeschäft|3Foto|3Fotoladen|3Fotogeschäft|3Kamera|3Photografie|3Fotografie|3Fototechnik|3Photo|3Fotoausrüstung|U+1F4F7|U+1F4F8|U+1F4F9|U+1F39E|U+1F5BC", "shop-travel_agency": "5Reisebüro|Reisen|Rundreisen|Reisevermittlung|Reisevermittler|Reiseagentur|Touren|Ausflüge|Urlaub|Touristeninformation|Last-Minute-Tour", -"shop-outdoor|@shop": "4Outdoor-Ausrüstungs-Laden|Outdoor-Ausrüstung|Trekking|Klettern|Camping", +"shop-outdoor|@shop": "4Outdoor-Ausrüstungs-Laden|3Outdoor-Ausrüstung|3Trekking|3Klettern|3Camping|3Wandern|3Campingausrüster", "shop-dry_cleaning": "Chemische Reinigung|4Reinigung", -"shop-tyres|@shop": "4Reifenhändler|4Autoreifen|4Reifen|U+1F6DE", +"shop-tyres|@shop": "4Reifenhändler|4Autoreifen|4Reifen|4Reifenwechsel|U+1F6DE", "amenity-car_wash": "4Autowaschanlage|Autowäsche", "amenity-veterinary": "4Tierarzt|4Tierärztin|4Tierarztpraxis|4Tierpraxis|4Tierdoktor|5Hundearzt|5Katzenarzt|4Haustiere|U+2695", "@charging_station": "4Ladestation|aufladen", @@ -340,8 +340,8 @@ "leisure-sauna": "3Sauna|Schwitzbad|Schwitzhütte|Dampfbad|Dampfsauna|Saunakabine", "shop-car_repair-tyres|shop-car_repair": "Reifenservice|Reifen|6Reifenreparatur|Reifeninstandsetzung|Reifenpannenreparatur|Reifenpannenbehebung|Reifenersatz|Pneureparatur|Pneu|Pannenreparatur", "shop-chemist|@shop": "4Drogerie", -"shop-pet|@shop": "4Tierhandlung", -"tourism-zoo|@category_tourism|@category_children": "Zoo", +"shop-pet|@shop": "4Tierhandlung|3Zoohandlung|4Tierbedarf", +"tourism-zoo|@category_tourism|@category_children": "2Zoo|4Tierpark", "attraction-animal": "Tiergehege", "tourism-information-office|amenity-ranger_station|@category_tourism": "4Fremdenverkehrsamt|4Fremdenbüro|4Touriinfo|4Touri-Info|4Touristeninfo|4Touristeninformationszentrum|4Infopoint|U+2139", "tourism-information-visitor_centre|amenity-ranger_station|@category_tourism": "4Besucherzentrum|4Besucherinfo|4Fremdenverkehrsamt|4Fremdenbüro|4Touriinfo|4Touri-Info|4Touristeninfo|4Touristeninformationszentrum|4Infopoint|U+2139", @@ -359,11 +359,11 @@ "amenity-vending_machine-newspapers": "Zeitungsautomat|Zeitungsständer", "amenity-vending_machine-sweets": "Süßigkeitenautomat|Süßwaren|Süßigkeiten", "amenity-vending_machine-excrement_bags": "Hundetütenspender|Hundekotsähuckchenspender|Hundekotbeutelspender|Hundekotbeutel", -"amenity-parcel_locker|@category_post": "5Paketstation|Paket Abholstation|Paket SB|Paket Versandstation", +"amenity-parcel_locker|@category_post": "4Paketstation|4Paketabholstation|4Paket-SB|4Paket-Versandstation|4Packstation|U+1F4E6", "shop-outpost": "Abholpunkt", "amenity-vending_machine-fuel|@category_fuel": "Zapfsäule|Tankautomat", "building-garage": "3Garage", -"highway-rest_area|highway-services": "4Rastplatz|4Raststätte", +"highway-rest_area|highway-services": "4Rastplatz|4Raststätte|4Raststation|4Rasthaus|5Autobahnraststätte|5Autobahnraststation|5Autohof|U+26FD", "man_made-tower|man_made-flare": "Hochhaus|Turm", "shop-bookmaker|@gambling": "5Buchmacher|3Wettbüro", "shop-seafood|@category_food|@shop": "Fischhändler|5Fischmarkt|Fisch|Meeresfrüchte|Schalentier", @@ -390,7 +390,7 @@ "sport-climbing": "4Kletterzentrum|4Kletterhalle|U+1F9D7", "sport-yoga": "Yoga Studio", "tourism-apartment|@category_hotel": "4Ferienwohnung", -"leisure-resort|@category_hotel": "Resort|4Ferienhotel", +"leisure-resort|@category_hotel": "4Resort|4Ferienhotel|4Ferienresort|5Center Parcs", "amenity-biergarten|@category_eat|@category_nightlife": "4Biergarten", "amenity-driving_school": "4Fahrschule", "amenity-music_school": "4Musikschule|U+1F3EB|U+1F3BC", @@ -419,7 +419,7 @@ "shop-motorcycle_repair": "Motorradwerkstatt", "shop-newsagent": "4Zeitungskiosk|Zeitungsstand", "shop-pawnbroker": "5Pfandleihe", -"shop-stationery|@shop": "7Schreibwarenladen", +"shop-stationery|@shop": "5Schreibwarenladen|5Schreibwarengeschäft|3Bürobedarf|3Büroartikel|5Schreibartikel", "shop-tattoo": "4Tattoo-Studio", "shop-variety_store|@category_shopping|@shop": "5Billigladen|6Niedrigpreisgeschäft|4 1-Euro-Laden|4Kruschladen|5Haushaltswaren", "shop-video|@shop": "4Videoshop|4Videothek", @@ -442,12 +442,12 @@ "shop-money_lender": "4Geldverleiher|4Geldverleih", "shop-music|@shop": "5Musikgeschäft|5Plattenladen", "shop-musical_instrument|@shop": "5Musikinstrumenteladen|5Musikhaus", -"shop-tea|@shop": "3Teegeschäft", +"shop-tea|@shop": "3Teegeschäft|2Tee", "shop-antiques|@category_shopping|@shop|@category_secondhand": "5Antiquitäten", "shop-art|@category_shopping|@shop": "5Kunstgeschäft", "shop-baby_goods|@category_children|@shop": "4Kinderladen|4Babybedarf", "shop-bag|@category_shopping|@shop": "5Taschen Shop", -"shop-cheese|@category_food|@shop": "3Käseladen", +"shop-cheese|@category_food|@shop": "3Käse-Fachgeschäft|3Käseladen|3Käse|U+1F9C0", "shop-dairy|@category_food|@shop": "5Milchprodukte", "shop-electrical|@shop": "5Elektrogeschäft", "shop-fishing|@shop": "5Angelgeschäft|Angelladen", @@ -455,19 +455,19 @@ "shop-lottery|@gambling": "Lotteriescheine", "shop-medical_supply|@shop": "4Sanitätshaus|4Medizinische Versorgung|5Heilbehelfe", "shop-nutrition_supplements|@shop": "6Nahrungsergänzungsmittel", -"shop-paint|@shop": "Farben", +"shop-paint|@shop": "3Farbengeschäft|3Farben|3Lacke|3Malerbedarf", "shop-perfumery|@category_shopping|@shop": "4Parfümerie", "shop-sewing|@shop": "3Nähbedarf|3Nähzubehör|4Stoffe|5Kurzwaren|5Schneiderbedarf", "shop-storage_rental": "5Lagervermietung|6Speichermiete", "shop-tobacco|@shop": "5Tabakwarengeschäft|Tabak|4Trafik", "shop-trade|@shop": "Baustoffhandel|Handelsbedarf", "shop-watches|@category_shopping|@shop": "Uhrengeschäft|Uhren", -"shop-wholesale|@shop": "5Großhandelsgeschäft", +"shop-wholesale|@shop": "4Großhandelsgeschäft|4Großhandel|4Großmarkt", "leisure-track": "Laufbahn", "leisure-bandstand": "6Musikpavillon|8Konzertpavillon|Konzertmuschel|Musikmuschel|Kurpavillon|Kurmuschel", "power-plant": "Kraftwerk", "power-generator-wind": "Windgenerator|Windrad|Windkraftanlage", -"shop-auction|@category_secondhand": "Auktion", +"shop-auction|@category_secondhand": "3Auktion|3Auktionshaus|4Versteigerung", "shop-collector|@category_shopping|@category_secondhand": "Sammlerartikel|Sammlerstücke", "man_made-cairn": "Steinmännchen", "wheelchair-yes": "4Rollstuhl|6Vollständiger Zugang für Rollstühle|4Barrierefreiheit", @@ -493,30 +493,30 @@ "shop-craft|@shop": "4Künstlerbedarf", "shop-pasta|@shop": "Nudelgeschäft", "amenity-luggage_locker": "4Gepäckschließfach|4Kofferschließfach|4Schließfach", -"amenity-studio": "4Medienstudio|Studio|5Radiostudio|5Fernsehstudio", +"amenity-studio": "4Medienstudio|3Studio|5Radiostudio|5Fernsehstudio", "shop-cannabis|@shop": "4Cannabis|4Hanfladen|2CBD", "man_made-cross": "Kreuz", "leisure-dance|@category_entertainment": "4Tanz|Tanzschule", "leisure-firepit": "5Feuerstelle", "amenity-love_hotel": "4Liebes Hotel|3Sex Hotel|4Hotel für Erwachsene", -"leisure-hackerspace": "4Hackspace|4Hackerspace|4Hacker Space|4Hacklab|U+1F913|U+1F5A5|U+1F4BB", +"leisure-hackerspace": "4Hackspace|4Hackerspace|4Hacker Space|4Hacklab|5Makerspace|U+1F913|U+1F5A5|U+1F4BB", "natural-peak|@mountain": "Gipfel", "man_made-crane": "Stationärer Kran", "amenity-food_court": "4Gastronomiebereich", "amenity-animal_shelter": "4Tierheim", "recycling-cans|@category_recycling": "4Recycling von Dosen|4Dosenrecycling|4Aluminiumdosen Recycling|3Blechdosen", "recycling-shoes|@category_recycling": "4Recycling von Schuhen|Schuh Recycling|Schuhe spenden|Schuhe", -"recycling-green_waste|@category_recycling": "4Recycling von Gartenabfällen|5Organisches Müll Recycling|5Gartenabfälle", +"recycling-green_waste|@category_recycling": "3Recycling von Gartenabfällen|4Organisches Müll Recycling|5Gartenabfälle|3Biomüll|3Kompost", "recycling-cartons|@category_recycling": "4Recycling von Getränkekartons|5Karton Recycling|5Getränkekartons", "highway-elevator": "Fahrstuhl|Aufzug", "office-security": "4Sicherheitsdienst", -"recycling-cardboard|@category_recycling": "9Recycling von Karton|9Recycling von Pappe|Kartonrecycling|Pappenrecycling|Kartonmüll|Pappenmüll|Karton|Pappe|Pappkarton|Kartonpappe", -"natural-saddle|mountain_pass": "4Sattel|4Bergsattel|Bergpass|Pass|Gebirgspass", -"man_made-chimney": "Schornstein", +"recycling-cardboard|@category_recycling": "3Recycling von Karton|3Recycling von Pappe|3Kartonrecycling|3Pappenrecycling|3Kartonmüll|3Pappenmüll|3Karton|3Pappe|3Pappkarton|3Kartonpappe|3Kartonabfall|3Recycling", +"natural-saddle|mountain_pass": "3Sattel|4Bergsattel|4Bergpass|3Pass|3Gebirgspass", +"man_made-chimney": "4Schornstein|4Fabrikschornstein", "attraction-amusement_ride|attraction-carousel|attraction-roller_coaster|attraction-maze|attraction-historic|attraction-big_wheel|attraction-bumper_car|@category_children": "4Attraktion|4Labyrinth", "building-guardhouse": "4Wache", "shop-lighting|@shop": "Leuchtmittel|Lampen|Leuchte", -"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Autoladestation|5Autoladegerät|Ladestation", +"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "4Autoladestation|5Autoladegerät|4Ladestation|4Ladegerät|U+1F50C|U+1FAAB|U+1F50B", "amenity-mobile_money_agent": "6Mobile Money Vertretung|Mobile Money|Mobiles Geld", "man_made-telescope|man_made-telescope-optical|man_made-telescope-radio|man_made-telescope-gamma": "4Teleskop", "amenity-sailing_school": "5Segelschule|5Bootsschule|Bootsfahrschule", @@ -524,14 +524,14 @@ "amenity-prep_school": "5Nachhilfeschule|Nachhilfe|Testvorbereitung", "shop-beauty-day_spa": "5Tages-Spa|6Tagesspa|Spa|Wellness", "leisure-indoor_play": "3Indoor-Spielplatz", -"shop-telecommunication|@shop": "5Telekommunikationsgeschäft|Telekommunikation", +"shop-telecommunication|@shop": "5Telekommunikationsgeschäft|5Telekommunikation", "social_facility-soup_kitchen": "4Suppenküche|Essen", "amenity-boat_rental": "4Bootsverleih|Boote|4Verleih", "amenity-car_pooling|@category_parking": "Fahrgemeinschaften", "man_made-observatory": "4Observatorium", "amenity-payment_centre": "Zahlungszentrum", -"social_facility-food_bank": "Tafel|Lebensmitteltafel|Essen|Freier Kühlschrank", -"amenity-food_sharing": "Food Sharing|Essen|Spenden", +"social_facility-food_bank": "3Tafel|5Lebensmitteltafel|3Essen", +"amenity-food_sharing": "3Food Sharing|3Essen|3Essensspende", "amenity-give_box": "Spendenbox|spenden", -"amenity-hydrant": "5Hydrant|5Wasserhydrant|4Nutzwasser" +"amenity-hydrant": "5Hydrant|5Wasserhydrant|4Nutzwasser|4Bewässerungshydrant|4Reinigungshydrant|4Zapfstelle" } diff --git a/data/countries-strings/de.json/localize.json b/data/countries-strings/de.json/localize.json index 0256d686d..2dc0de06b 100644 --- a/data/countries-strings/de.json/localize.json +++ b/data/countries-strings/de.json/localize.json @@ -68,8 +68,8 @@ "Bermuda":"Bermuda", "Bhutan":"Bhutan", "Bolivia":"Bolivien", -"Bolivia_North":"Bolivien - Norden", -"Bolivia_South":"Bolivien - Süden", +"Bolivia_North":"Bolivien – Norden", +"Bolivia_South":"Bolivien – Süden", "Bosnia and Herzegovina":"Bosnien und Herzegowina", "Bosnia and Herzegovina_Brcko district of Bosnia and Herzegowina":"Distrikt Brčko", "Bosnia and Herzegovina_Entity Federation of Bosnia and Herzegovina":"Föderation Bosnien und Herzegowina", @@ -1201,14 +1201,14 @@ "Austria_Upper Austria_Wels":"Oberösterreich — Wels", "Brazil_Goias_Brasilia":"Goiás — Brasília", "Brazil_Goias_North":"Goiás — Norden", -"Brazil_North Region_East":"Norden — Osten", -"Brazil_North Region_West":"Norden — Westen", -"Brazil_Northeast Region_East":"Nordosten — Osten", -"Brazil_Northeast Region_West":"Nordosten — Westen", +"Brazil_North Region_East":"Região Norte do Brasil — Osten", +"Brazil_North Region_West":"Região Norte do Brasil — Westen", +"Brazil_Northeast Region_East":"Região Nordeste do Brasil — Osten", +"Brazil_Northeast Region_West":"Região Nordeste do Brasil — Westen", "Brazil_Parana_East":"Paraná — Osten", "Brazil_Parana_West":"Paraná — Westen", -"Brazil_South Region_East":"Süden — Osten", -"Brazil_South Region_West":"Süden — Westen", +"Brazil_South Region_East":"Südliches Brasilien — Osten", +"Brazil_South Region_West":"Südliches Brasilien — Westen", "Bulgaria_East":"Bulgarien — Osten", "Bulgaria_West":"Bulgarien — Westen", "Chile_Central":"Chile — Mitte", @@ -1343,16 +1343,16 @@ "US_Texas_Victoria":"Victoria", "US_Virginia_Norfolk":"Norfolk", "Abkhazia Description":"Pizunda, Suchum", -"Afghanistan Description":"Kabul, Kandahar", -"Albania Description":"Tirana, Skutari", +"Afghanistan Description":"Kabul, Kandahar, Tokzar", +"Albania Description":"Tirana, Kavaje, Shkoder", "Algeria_Central Description":"Batna, Djelfa, Biskra", "Algeria_Coast Description":"Algier, Oran, Constantine", "Andorra Description":"Andorra la Vella, La Massana, Ordino", -"Angola Description":"Luanda", +"Angola Description":"Luanda, Lobito, Namibe", "Anguilla Description":"The Valley, George Hill, Stoney Ground", "Antarctica Description":"McMurdo-Station, Chilenische Forschungsstation „Villa Las Estrellas“, Rocky Cove", "Antigua and Barbuda Description":"St. John's, English Harbour, Freetown", -"Argentina_Buenos Aires_Buenos Aires Description":"Buenos Aires", +"Argentina_Buenos Aires_Buenos Aires Description":"Buenos Aires, José C. Paz, González Catán", "Argentina_Buenos Aires_North Description":"Dolores, Pinamar, Villa Gesell", "Argentina_Buenos Aires_South Description":"Bahía Blanca, Miramar, Tandil", "Argentina_Cuyo Description":"San Juan, San Rafael, San Luis", @@ -1361,7 +1361,7 @@ "Argentina_Pampas Description":"Córdoba, Santa Rosa, Río Cuarto", "Argentina_Patagonia Description":"Cutral Co, Viedma, Comodoro Rivadavia", "Argentina_Santa Fe Description":"Rosario, Santa Fe, Las Parejas", -"Armenia Description":"Eriwan, Aschtarak, Gjumri", +"Armenia Description":"Jerewan, Aschtarak, Gjumri", "Australia_Brisbane Description":"Brisbane, Redcliffe, Gold Coast", "Australia_Melbourne Description":"Melbourne, Geelong, Yering", "Australia_New South Wales Description":"Barham, Tuncurry, Tocumwal", @@ -1383,125 +1383,125 @@ "Austria_Upper Austria_Linz Description":"Linz, Steyr, Ansfelden", "Austria_Upper Austria_Wels Description":"Attnang-Puchheim, Wels, Schwanenstadt", "Austria_Vorarlberg Description":"Dornbirn, Feldkirch, Bregenz", -"Azerbaijan Description":"Baku, Gandscha", -"Bahrain Description":"Manama", -"Bangladesh Description":"Dhaka", -"Barbados Description":"Bridgetown", -"Belarus_Brest Region Description":"Brest, Pinsk, Baranawitschy", +"Azerbaijan Description":"Baku, Ganja, Sumgayit", +"Bahrain Description":"Al-Muharraq, Manama, Riffa", +"Bangladesh Description":"Comilla, Dhaka, Sylhet", +"Barbados Description":"Bridgetown, Oistins, Speightstown", +"Belarus_Brest Region Description":"Baranawitschy, Brest, Pinsk", "Belarus_Homiel Region Description":"Homel, Masyr, Schlobin", -"Belarus_Hrodna Region Description":"Hrodna, Lida", -"Belarus_Maglieu Region Description":"Mahiljou, Babrujsk", +"Belarus_Hrodna Region Description":"Hrodna, Lida, Vawkavysk", +"Belarus_Maglieu Region Description":"Babrujsk, Čerykaŭ, Mahiljou", "Belarus_Minsk Region Description":"Minsk, Baryssau, Soligorsk", "Belarus_Vitebsk Region Description":"Wizebsk, Orscha, Nawapolazk", -"Belgium_Antwerp Description":"Antwerpen, Zwijndrecht, Berchem", -"Belgium_East Flanders Description":"Gent, Deinze, Sint-Martens-Latem", -"Belgium_Flemish Brabant Description":"Brussels, Schaerbeek - Schaarbeek, Anderlecht", -"Belgium_Hainaut Description":"Mons, Charleroi, La Louvière", +"Belgium_Antwerp Description":"Antwerpen, Berchem, Zwijndrecht", +"Belgium_East Flanders Description":"Deinze, Gent, Sint-Martens-Latem", +"Belgium_Flemish Brabant Description":"Anderlecht, Brüssel, Schaerbeek - Schaarbeek", +"Belgium_Hainaut Description":"Charleroi, La Louvière, Mons", "Belgium_Liege Description":"Lüttich, Seraing, Verviers", -"Belgium_Limburg Description":"Houthalen-Helchteren, Maasmechelen, Hasselt", -"Belgium_Luxembourg Description":"Arel, Bastnach", -"Belgium_Namur Description":"Namur", -"Belgium_Walloon Brabant Description":"Braine-l'Alleud, Wavre, Ottignies-Louvain-la-Neuve", -"Belgium_West Flanders Description":"Brügge", -"Belize Description":"Belmopan", -"Benin Description":"Natitingou, Abomey, Djougou", +"Belgium_Limburg Description":"Hasselt, Houthalen-Helchteren, Maasmechelen", +"Belgium_Luxembourg Description":"Arel, Bastnach, Marche-en-Famenne", +"Belgium_Namur Description":"Mettet, Namur, Saint-Marc", +"Belgium_Walloon Brabant Description":"Braine-l'Alleud, Ottignies-Louvain-la-Neuve, Wavre", +"Belgium_West Flanders Description":"Brügge, Koksijde, Nieuwpoort", +"Belize Description":"Belize-Stadt, Belmopan, Benque Viejo del Carmen", +"Benin Description":"Abomey, Djougou, Natitingou", "Bermuda Description":"St. George's, Hamilton, Somerset", -"Bhutan Description":"Thimphu", -"Bolivia_North Description":"La Paz, Santa Cruz de la Sierra", -"Bolivia_South Description":"Sucre, Cochabamba", -"Bosnia and Herzegovina_Brcko district of Bosnia and Herzegowina Description":"Brčko", -"Bosnia and Herzegovina_Entity Federation of Bosnia and Herzegovina Description":"Sarajewo, Mostar", -"Bosnia and Herzegovina_Republic of Srpska Description":"Banja Luka, Bieglin", -"Botswana Description":"Gaborone", -"Brazil_Bahia Description":"Salvador", -"Brazil_Goias_Brasilia Description":"Brasilia, Goiânia", +"Bhutan Description":"Ha, Mongar, Thimphu", +"Bolivia_North Description":"El Alto, La Paz, Santa Cruz de la Sierra", +"Bolivia_South Description":"Cochabamba, Sucre, Tupiza", +"Bosnia and Herzegovina_Brcko district of Bosnia and Herzegowina Description":"Brčko, Dubrave, Rašljani", +"Bosnia and Herzegovina_Entity Federation of Bosnia and Herzegovina Description":"Mostar, Sarajevo", +"Bosnia and Herzegovina_Republic of Srpska Description":"Banja Luka, Bieglin, Derventa", +"Botswana Description":"Gaborone, Mochudi, Tsabong", +"Brazil_Bahia Description":"Feira de Santana, Salvador, Vitória da Conquista", +"Brazil_Goias_Brasilia Description":"Aparecida de Goiânia, Brasília, Goiânia", "Brazil_Goias_North Description":"Goianésia, Jaraguá, Porangatu", -"Brazil_Mato Grosso Description":"Cuiabá", -"Brazil_Mato Grosso Do Sul Description":"Campo Grande", -"Brazil_North Region_East Description":"Belém, Macapá", +"Brazil_Mato Grosso Description":"Cuiabá, Rondonopolis, Várzea Grande", +"Brazil_Mato Grosso Do Sul Description":"Campo Grande, Dourados, Três Lagoas", +"Brazil_North Region_East Description":"Ananindeua, Belém, Macapá", "Brazil_North Region_West Description":"Manaus, Porto Velho, Rio Branco", -"Brazil_Northeast Region_East Description":"Recife, Maceió", +"Brazil_Northeast Region_East Description":"Jaboatão dos Guararapes, Maceió, Recife", "Brazil_Northeast Region_West Description":"Fortaleza, São Luís, Teresina", -"Brazil_Paraiba Description":"João Pessoa", -"Brazil_Parana_East Description":"Curitiba", -"Brazil_Parana_West Description":"Londrina, Maringa, Cascavel", -"Brazil_Rio Grande do Norte Description":"Natal", -"Brazil_Santa Catarina Description":"Florianópolis", -"Brazil_South Region_East Description":"Porto Alegre", -"Brazil_South Region_West Description":"Santa Maria, Passo Fundo, Uruguaiana", -"Brazil_Southeast Region_Espirito Santo Description":"Serra, Vila Velha, Cariacica", -"Brazil_Southeast Region_Minas Gerais_Contagem Description":"Belo Horizonte", -"Brazil_Southeast Region_Minas Gerais_North Description":"Uberlandia, Montes Claros, Uberaba", -"Brazil_Southeast Region_Rio de Janeiro Description":"Rio de Janeiro, São Gonçalo, Duque de Caxias", -"Brazil_Southeast Region_Sao Paulo_Campinas Description":"Campinas, Sorocaba, Jundiaí", -"Brazil_Southeast Region_Sao Paulo_City Description":"São Paulo", -"Brazil_Southeast Region_Sao Paulo_West Description":"Ribeirão Preto, São José do Rio Preto, Franca", +"Brazil_Paraiba Description":"Campina Grande, João Pessoa, Santa Rita", +"Brazil_Parana_East Description":"Curitiba, Ponta Grossa, São José dos Pinhais", +"Brazil_Parana_West Description":"Cascavel, Londrina, Maringa", +"Brazil_Rio Grande do Norte Description":"Mossoró, Natal, Parnamirim", +"Brazil_Santa Catarina Description":"Blumenau, Florianópolis, Joinville", +"Brazil_South Region_East Description":"Canoas, Porto Alegre, Caxias do Sul", +"Brazil_South Region_West Description":"Passo Fundo, Santa Maria, Uruguaiana", +"Brazil_Southeast Region_Espirito Santo Description":"Cariacica, Serra, Vila Velha", +"Brazil_Southeast Region_Minas Gerais_Contagem Description":"Belo Horizonte, Contagem, Juiz de Fora", +"Brazil_Southeast Region_Minas Gerais_North Description":"Montes Claros, Uberaba, Uberlandia", +"Brazil_Southeast Region_Rio de Janeiro Description":"Duque de Caxias, Rio de Janeiro, São Gonçalo", +"Brazil_Southeast Region_Sao Paulo_Campinas Description":"Campinas, Jundiaí, Sorocaba", +"Brazil_Southeast Region_Sao Paulo_City Description":"Guarulhos, São Bernardo do Campo, São Paulo", +"Brazil_Southeast Region_Sao Paulo_West Description":"Franca, Ribeirão Preto, São José do Rio Preto", "British Indian Ocean Territory Description":"Seabreeze Village, Camp Justice", "British Virgin Islands Description":"Spanish Town, Road Town, East End", -"Brunei Description":"Bandar Seri Begawan", -"Bulgaria_East Description":"Warna, Burgas, Dobritsch", -"Bulgaria_West Description":"Sofia, Plowdiw, Plewen", -"Burkina Faso Description":"Ouagadougou", -"Burundi Description":"Bujumbura", -"Cambodia Description":"Phnom Penh", -"Cameroon_Central Description":"Jaunde", -"Cameroon_West Description":"Duala", +"Brunei Description":"Bandar Seri Begawan, Muara, Seria", +"Bulgaria_East Description":"Burgas, Dobritsch, Warna", +"Bulgaria_West Description":"Sofia, Plewen, Plowdiw", +"Burkina Faso Description":"Bobo-Dioulasso, Ouagadougou", +"Burundi Description":"Bubanza, Bujumbura, Cibitoke", +"Cambodia Description":"Kampong Speu, Phnom Penh, Takeo", +"Cameroon_Central Description":"Jaunde, Kousséri, Kribi", +"Cameroon_West Description":"Bamenda, Buea, Duala", "Canada_Alberta_Edmonton Description":"Edmonton, Lacombe, Wetaskiwin", -"Canada_Alberta_North Description":"Grande Prairie, Peace River, Fort McMurray", +"Canada_Alberta_North Description":"Fort McMurray, Grande Prairie, Peace River", "Canada_Alberta_South Description":"Calgary, Chestermere, Lethbridge", -"Canada_British Columbia_Central Description":"Williams Lake, Quesnel, Prince George", -"Canada_British Columbia_Far_North Description":"East Pine, Tumbler Ridge, Hudson's Hope", -"Canada_British Columbia_Islands Description":"Saanich, Nanaimo, Victoria", -"Canada_British Columbia_North Description":"Prince Rupert, Terrace, Kitimat", -"Canada_British Columbia_Northeast Description":"Muskwa, Fort Nelson, Fontas", +"Canada_British Columbia_Central Description":"Prince George, Quesnel, Williams Lake", +"Canada_British Columbia_Far_North Description":"East Pine, Hudson's Hope, Tumbler Ridge", +"Canada_British Columbia_Islands Description":"Nanaimo, Saanich, Victoria", +"Canada_British Columbia_North Description":"Kitimat, Prince Rupert, Terrace", +"Canada_British Columbia_Northeast Description":"Fontas, Fort Nelson, Muskwa", "Canada_British Columbia_Southeast Description":"Merritt, Revelstoke, Vernon", -"Canada_British Columbia_Vancouver Description":"Vancouver, Surrey, Powell River", -"Canada_Labrador_North Description":"Nain, Postville, Hopedale", -"Canada_Labrador_South Description":"L'Anse-au-Clair, L'Anse-au-Clair, Forteau", -"Canada_Labrador_West Description":"Churchill Falls, Happy Valley-Goose Bay, Happy Valley - Goose Bay", -"Canada_Manitoba_Northeast Description":"Caribou, Manigotagan, English Brook", -"Canada_Manitoba_Northwest Description":"Young Point, Cormorant, Pickerel Narrows", -"Canada_Manitoba_South Description":"Foxwarren, Shoal Lake, Brandon", +"Canada_British Columbia_Vancouver Description":"Powell River, Surrey, Vancouver", +"Canada_Labrador_North Description":"Hopedale, Nain, Postville", +"Canada_Labrador_South Description":"Forteau, L'Anse-au-Clair", +"Canada_Labrador_West Description":"Churchill Falls, Happy Valley-Goose Bay", +"Canada_Manitoba_Northeast Description":"Caribou, English Brook, Manigotagan", +"Canada_Manitoba_Northwest Description":"Cormorant, Pickerel Narrows, Young Point", +"Canada_Manitoba_South Description":"Brandon, Foxwarren, Shoal Lake", "Canada_Manitoba_Winnipeg Description":"Winnipeg, Portage La Prairie, Killarney", -"Canada_New Brunswick Description":"Edmundston, Fredericton, Campbellton", -"Canada_Newfoundland_East Description":"Mount Pearl, St John's, Badger", -"Canada_Newfoundland_North Description":"St. Anthony, Kippens, Gallants", +"Canada_New Brunswick Description":"Campbellton, Edmundston, Fredericton", +"Canada_Newfoundland_East Description":"Badger, Mount Pearl, St John's", +"Canada_Newfoundland_North Description":"Gallants, Kippens, St. Anthony", "Canada_Newfoundland_South Description":"Fortune, Lamaline, Seal Cove", -"Canada_Newfoundland_West Description":"Codroy Valley, Port Aux Basques, Margaree", -"Canada_Northwest Territories_East Description":"Łutselk’e, Rocher River, Fork Lake", -"Canada_Northwest Territories_North Description":"Norman Wells, Inuvik, Fort Simpson", -"Canada_Northwest Territories_Yellowknife Description":"Yellowknife, Hay River, Fort Smith", -"Canada_Nova Scotia_Halifax Description":"Halifax, Bedford, Yarmouth", -"Canada_Nova Scotia_Sydney Description":"Sydney, Inverness, Westville", -"Canada_Nunavut_North Description":"CFB Alert, Grise Fiord, Eureka", -"Canada_Nunavut_South Description":"Repulse Bay, Arctic Bay, Naujaat", -"Canada_Ontario_Bame Description":"Barrie, Wasaga Beach, Deep River", -"Canada_Ontario_Kingston Description":"Ottawa", +"Canada_Newfoundland_West Description":"Codroy Valley, Margaree, Port Aux Basques", +"Canada_Northwest Territories_East Description":"Fork Lake, Łutselk’e, Rocher River", +"Canada_Northwest Territories_North Description":"Fort Simpson, Inuvik, Norman Wells", +"Canada_Northwest Territories_Yellowknife Description":"Fort Smith, Hay River, Yellowknife", +"Canada_Nova Scotia_Halifax Description":"Bedford, Halifax, Yarmouth", +"Canada_Nova Scotia_Sydney Description":"Inverness, Sydney, Westville", +"Canada_Nunavut_North Description":"CFB Alert, Eureka, Grise Fiord", +"Canada_Nunavut_South Description":"Arctic Bay, Naujaat, Repulse Bay", +"Canada_Ontario_Bame Description":"Barrie, Deep River, Wasaga Beach", +"Canada_Ontario_Kingston Description":"Belleville, Ottawa, Peterborough", "Canada_Ontario_London Description":"London, Welland, Woodstock", -"Canada_Ontario_Northeastern_Central Description":"Timmins, Timmins, Iroquois Falls", -"Canada_Ontario_Northeastern_North Description":"Moose Factory, Moosonee, Kashechewan", -"Canada_Ontario_Northeastern_S Description":"Sudbury, Onaping, Dowling", -"Canada_Ontario_Northeastern_SE Description":"Englehart, Temagami, Mattawa", -"Canada_Ontario_Northeastern_SW Description":"Sault Ste. Marie, Sault Ste. Marie, Bruce Mines", -"Canada_Ontario_Northeastern_W Description":"Wawa, Dubreuilville, White River", -"Canada_Ontario_Northern Description":"Thunder Bay, Geraldton, Longlac", -"Canada_Ontario_Northwestern Description":"Pikangikum, Peawanuck, Sandy Lake", +"Canada_Ontario_Northeastern_Central Description":"Iroquois Falls, Timmins", +"Canada_Ontario_Northeastern_North Description":"Kashechewan, Moose Factory, Moosonee", +"Canada_Ontario_Northeastern_S Description":"Dowling, Onaping, Sudbury", +"Canada_Ontario_Northeastern_SE Description":"Englehart, Mattawa, Temagami", +"Canada_Ontario_Northeastern_SW Description":"Bruce Mines, Sault Ste. Marie", +"Canada_Ontario_Northeastern_W Description":"Dubreuilville, Wawa, White River", +"Canada_Ontario_Northern Description":"Geraldton, Longlac, Thunder Bay", +"Canada_Ontario_Northwestern Description":"Peawanuck, Pikangikum, Sandy Lake", "Canada_Ontario_Toronto Description":"Toronto, Guelph, Mississauga", -"Canada_Prince Edward Island Description":"Summerside, Charlottetown, Borden", -"Canada_Quebec_Quebec Description":"Quebec", -"Canada_Quebek_Far North Description":"Radisson, Akulivik, Inukjuak", +"Canada_Prince Edward Island Description":"Borden, Charlottetown, Summerside", +"Canada_Quebec_Quebec Description":"Drummondville, Quebec, Sherbrooke", +"Canada_Quebek_Far North Description":"Akulivik, Inukjuak, Radisson", "Canada_Quebek_Lachute Description":"Gatineau, Maniwaki, Mansfield-et-Pontefract", -"Canada_Quebek_Montreal Description":"Montreal, Granby, Laval", -"Canada_Quebek_North Description":"Sept-Îles, Port-Cartier, Fermont", +"Canada_Quebek_Montreal Description":"Granby, Laval, Montreal", +"Canada_Quebek_North Description":"Fermont, Port-Cartier, Sept-Îles", "Canada_Quebek_Southeast_Rimouski Description":"Gaspé, Rimouski, Saint-Pascal", "Canada_Quebek_Southeast_Saguenay Description":"Baie-Comeau, Saguenay, Saint-Félicien", "Canada_Quebek_West_Chibougamau Description":"Chapais, Chibougamau, La Tuque", -"Canada_Quebek_West_Rouyn-Noranda Description":"Rouyn-Noranda, Lebel-sur-Quévillon, Senneterre", -"Canada_Saskatchewan_North Description":"Meadow Lake, Blaine Lake, Saint Walburg", +"Canada_Quebek_West_Rouyn-Noranda Description":"Lebel-sur-Quévillon, Rouyn-Noranda, Senneterre", +"Canada_Saskatchewan_North Description":"Blaine Lake, Meadow Lake, Saint Walburg", "Canada_Saskatchewan_Regina Description":"Melfort, Melville, Regina", -"Canada_Saskatchewan_Saskatoon Description":"Saskatoon, Warman, Hague", -"Canada_Yukon_North Description":"Ross River, Mayo, Dawson City", -"Canada_Yukon_Whitehorse Description":"Watson Lake, Whitehorse, Haines Junction", +"Canada_Saskatchewan_Saskatoon Description":"Hague, Saskatoon, Warman", +"Canada_Yukon_North Description":"Dawson City, Mayo, Ross River", +"Canada_Yukon_Whitehorse Description":"Haines Junction, Watson Lake, Whitehorse", "Cape Verde Description":"Praia", "Caribisch Nederland Description":"San Nicolaas, Willemstad, Oranjestad", "Cayman Islands Description":"George Town", @@ -2172,7 +2172,7 @@ "Saint Vincent and the Grenadines Description":"Kingstown, Clifton, Ashton", "Samoa Description":"Āpia, Sālelologa, Asau", "San Marino Description":"City of San Marino, Serravalle, Borgo Maggiore", -"Sao Tome and Principe Description":"São Tomé", +"Sao Tome and Principe Description":"São Tomé, Neves, São João dos Angolares", "Saudi Arabia_North Description":"Dschidda, Mekka, Medina", "Saudi Arabia_South Description":"Riad, Dammam", "Senegal Description":"Dakar", @@ -2260,7 +2260,7 @@ "Thailand_Central Description":"Nam Som, Nakhon Ratchasima, Udon Thani", "Thailand_North Description":"Chiang Mai, Santi Suk District, Mae Ai", "Thailand_South Description":"Bangkok", -"The Bahamas Description":"Nassau", +"The Bahamas Description":"Nassau, Freeport, Tarpum Bay", "The Gambia Description":"Banjul", "Togo Description":"Lomé", "Tokelau Description":"Fakaofo", @@ -2492,8 +2492,8 @@ "Palestine Region Short":"Palästina", "United Kingdom Short":"UK", "Czech Republic Short":"Tschechien", -"Argentina_Buenos Aires_North Short":"Buenos Aires", -"Argentina_Buenos Aires_South Short":"Buenos Aires", +"Argentina_Buenos Aires_North Short":"Buenos Aires – Norden", +"Argentina_Buenos Aires_South Short":"Buenos Aires – Süden", "Austria_Lower Austria_West Short":"Niederösterreich", "Brazil_Southeast Region_Minas Gerais_North Short":"Minas Gerais", "Brazil_Southeast Region_Sao Paulo_West Short":"São Paulo", @@ -2521,14 +2521,14 @@ "UK_Scotland_North Short":"Schottland", "UK_Scotland_South Short":"Schottland", "Brazil_Goias_North Short":"Goiás", -"Brazil_North Region_East Short":"Norden", -"Brazil_North Region_West Short":"Norden", -"Brazil_Northeast Region_East Short":"Nordosten", -"Brazil_Northeast Region_West Short":"Nordosten", +"Brazil_North Region_East Short":"Nordregion – Osten", +"Brazil_North Region_West Short":"Nordregion – Westen", +"Brazil_Northeast Region_East Short":"Nordostregion – Osten", +"Brazil_Northeast Region_West Short":"Nordostregion – Westen", "Brazil_Parana_East Short":"Paraná", "Brazil_Parana_West Short":"Paraná", -"Brazil_South Region_East Short":"Südosten", -"Brazil_South Region_West Short":"Südwesten", +"Brazil_South Region_East Short":"Südregion – Osten", +"Brazil_South Region_West Short":"Südregion – Westen", "Congo-Kinshasa Short":"Kongo", "Finland_Eastern Finland_North Short":"Ostfinnland", "Finland_Eastern Finland_South Short":"Ostfinnland", diff --git a/data/sound-strings/de.json/localize.json b/data/sound-strings/de.json/localize.json index 69019b6de..41f66a2ab 100644 --- a/data/sound-strings/de.json/localize.json +++ b/data/sound-strings/de.json/localize.json @@ -1,5 +1,5 @@ { -"make_a_slight_right_turn":"Halten Sie sich rechts.", +"make_a_slight_right_turn":"Halte dich rechts.", "make_a_slight_right_turn_street":"NULL", "make_a_slight_right_turn_street_verb":"NULL", "make_a_right_turn":"Rechts abbiegen.", @@ -12,24 +12,24 @@ "leave_the_roundabout":"Verlasse den Kreisverkehr.", "leave_the_roundabout_street":"NULL", "leave_the_roundabout_street_verb":"NULL", -"make_a_slight_left_turn":"Halten Sie sich links.", +"make_a_slight_left_turn":"Halte dich links.", "make_a_slight_left_turn_street":"NULL", "make_a_slight_left_turn_street_verb":"NULL", "make_a_left_turn":"Links abbiegen.", "make_a_left_turn_street":"NULL", "make_a_sharp_left_turn":"Scharf links.", "make_a_sharp_left_turn_street":"NULL", -"make_a_u_turn":"Wenden Sie.", +"make_a_u_turn":"Bitte wende.", "make_a_u_turn_street":"NULL", "make_a_u_turn_street_verb":"NULL", -"go_straight":"Fahren Sie geradeaus.", -"exit":"Nehmen Sie die Ausfahrt.", +"go_straight":"Fahre geradeaus.", +"exit":"Nehme die Ausfahrt.", "onto":"auf", -"take_exit_number":"Nehmen Sie die Ausfahrt auf", +"take_exit_number":"Nehme die Ausfahrt auf", "take_exit_number_street_verb":"NULL", "route_recalculating":"Neuberechnung der Route", -"destination":"erreichen Sie ihr Ziel.", -"you_have_reached_the_destination":"Sie haben Ihr Ziel erreicht.", +"destination":"erreichst du dein Ziel.", +"you_have_reached_the_destination":"Du hast dein Ziel erreicht.", "in_50_meters":"In fünfzig Metern", "in_100_meters":"In einhundert Metern", "in_200_meters":"In zweihundert Metern", @@ -49,37 +49,37 @@ "in_3_kilometers":"In drei Kilometern", "then":"Danach", "dist_direction_onto_street":"%1$s %2$s %3$s %4$s", -"take_the_1_exit":"Nehmen Sie die erste Ausfahrt.", +"take_the_1_exit":"Nehme die erste Ausfahrt.", "take_the_1_exit_street":"NULL", "take_the_1_exit_street_verb":"NULL", -"take_the_2_exit":"Nehmen Sie die zweite Ausfahrt.", +"take_the_2_exit":"Nehme die zweite Ausfahrt.", "take_the_2_exit_street":"NULL", "take_the_2_exit_street_verb":"NULL", -"take_the_3_exit":"Nehmen Sie die dritte Ausfahrt.", +"take_the_3_exit":"Nehme die dritte Ausfahrt.", "take_the_3_exit_street":"NULL", "take_the_3_exit_street_verb":"NULL", -"take_the_4_exit":"Nehmen Sie die vierte Ausfahrt.", +"take_the_4_exit":"Nehme die vierte Ausfahrt.", "take_the_4_exit_street":"NULL", "take_the_4_exit_street_verb":"NULL", -"take_the_5_exit":"Nehmen Sie die fünfte Ausfahrt.", +"take_the_5_exit":"Nehme die fünfte Ausfahrt.", "take_the_5_exit_street":"NULL", "take_the_5_exit_street_verb":"NULL", -"take_the_6_exit":"Nehmen Sie die sechste Ausfahrt.", +"take_the_6_exit":"Nehme die sechste Ausfahrt.", "take_the_6_exit_street":"NULL", "take_the_6_exit_street_verb":"NULL", -"take_the_7_exit":"Nehmen Sie die siebte Ausfahrt.", +"take_the_7_exit":"Nehme die siebte Ausfahrt.", "take_the_7_exit_street":"NULL", "take_the_7_exit_street_verb":"NULL", -"take_the_8_exit":"Nehmen Sie die achte Ausfahrt.", +"take_the_8_exit":"Nehme die achte Ausfahrt.", "take_the_8_exit_street":"NULL", "take_the_8_exit_street_verb":"NULL", -"take_the_9_exit":"Nehmen Sie die neunte Ausfahrt.", +"take_the_9_exit":"Nehme die neunte Ausfahrt.", "take_the_9_exit_street":"NULL", "take_the_9_exit_street_verb":"NULL", -"take_the_10_exit":"Nehmen Sie die zehnte Ausfahrt.", +"take_the_10_exit":"Nehme die zehnte Ausfahrt.", "take_the_10_exit_street":"NULL", "take_the_10_exit_street_verb":"NULL", -"take_the_11_exit":"Nehmen Sie die elfte Ausfahrt.", +"take_the_11_exit":"Nehme die elfte Ausfahrt.", "take_the_11_exit_street":"NULL", "take_the_11_exit_street_verb":"NULL", "in_50_feet":"In fünfzig Fuß", diff --git a/data/sound-strings/lt.json/localize.json b/data/sound-strings/lt.json/localize.json index 1ea1f0b6c..a068fc606 100644 --- a/data/sound-strings/lt.json/localize.json +++ b/data/sound-strings/lt.json/localize.json @@ -23,9 +23,9 @@ "make_a_u_turn_street":"NULL", "make_a_u_turn_street_verb":"NULL", "go_straight":"Važiuokite tiesiai.", -"exit":"Išvažiuokite.", +"exit":"Išsukite į nuovažą.", "onto":"į", -"take_exit_number":"Išvažiuokite į nuovažą numeris", +"take_exit_number":"Išsukite į nuovažą numeris", "take_exit_number_street_verb":"NULL", "route_recalculating":"Maršrutas perskaičiuojamas", "destination":"Pasieksite kelionės tikslą.", diff --git a/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.strings index d83870812..5d34798ea 100644 --- a/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.strings +++ b/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.strings @@ -14,7 +14,7 @@ "about_proposition_2" = "গোপনীয়তা বান্ধব এবং বিজ্ঞাপন মুক্ত"; "osm_mapdata" = "OpenStreetMap থেকে মানচিত্রের তথ্য"; "about_proposition_1" = "অফলাইন, দ্রুত এবং সহজেই ব্যবহারযোগ্য"; -"follow_us" = "আমাদের অনুসরণ করুন এবং যোগাযোগ করুন"; +"follow_us" = "আমাদের সাথে সংযোগ করুন"; "social_email" = "ই-মেইল"; "copy_to_clipboard" = "ক্লিপবোর্ডে অনুলিপি"; "version %@ (%@)" = "সংস্করণ %@ (%@)"; @@ -45,7 +45,7 @@ "operator" = "Operator: %@"; "mi" = "mi"; "hour" = "h"; -"error_enter_correct_phone" = "Enter a valid phone number"; +"error_enter_correct_phone" = "সঠিক ফোন নম্বর দিন"; "button_layer_subway" = "Subway"; "capacity" = "Capacity: %@"; "ok" = "OK"; @@ -58,10 +58,10 @@ "cancel_download" = "ডাউনলোড বাতিল করুন"; "leave_a_review" = "Leave a Review"; "downloading" = "ডাউনলোডরত…"; -"delete" = "Delete"; +"delete" = "মুছুন"; "miles" = "মাইল"; "cancel" = "বাতিল"; -"download_maps" = "Download Maps"; +"download_maps" = "মানচিত্র ডাউনলোড করুন"; "category_toilet" = "শৌচালয়"; "add_new_set" = "নতুন তালিকা বানান"; "category_shopping" = "কেনাকাটা"; @@ -143,7 +143,7 @@ "purple" = "বেগুনি"; "blue" = "Blue"; "mobile_data" = "Mobile Internet"; -"core_entrance" = "Entrance"; +"core_entrance" = "প্রবেশ"; "bookmarks_import" = "Import Bookmarks and Tracks"; "bookmark_lists_hide_all" = "Hide all"; "bookmark_lists" = "Lists"; @@ -174,7 +174,7 @@ "trip_finished" = "You have arrived!"; "dialog_routing_select_closer_end" = "Please select a destination point located closer to a road।"; "icloud_disabled_message" = "Please enable iCloud in your device's settings to use this feature।"; -"editor_more_about_osm" = "More about OpenStreetMap"; +"editor_more_about_osm" = "আরো OpenStreetMap সম্বন্ধে"; "track_recording_alert_title" = "Save into Bookmarks and Tracks?"; "tags_loading_error_subtitle" = "An error occurred while loading tags, please try again"; "dialog_routing_application_error" = "Unable to create route due to an application error।"; @@ -202,7 +202,7 @@ "placepage_personal_notes_hint" = "Personal notes (text or html)"; "start_track_recording" = "Record Track"; "dialog_routing_change_end_carplay" = "Unable to find a route to your destination. Please choose another end point"; -"placepage_add_place_button" = "Add Place to OpenStreetMap"; +"placepage_add_place_button" = "OpenStreetMap এ স্থান যোগ করুন"; "downloader_status_maps" = "মানচিত্র"; "avoid_tolls" = "Avoid tolls"; "enable_logging" = "Enable logging"; @@ -279,7 +279,7 @@ "p2p_your_location" = "আপনার অবস্থান"; "category_transport" = "যানবাহন"; "text_more_button" = "…more"; -"downloader_of" = "%1$d of %2$d"; +"downloader_of" = "%2$d এর মধ্যে %1$d"; "mobile_data_option_ask" = "Always Ask"; "follow_my_position" = "Re-center"; "download_over_mobile_message" = "This could be considerably expensive with some plans or if roaming।"; @@ -311,7 +311,7 @@ "phone" = "Phone"; "app_tip_06" = "You can help to translate our app into your language।"; "decline" = "Decline"; -"downloader_no_downloaded_maps_title" = "You haven't downloaded any maps"; +"downloader_no_downloaded_maps_title" = "আপনি কোনো মানচিত্র ডাউনলোড করেননি"; "elevation_profile_ascent" = "Ascent"; "pref_zoom_title" = "জুম করার বোতামগুলি"; "p2p_only_from_current" = "Navigation is only available from your current location।"; @@ -376,10 +376,10 @@ "download_over_mobile_header" = "Download over a cellular network connection?"; "measurement_units" = "মাপের একক"; "orange" = "কমলা"; -"error_enter_correct_web" = "Enter a valid web address"; +"error_enter_correct_web" = "সঠিক ওয়েব এড্রেস দিন"; "editor_edit_place_title" = "সম্পাদনা"; "category_wifi" = "ওয়াইফাই"; -"editor_place_doesnt_exist" = "Place does not exist"; +"editor_place_doesnt_exist" = "স্থানটি অস্তিত্বই নেই"; "subway_data_unavailable" = "Subway map is unavailable"; "near_me_sorttype" = "Near me"; "pref_tts_speedcams_auto" = "Warn if speeding"; @@ -416,7 +416,7 @@ "teal" = "টিল"; "level" = "তলা"; "refresh" = "Update"; -"use_cellular_data" = "Yes"; +"use_cellular_data" = "হ্যাঁ"; "day_off_today" = "আজকে বন্ধ"; "location_services_disabled_3" = "3. Select While Using the App"; "osm_profile_register" = "Register at OpenStreetMap"; @@ -507,7 +507,7 @@ "whats_new_auto_update_title" = "Update downloaded maps"; "power_managment_setting_auto" = "When battery is low"; "recover" = "Recover"; -"km" = "km"; +"km" = "কিমি"; "search_history_title" = "খোঁজের ইতিহাস"; "placepage_delete_track_button" = "Delete Track"; "house_number" = "বিল্ডিং নম্বর"; @@ -520,13 +520,13 @@ "start_from_my_position" = "Start from"; "email_or_username" = "ইমাইল বা ইউইজারনেম"; "editor_focus_map_on_location" = "স্থান বা ব্যবসার স্থানের চিহ্নটি স্থাপন করতে মানচিত্রটি টেনে আনুন।"; -"error_enter_correct_email" = "Enter a valid email"; +"error_enter_correct_email" = "সঠিক ইমেইল দিন"; "continue_button" = "চালিয়ে যান"; "placepage_delete_bookmark_button" = "Delete Bookmark"; "placepage_call_button" = "Call"; "define_to_avoid_btn" = "Define roads to avoid"; "book_button" = "Book"; -"error_enter_correct_house_number" = "Enter a valid building number"; +"error_enter_correct_house_number" = "সঠিক বিল্ডিং নম্বর দিন"; "toll_road" = "Toll road"; "editor_edit_place_name_hint" = "স্থানের নাম"; "accept" = "Accept"; diff --git a/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.stringsdict b/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.stringsdict index 436173b2c..4932fec0d 100644 --- a/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.stringsdict +++ b/iphone/Maps/LocalizedStrings/bn.lproj/Localizable.stringsdict @@ -20,5 +20,19 @@ %dটা বুকমার্ক + bookmarks_detect_message + + value + + NSStringFormatSpecTypeKey + NSStringPluralRuleType + NSStringFormatValueTypeKey + d + one + %d টি ফাইল পাওয়া গেছে। আপনি রূপান্তরের পারে দেখতে পাবেন। + other + %d টি ফাইল পাওয়া গেছে। আপনি রূপান্তরের পারে দেখতে পাবেন। + + diff --git a/iphone/Maps/LocalizedStrings/bn.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/bn.lproj/LocalizableTypes.strings index 467e325ae..9e02443a9 100644 --- a/iphone/Maps/LocalizedStrings/bn.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/bn.lproj/LocalizableTypes.strings @@ -1,30 +1,30 @@ "type.addr_interpolation" = "ঠিকানা/ব্লক"; "type.aerialway.drag_lift" = "Drag Lift"; "type.aeroway.helipad" = "Helipad"; -"type.amenity.bank" = "Bank"; +"type.amenity.bank" = "ব্যাঙ্ক"; "type.amenity" = "Amenity"; -"type.amenity.bench" = "Bench"; +"type.amenity.bench" = "বেঞ্চ"; "type.amenity.arts_centre" = "Arts Center"; -"type.amenity.atm" = "ATM"; +"type.amenity.atm" = "এটিএম"; "type.amenity.bureau_de_change" = "Currency Exchange"; "type.amenity.bicycle_rental" = "Bicycle Rental"; "type.amenity.biergarten" = "Biergarten"; "type.amenity.car_wash" = "Car Wash"; -"type.amenity.bus_station" = "Bus Station"; +"type.amenity.bus_station" = "বাস স্টেশন"; "type.amenity.car_sharing" = "Car Sharing"; "type.amenity.car_rental" = "Car Rental"; "type.amenity.motorcycle_rental" = "Motorcycle Rental"; "type.amenity.cafe" = "Cafe"; "type.amenity.gambling" = "Gambling"; "type.amenity.charging_station.bicycle" = "Bicycle Charging Station"; -"type.amenity.courthouse" = "Courthouse"; +"type.amenity.courthouse" = "আদালত"; "type.amenity.language_school" = "Language School"; "type.office.diplomatic" = "দূতাবাস"; "type.amenity.money_transfer" = "Money Transfer"; -"type.drinking_water.yes" = "Drinking Water"; +"type.drinking_water.yes" = "পানীয় জল"; "type.amenity.music_school" = "গানের স্কুল"; "type.amenity.exhibition_centre" = "Exhibition Center"; -"type.amenity.doctors" = "Doctor"; +"type.amenity.doctors" = "ডাক্তার"; "type.amenity.grave_yard.christian" = "খ্রিস্টান কবরস্থান"; "type.amenity.ferry_terminal" = "ফেরি"; "type.amenity.ice_cream" = "আইসক্রিম"; @@ -37,7 +37,7 @@ "type.amenity.parking.lane.private" = "Private Lane Parking"; "type.amenity.parking_space.disabled" = "Disabled Parking Space"; "type.amenity.place_of_worship.taoist" = "Taoist Temple"; -"type.amenity.police" = "Police"; +"type.amenity.police" = "পুলিশ"; "type.amenity.post_box" = "Mailbox"; "type.amenity.place_of_worship.hindu" = "হিন্দু মন্দির"; "type.amenity.place_of_worship.shinto" = "Shinto Shrine"; @@ -88,7 +88,7 @@ "type.leisure.beach_resort" = "Beach Resort"; "type.man_made" = "Man Made"; "type.man_made.breakwater" = "Breakwater"; -"type.man_made.chimney" = "Chimney"; +"type.man_made.chimney" = "চিমনি"; "type.man_made.cairn" = "Cairn"; "type.man_made.cutline" = "Cutline"; "type.man_made.survey_point" = "Survey Point"; @@ -198,9 +198,9 @@ "type.piste_type.connection" = "Piste Connection"; "type.amenity.events_venue" = "Events Venue"; "type.shop.collector" = "Collectables"; -"type.self_service.yes" = "Self-service available"; +"type.self_service.yes" = "স্বয়ংসেবা আছে"; "type.self_service.only" = "Self-service only"; -"type.self_service.no" = "No self-service"; +"type.self_service.no" = "স্বয়ংসেবা নেই"; "type.landuse.religious" = "Religious Land"; "type.railway.rail.main" = "Railway"; "type.route" = "Route"; @@ -246,7 +246,7 @@ "type.highway.motorway.tunnel" = "Motorway Tunnel"; "type.railway.subway_entrance.warszawa" = "Subway Entrance"; "type.tourism.camp_site" = "Campground"; -"type.entrance.exit" = "Exit"; +"type.entrance.exit" = "প্রস্থান (শুধুমাত্র)"; "type.amenity.vehicle_inspection" = "Vehicle Inspection"; "type.railway.subway_entrance.almaty" = "Subway Entrance"; "type.railway.subway_entrance.brussels" = "Subway Entrance"; @@ -306,12 +306,12 @@ "type.wheelchair.no" = "No Wheelchair Access"; "type.shop.grocery" = "Grocery Store"; "type.waterway.ditch" = "Drainage Ditch"; -"type.barrier.entrance" = "Entrance"; +"type.barrier.entrance" = "প্রবেশদ্বার"; "type.railway.station.subway.brussels" = "Subway Station"; "type.tourism.guest_house" = "Guest House"; "type.highway.motorway_link.bridge" = "Bridge"; "type.man_made.lighthouse" = "Lighthouse"; -"type.cuisine.tea" = "Tea"; +"type.cuisine.tea" = "চা"; "type.shop.money_lender" = "Money Lender"; "type.area_highway.steps" = "সিঁড়ি"; "type.historic.fort" = "Fort"; @@ -328,7 +328,7 @@ "type.railway.station.subway.berlin" = "Subway Station"; "type.historic.castle.kremlin" = "Kremlin"; "type.railway.station.light_rail.berlin" = "S-Bahn Station"; -"type.public_transport.platform" = "Platform"; +"type.public_transport.platform" = "প্ল্যাটফর্ম"; "type.natural.geyser" = "Geyser"; "type.amenity.bbq" = "Barbecue Grill"; "type.landuse.reservoir" = "Reservoir"; @@ -357,7 +357,7 @@ "type.highway.ford" = "Ford"; "type.shop.bed" = "Bed Shop"; "type.tourism.museum" = "জাদুঘর"; -"type.amenity.school" = "School"; +"type.amenity.school" = "স্কুল"; "type.amenity.parcel_locker" = "Parcel Locker"; "type.historic.pillory" = "Pillory"; "type.barrier.block" = "Block"; @@ -371,13 +371,13 @@ "type.railway.subway_entrance.osaka" = "Subway Entrance"; "type.attraction.carousel" = "Carousel"; "type.aerialway.cable_car" = "Cable Car"; -"type.amenity.marketplace" = "মার্কেটপ্লেস"; +"type.amenity.marketplace" = "বাজার"; "type.leisure.ice_rink" = "Ice Rink"; "type.amenity.parking.lane" = "লেন পার্কিং"; "type.railway.subway_entrance.mashhad" = "Subway Entrance"; "type.highway.path.bridge" = "Bridge"; "type.amenity.conference_centre" = "Conference Center"; -"type.amenity.studio" = "Studio"; +"type.amenity.studio" = "মিডিয়া স্টুডিও"; "type.shop.variety_store" = "Variety Store"; "type.shop.baby_goods" = "Baby Goods Shop"; "type.railway.subway_entrance.pyongyang" = "Subway Entrance"; @@ -396,7 +396,7 @@ "type.amenity.pub" = "Pub"; "type.amenity.parking.underground" = "আন্ডারগ্রাউন্ড পার্কিং"; "type.tourism.artwork.painting" = "Painting"; -"type.amenity.pharmacy" = "Pharmacy"; +"type.amenity.pharmacy" = "ওষুধ দোকান"; "type.landuse.military" = "Military Area"; "type.amenity.college" = "কলেজ"; "type.railway.station.light_rail" = "Light Rail Station"; @@ -460,7 +460,7 @@ "type.amenity.stripclub" = "Stripclub"; "type.natural.wetland.marsh" = "Marsh"; "type.railway.subway.tunnel" = "Subway Line Tunnel"; -"type.leisure.stadium" = "Stadium"; +"type.leisure.stadium" = "স্টেডিয়াম"; "type.railway.subway_entrance.caracas" = "Subway Entrance"; "type.craft.grinding_mill" = "Grinding Mill"; "type.natural.wetland.fen" = "Fen"; @@ -503,7 +503,7 @@ "type.natural.land" = "Land"; "type.barrier.city_wall" = "City Wall"; "type.natural.water.reservoir" = "Reservoir"; -"type.amenity.place_of_worship.christian" = "Church"; +"type.amenity.place_of_worship.christian" = "গির্জা"; "type.leisure.golf_course" = "Golf Course"; "type.highway.unclassified" = "Minor Road"; "type.natural.scree" = "Scree"; @@ -581,7 +581,7 @@ "type.amenity.parking.underground.private" = "ব্যক্তিগত আন্ডারগ্রাউন্ড পার্কিং"; "type.amenity.taxi" = "Taxi Stand"; "type.cuisine.fish_and_chips" = "Fish and Chips"; -"type.cuisine.greek" = "Greek"; +"type.cuisine.greek" = "গ্রিক"; "type.amenity.parking.lane.fee" = "Lane Parking"; "type.power.plant.hydro" = "Hydroelectric Power Plant"; "type.railway.station.subway.bilbao" = "Subway Station"; @@ -594,8 +594,8 @@ "type.shop.fishing" = "Fishing Store"; "type.railway.subway_entrance.lima" = "Subway Entrance"; "type.natural.rock" = "Rock"; -"type.natural.water" = "Water"; -"type.building.address" = "Address"; +"type.natural.water" = "জল"; +"type.building.address" = "ঠিকানা"; "type.shop.nutrition_supplements" = "Nutrition Supplement Store"; "type.craft.brewery" = "Craft Brewery"; "type.railway.subway_entrance.spb" = "Subway Entrance"; @@ -609,7 +609,7 @@ "type.highway.trunk" = "Trunk Road"; "type.amenity.waste_basket" = "Trash Bin"; "type.railway.subway_entrance.dalian" = "Subway Entrance"; -"type.place.continent" = "Continent"; +"type.place.continent" = "মহাদেশ"; "type.landuse.plant_nursery" = "Plant Nursery"; "type.amenity.charging_station.motorcar" = "Car Charging Station"; "type.man_made.works" = "Industrial Works"; @@ -622,7 +622,7 @@ "type.railway.subway_entrance.kobe" = "Subway Entrance"; "type.aeroway.aerodrome.international" = "আন্তর্জাতিক বিমানবন্দর"; "type.highway.road" = "Road"; -"type.natural" = "Nature"; +"type.natural" = "প্রকৃতি"; "type.natural.saddle" = "Mountain Saddle"; "type.highway.elevator" = "Elevator"; "type.natural.beach" = "Beach"; @@ -631,7 +631,7 @@ "type.amenity.food_court" = "ফুড কোর্ট"; "type.amenity.parking.no.access" = "ব্যক্তিগত পার্কিং"; "type.railway.level_crossing" = "Level Crossing"; -"type.amenity.vending_machine.fuel" = "Fuel Pump"; +"type.amenity.vending_machine.fuel" = "পেট্রোল পাম্প"; "type.railway.station.subway.maracaibo" = "Subway Station"; "type.cuisine.friture" = "Friture"; "type.sport.athletics" = "Athletics"; @@ -676,7 +676,7 @@ "type.highway.steps.bridge" = "Bridge"; "type.sport.equestrian" = "Equestrian Sports"; "type.cuisine.thai" = "Thai"; -"type.internet_access.wlan" = "Internet"; +"type.internet_access.wlan" = "ইন্টারনেট"; "type.shop.charity" = "Charity Shop"; "type.leisure.outdoor_seating" = "Outdoor Seating"; "type.railway.subway_entrance.cairo" = "Subway Entrance"; @@ -695,7 +695,7 @@ "type.amenity.love_hotel" = "Love Hotel"; "type.highway.tertiary_link.bridge" = "Bridge"; "type.railway.subway_entrance.delhi" = "Subway Entrance"; -"type.amenity.university" = "University"; +"type.amenity.university" = "বিশ্ববিদ্যালয়"; "type.leisure.marina" = "Marina"; "type.railway.platform" = "Railway Platform"; "type.railway.subway_entrance.tbilisi" = "Subway Entrance"; @@ -744,18 +744,18 @@ "type.cuisine.chinese" = "Chinese"; "type.cuisine.coffee_shop" = "Coffee"; "type.cuisine.crepe" = "Crepe"; -"type.cuisine.croatian" = "Croatian"; +"type.cuisine.croatian" = "ক্রোয়েসীয়"; "type.cuisine.curry" = "Curry"; "type.cuisine.deli" = "Deli"; "type.cuisine.filipino" = "Filipino"; "type.cuisine.fine_dining" = "Fine Dining"; "type.cuisine.fish" = "Fish"; "type.cuisine.georgian" = "Georgian"; -"type.cuisine.ice_cream" = "Ice Cream"; +"type.cuisine.ice_cream" = "আইসক্রিম"; "type.cuisine.moroccan" = "Moroccan"; -"type.cuisine.noodles" = "Noodles"; +"type.cuisine.noodles" = "নুডুলস"; "type.cuisine.pancake" = "Pancake"; -"type.cuisine.pasta" = "Pasta"; +"type.cuisine.pasta" = "পাস্তা"; "type.cuisine.portuguese" = "Portuguese"; "type.cuisine.savory_pancakes" = "Savory Pancakes"; "type.cuisine.spanish" = "Spanish"; @@ -786,7 +786,7 @@ "type.place.region" = "Region"; "type.place.village" = "Village"; "type.power.generator.gas" = "Gas Turbine Power Plant"; -"type.place.state" = "State"; +"type.place.state" = "রাজ্য"; "type.place.town" = "Town"; "type.place.quarter" = "Quarter"; "type.power.line" = "Power Line"; @@ -796,7 +796,7 @@ "type.place.state.USA" = "State"; "type.power.generator.wind" = "Wind Generator"; "type.power.generator.solar" = "Solar Generator"; -"type.place.ocean" = "Ocean"; +"type.place.ocean" = "সমুদ্র"; "type.power.generator.hydro" = "Hydroelectric Power Plant"; "type.place.suburb" = "Suburb"; "type.power" = "Power"; @@ -836,7 +836,7 @@ "type.railway.station.subway.isfahan" = "Subway Station"; "type.boundary.administrative" = "Administrative Boundary"; "type.amenity.parking_space" = "Parking Space"; -"type.fee.no" = "Free"; +"type.fee.no" = "বিনামূল্যে"; "type.railway.subway_entrance.tehran" = "Subway Entrance"; "type.highway.footway.crossing" = "Pedestrian Crossing"; "type.historic.castle.fortified_church" = "Fortified Church"; @@ -853,7 +853,7 @@ "type.railway.abandoned.bridge" = "Abandoned Railway Bridge"; "type.railway.subway_entrance.dubai" = "Subway Entrance"; "type.historic.boundary_stone" = "Boundary Stone"; -"type.cuisine.german" = "German"; +"type.cuisine.german" = "জার্মান"; "type.amenity.townhall" = "Town Hall"; "type.building.has_parts" = "Building"; "type.piste_type.skitour" = "Skitour Trail"; @@ -873,7 +873,7 @@ "type.emergency.assembly_point" = "Emergency Assembly Point"; "type.highway.residential" = "Residential Street"; "type.railway.subway_entrance.taoyuan" = "Subway Entrance"; -"type.natural.water.lake" = "Lake"; +"type.natural.water.lake" = "হ্রদ"; "type.highway.path.tunnel" = "Tunnel"; "type.amenity.public_bath" = "Public Bath"; "type.leisure.resort" = "Resort"; @@ -895,7 +895,7 @@ "type.railway.station.subway.rio" = "Subway Station"; "type.railway.subway_entrance.athens" = "Subway Entrance"; "type.railway.subway_entrance.panama" = "Subway Entrance"; -"type.man_made.water_tower" = "Water Tower"; +"type.man_made.water_tower" = "জলের ট্যাঙ্ক"; "type.railway.station.subway.medellin" = "Subway Station"; "type.piste_type.sled.area" = "Sledding Piste"; "type.aerialway.j.bar" = "J-bar Lift"; @@ -903,8 +903,8 @@ "type.historic.wayside_cross" = "Wayside Cross"; "type.railway.funicular.bridge" = "Funicular Bridge"; "type.railway.station.subway.kunming" = "Subway Station"; -"type.man_made.water_well" = "Water Well"; -"type.internet_access" = "Internet"; +"type.man_made.water_well" = "পাতকুয়া"; +"type.internet_access" = "ইন্টারনেট"; "type.landuse.greenhouse_horticulture" = "Greenhouse"; "type.landuse.farmland" = "Farmland"; "type.place.city.capital.3" = "City"; @@ -912,8 +912,8 @@ "type.railway.station.subway.delhi" = "Subway Station"; "type.natural.water.wastewater" = "Wastewater"; "type.tourism.attraction.specified" = "Attraction"; -"type.cuisine.french" = "French"; -"type.route.ferry" = "Ferry"; +"type.cuisine.french" = "ফরাসি"; +"type.route.ferry" = "ফেরি"; "type.tourism.information" = "Tourist Information"; "type.shop.camera" = "Camera Shop"; "type.tourism.information.board" = "Information Board"; @@ -952,14 +952,14 @@ "type.attraction.roller_coaster" = "Roller Coaster"; "type.railway.subway_entrance.maracaibo" = "Subway Entrance"; "type.railway.preserved" = "Preserved Rail"; -"type.building" = "Building"; +"type.building" = "বিল্ডিং"; "type.highway.service.bridge" = "Bridge"; "type.railway.station.monorail" = "Monorail Station"; "type.highway.trunk_link" = "Trunk Road Ramp"; "type.railway.station.subway.catania" = "Subway Station"; "type.leisure.fitness_centre" = "Fitness Centre"; "type.junction.circular" = "Roundabout"; -"type.barrier" = "Barrier"; +"type.barrier" = "বাঁধা"; "type.barrier.yes" = "Barrier"; "type.railway.station.subway.santiago" = "Subway Station"; "type.cuisine.italian" = "Italian"; @@ -970,7 +970,7 @@ "type.place.island" = "Island"; "type.cuisine.bagel" = "Bagel"; "type.power.plant.wind" = "Wind Power Plant"; -"type.cuisine.arab" = "Arab"; +"type.cuisine.arab" = "আরবি"; "type.tourism.hotel" = "হোটেল"; "type.amenity.shower" = "Shower"; "type.barrier.chain" = "Chain"; @@ -981,7 +981,7 @@ "type.cuisine.local" = "Local"; "type.highway.pedestrian.bridge" = "Pedestrian Bridge"; "type.highway.pedestrian.square" = "Square"; -"type.cuisine.turkish" = "Turkish"; +"type.cuisine.turkish" = "তুর্কি"; "type.highway.primary.tunnel" = "Tunnel"; "type.historic.anchor" = "Historic Anchor"; "type.leisure.bowling_alley" = "Bowling Alley"; @@ -1000,11 +1000,11 @@ "type.amenity.shelter.public_transport" = "Shelter"; "type.railway.station.subway.saopaulo" = "Subway Station"; "type.railway.rail.tourism" = "Touristic Railway"; -"type.cuisine.persian" = "Persian"; +"type.cuisine.persian" = "ফারসি"; "type.area_highway.residential" = "Residential Street"; "type.place.hamlet" = "Hamlet"; "type.railway.subway_entrance.rotterdam" = "Subway Entrance"; -"type.man_made.water_tap" = "Water Tap"; +"type.man_made.water_tap" = "জলের কল"; "type.natural.heath" = "Heath"; "type.craft.electronics_repair" = "Electronics Repair"; "type.amenity.place_of_worship.christian.mormon" = "Church of Jesus Christ of Latter Day Saints"; @@ -1035,7 +1035,7 @@ "type.sport.curling" = "Curling"; "type.aerialway.station" = "Aerialway Station"; "type.highway.tertiary_link" = "Tertiary Road Ramp"; -"type.highway.path" = "Path"; +"type.highway.path" = "পথ"; "type.aeroway.apron" = "Apron"; "type.natural.water.basin" = "Basin"; "type.railway.subway_entrance" = "Subway Entrance"; @@ -1062,7 +1062,7 @@ "type.railway.station.subway.minsk" = "Subway Station"; "type.shop.doityourself" = "Home Improvement Store"; "type.railway.station.subway.caracas" = "Subway Station"; -"type.public_transport" = "Public Transport"; +"type.public_transport" = "গণপরিবহন"; "type.sport.9pin" = "Bowling"; "type.waterway.weir" = "Weir"; "type.barrier.cycle_barrier" = "Cycle Barrier"; @@ -1091,7 +1091,7 @@ "type.railway.station.subway.tianjin" = "Subway Station"; "type.historic.castle.hillfort" = "Hillfort"; "type.highway.footway" = "Foot Path"; -"type.shop.auction" = "Auction"; +"type.shop.auction" = "নিলাম"; "type.cuisine.korean" = "Korean"; "type.craft.metal_construction" = "Metal Worker"; "type.healthcare.psychotherapist" = "Psychotherapist"; @@ -1105,7 +1105,7 @@ "type.railway.subway_entrance.shanghai" = "Subway Entrance"; "type.sport.10pin" = "Bowling"; "type.amenity.veterinary" = "Veterinary Doctor"; -"type.amenity.dentist" = "Dentist"; +"type.amenity.dentist" = "দাঁতের ডাক্তার"; "type.shop.rental" = "Rental Shop"; "type.historic.castle" = "Castle"; "type.waterway.drain.tunnel" = "Culvert"; @@ -1142,7 +1142,7 @@ "type.leisure.adult_gaming_centre" = "Adult Gaming Centre"; "type.highway.primary" = "Primary Road"; "type.amenity.water_point" = "Water Tank Refill Point"; -"type.self_service.partially" = "Partial self-service"; +"type.self_service.partially" = "আংশিক স্বয়ংসেবা"; "type.railway.subway_entrance.kolkata" = "Subway Entrance"; "type.railway.station.subway.cairo" = "Subway Station"; "type.railway.station.subway.rennes" = "Subway Station"; @@ -1238,7 +1238,7 @@ "type.place.country" = "Country"; "type.railway.station.subway.wuhan" = "Subway Station"; "type.man_made.water_well.drinking_water_no" = "Water Well"; -"type.amenity.telephone" = "Phone"; +"type.amenity.telephone" = "টেলিফোন"; "type.sport.handball" = "Handball"; "type.traffic_calming" = "Traffic Calming"; "type.amenity.parking_space.private" = "Parking Space"; @@ -1291,7 +1291,7 @@ "type.aerialway" = "Aerialway"; "type.craft.sawmill" = "Sawmill"; "type.highway.service.parking_aisle" = "Parking Aisle"; -"type.cuisine.japanese" = "Japanese"; +"type.cuisine.japanese" = "জাপানি"; "type.leisure.escape_game" = "Escape Room"; "type.amenity.bicycle_parking.covered" = "Covered Bicycle Parking"; "type.post_office.post_partner" = "Post Partner"; @@ -1303,3 +1303,4 @@ "type.power.portal" = "পাওয়ার পোর্টাল"; "type.building.guardhouse" = "সিকিউরিটি বুথ"; "type.natural.tree" = "গাছ"; +"type.natural.sand" = "বালুকা"; diff --git a/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings index 0b9eac4d4..40bcf220b 100644 --- a/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings +++ b/iphone/Maps/LocalizedStrings/de.lproj/Localizable.strings @@ -66,7 +66,7 @@ "bookmark_set_name" = "Name der Lesezeichenliste"; /* "Bookmark Lists" dialog title */ -"bookmark_sets" = "Lesezeichenliste"; +"bookmark_sets" = "Lesezeichensammlung"; /* Should be used in the bookmarks-only context, see bookmarks_and_tracks if tracks are also implied. */ "bookmarks" = "Lesezeichen"; @@ -154,7 +154,7 @@ /* Search category for RV facilities; any changes should be duplicated in categories.txt @category_rv! */ "category_rv" = "Einrichtungen für Wohnmobile"; -"share_bookmarks_email_body" = "Hallo!\n\nIm Anhang sind meine Lesezeichen der CoMaps App. Sie können sie mit CoMaps öffnen. Wenn Sie die App nicht installiert haben, können Sie sie von https://www.comaps.app/download/ für iOS oder Android herunterladen.\n\nViel Spaß beim Reisen mit CoMaps!"; +"share_bookmarks_email_body" = "Hallo!\n\nIm Anhang sind meine Lesezeichen aus der CoMaps-App. Du kannst sie mit CoMaps öffnen. Wenn du die App nicht installiert hast, kannst du sie unter https://www.comaps.app/de/download/ herunterladen.\n\nViel Spaß beim Navigieren mit CoMaps!"; /* message title of loading file */ "load_kmz_title" = "Lesezeichen werden geladen"; @@ -184,7 +184,7 @@ "copy_to_clipboard" = "In die Zwischenablage kopieren"; /* Text for message when used successfully copied something */ -"copied_to_clipboard" = "In die Zwischenablage kopiert: %@"; +"copied_to_clipboard" = "Kopiert in der Zwischenablage: %@"; /* place preview title */ "info" = "Info"; @@ -310,7 +310,7 @@ "help" = "Hilfe"; /* Button in the main Help dialog */ -"faq" = "Häufige Fragen und Antworten"; +"faq" = "Häufige Fragen und Antworten (FAQ)"; /* Button in the main menu */ "donate" = "Spenden"; @@ -325,25 +325,25 @@ "report_incorrect_map_bug" = "Falsche Kartendaten melden oder korrigieren"; /* Button in the About screen */ -"volunteer" = "Freiwillig helfen und CoMaps verbessern"; +"volunteer" = "Freiwilliges Engagement und CoMaps verbessern"; /* "Social media" section header in the About screen */ -"follow_us" = "Bleib in Kontakt"; +"follow_us" = "Kontaktiere uns"; /* Alert text */ -"email_error_body" = "Der Email-Client ist noch nicht eingerichtet worden. Konfigurieren Sie ihn bitte oder nutzen Sie eine andere Möglichkeit oder kontaktieren Sie uns unter %@"; +"email_error_body" = "Der Email-Client ist noch nicht eingerichtet worden. Bitte konfiguriere ihn oder kontaktiere uns unter %@"; /* Alert title */ -"email_error_title" = "Fehler beim Email-Versand"; +"email_error_title" = "Fehler beim E-Mail-Versand"; /* Settings item title */ "pref_calibration_title" = "Kompass-Kalibrierung"; /* Toast text when user hides UI with a long tap anywhere on the map */ -"long_tap_toast" = "Tippe erneut lange auf die Karte, um die Benutzeroberfläche zu sehen"; +"long_tap_toast" = "Tippe erneut lange auf die Karte, um die Benutzeroberfläche wiederzusehen"; /* Update all button text */ -"downloader_update_all_button" = "Alle aktualisieren"; +"downloader_update_all_button" = "Alle Karten aktualisieren"; /* Downloaded maps list header */ "downloader_downloaded_subtitle" = "Heruntergeladen"; @@ -440,34 +440,34 @@ /* blue gray color */ "blue_gray" = "Graublau"; -"dialog_routing_disclaimer_title" = "Wenn Sie der Route folgen, beachten Sie bitte:"; +"dialog_routing_disclaimer_title" = "Wenn du der Route folgst, beachte bitte:"; "dialog_routing_disclaimer_priority" = "— Zustand der Straßen, die Verkehrsordnung und Straßenschilder haben stets Vorrang vor Navigationsanweisungen;"; -"dialog_routing_disclaimer_precision" = "– Die Karte kann ungenau sein, und die vorgeschlagene Route ist möglicherweise nicht der optimale Weg, um das Ziel zu erreichen;"; +"dialog_routing_disclaimer_precision" = "— Die Karte kann ungenau sein, und die vorgeschlagene Route ist möglicherweise nicht der optimale Weg, um das Ziel zu erreichen;"; "dialog_routing_disclaimer_recommendations" = "— Die vorgeschlagenen Routen sind als Empfehlungen zu verstehen;"; "dialog_routing_disclaimer_borders" = "— Bitte seien Sie vorsichtig bei Routen in Grenzgebieten: die Routen, die unsere App erstellt, können manchmal Landesgrenzen in gesperrten Gebieten überschreiten."; -"dialog_routing_disclaimer_beware" = "Bitte fahren Sie aufmerksam und sicher!"; +"dialog_routing_disclaimer_beware" = "Bitte fahre aufmerksam und sicher!"; "dialog_routing_check_gps" = "GPS-Signal prüfen"; "dialog_routing_error_location_not_found" = "Route kann nicht erstellt werden. Aktuelle GPS-Koordinaten konnten nicht ermittelt werden."; -"dialog_routing_location_turn_wifi" = "Bitte prüfen Sie Ihr GPS-Signal. WLAN verbessert Ihre Standortgenauigkeit."; +"dialog_routing_location_turn_wifi" = "Bitte prüfe dein GPS-Signal. Aktiviertes W-LAN verbessert deine Standortgenauigkeit."; "dialog_routing_location_turn_on" = "Standortdienste aktivieren"; -"dialog_routing_location_unknown_turn_on" = "Aktuelle GPS-Koordinaten können nicht ermittelt werden. Aktivieren Sie Standortdiensten, um die Route zu berechnen."; +"dialog_routing_location_unknown_turn_on" = "Aktuelle GPS-Koordinaten können nicht ermittelt werden. Aktiviere die Standortdienste, um die Route zu berechnen."; "dialog_routing_download_files" = "Erforderliche Dateien herunterladen"; -"dialog_routing_download_and_update_all" = "Laden Sie alle Karten- und Routeninformationen für den geplanten Weg herunter oder aktualisieren Sie sie, um die Route zu berechnen."; +"dialog_routing_download_and_update_all" = "Lade alle Karten- und Routeninformationen für den geplanten Weg herunter oder aktualisiere sie, um die Route zu berechnen."; "dialog_routing_unable_locate_route" = "Route kann nicht ermittelt werden"; -"dialog_routing_change_start_or_end" = "Bitte passen Sie Ihren Startpunkt oder Ihr Ziel an."; +"dialog_routing_change_start_or_end" = "Bitte passe deinen Startpunkt oder Ziel an."; "dialog_routing_change_start" = "Startpunkt anpassen"; "dialog_routing_start_not_determined" = "Route wurde nicht erstellt. Startpunkt konnte nicht gefunden werden."; -"dialog_routing_select_closer_start" = "Bitte wählen Sie einen Startpunkt, der näher an einer Straße liegt."; +"dialog_routing_select_closer_start" = "Bitte wähle einen Startpunkt, der näher an einer Straße liegt."; "dialog_routing_change_end" = "Ziel anpassen"; "dialog_routing_end_not_determined" = "Route wurde nicht erstellt. Ziel konnte nicht gefunden werden."; -"dialog_routing_select_closer_end" = "Bitte wählen Sie einen Zielort, der näher an einer Straße liegt."; +"dialog_routing_select_closer_end" = "Bitte wähle einen Zielort, der näher an einer Straße liegt."; "dialog_routing_change_intermediate" = "Zwischenstopp kann nicht gefunden werden."; -"dialog_routing_intermediate_not_determined" = "Bitte passen Sie Ihren Zwischenstopp an."; +"dialog_routing_intermediate_not_determined" = "Bitte passe deinen Zwischenstopp an."; "dialog_routing_system_error" = "Systemfehler"; "dialog_routing_application_error" = "Route kann wegen eines Anwendungsfehlers nicht erstellt werden."; -"dialog_routing_try_again" = "Bitte versuchen Sie es erneut"; -"dialog_routing_download_and_build_cross_route" = "Möchten Sie die Karte herunterladen und eine bessere Route erstellen, die mehr als eine Karte umfasst?"; -"dialog_routing_download_cross_route" = "Laden Sie zusätzliche Karten herunter, um eine bessere Route zu erstellen, welche die Grenzen dieser Karte überschreitet."; +"dialog_routing_try_again" = "Bitte versuche es erneut"; +"dialog_routing_download_and_build_cross_route" = "Möchtest du die Karte herunterladen und eine bessere Route erstellen, die mehr als eine Karte umfasst?"; +"dialog_routing_download_cross_route" = "Lade zusätzliche Karten herunter, um eine bessere Route zu erstellen, welche die Grenzen dieser Karte überschreitet."; /* «Show» context menu */ "show" = "Anzeigen"; @@ -479,18 +479,18 @@ "routing_planning_error" = "Routenplanung fehlgeschlagen"; /* Arrive routing message in navigation view */ -"routing_arrive" = "Ankunft: %@"; +"routing_arrive" = "Ankunft um: %@"; /* Text for routing::RouterResultCode::FileTooOld dialog. */ -"dialog_routing_download_and_update_maps" = "Zum Erstellen einer Route müssen Sie alle Karten herunterladen und aktualisieren, auf denen die Route liegt."; +"dialog_routing_download_and_update_maps" = "Zum Erstellen einer Route musst du alle Karten herunterladen und aktualisieren, auf denen die Route liegt."; "categories" = "Kategorien"; "history" = "Verlauf"; "search_not_found" = "Leider wurde nichts gefunden."; /* The message when user did not find anything in the search. */ -"search_not_found_query" = "Laden Sie die Region herunter, in der Sie suchen, oder fügen Sie den Namen einer nahe gelegenen Stadt oder eines Dorfes hinzu."; +"search_not_found_query" = "Lade die Region herunter, in der du suchst, oder füge den Namen einer nahe gelegenen Stadt oder eines Dorfes hinzu."; "search_history_title" = "Suchverlauf"; -"search_history_text" = "Hier werden Ihre letzten Suchanfragen angezeigt."; +"search_history_text" = "Hier werden deine letzten Suchanfragen angezeigt."; "clear_search" = "Suchverlauf löschen"; /* Place Page link to Wikipedia article (if map object has it). */ @@ -498,12 +498,12 @@ /* Place Page link to Wikimedia Commons. */ "wikimedia_commons" = "Wikimedia Commons"; -"p2p_your_location" = "Ihr Standort"; +"p2p_your_location" = "Dein Standort"; "p2p_start" = "Start"; -"p2p_from_here" = "Von"; -"p2p_to_here" = "Nach"; -"p2p_only_from_current" = "Die Navigation ist nur von Ihrem aktuellen Standort verfügbar."; -"p2p_reroute_from_current" = "Soll eine Route von Ihrem aktuellen Standort aus berechnet werden?"; +"p2p_from_here" = "Route von"; +"p2p_to_here" = "Route nach"; +"p2p_only_from_current" = "Die Navigation ist nur von deinem aktuellen Standort verfügbar."; +"p2p_reroute_from_current" = "Soll eine Route von deinem aktuellen Standort aus berechnet werden?"; "editor_time_add" = "Zeitplan hinzufügen"; "editor_time_delete" = "Zeitplan löschen"; @@ -516,9 +516,9 @@ "editor_time_advanced" = "Erweiterter Modus"; "editor_time_simple" = "Einfacher Modus"; "editor_hours_closed" = "Schließzeiten"; -"editor_example_values" = "Beispiele"; +"editor_example_values" = "Beispielwerte"; "editor_add_select_location" = "Standort auswählen"; -"editor_done_dialog_1" = "Sie haben die Weltkarte geändert. Behalten Sie das nicht für sich! Erzählen Sie Ihren Freunden davon und bearbeiten Sie sie zusammen."; +"editor_done_dialog_1" = "Du hast die Weltkarte geändert. Behalte das nicht für dich; Erzähle deinen Freunden davon und bearbeitet die Karte gemeinsam."; "share_with_friends" = "Mit Freunden teilen"; "editor_report_problem_send_button" = "Senden"; "autodownload" = "Automatisch herunterladen"; @@ -549,26 +549,26 @@ /* OpenStreetMap Profile */ "osm_profile" = "OpenStreetMap-Profil"; -"osm_profile_promt" = "Erstellen Sie ein OpenStreetMap-Konto oder melden Sie sich an, um Ihre Kartenbearbeitungen weltweit zu veröffentlichen."; -"osm_profile_explanation" = "[OpenStreetMap.org](https://openstreetmap.org) (OSM) ist ein Gemeinschaftsprojekt zur Erstellung einer freien und offenen Karte. Es ist die Hauptquelle für Kartendaten in CoMaps und funktioniert ähnlich wie Wikipedia. Sie können Orte hinzufügen oder bearbeiten, die dann Millionen von Nutzern weltweit zur Verfügung stehen.\nWerden Sie Teil der Gemeinschaft und helfen Sie mit, eine bessere Karte für alle zu erstellen!"; -"osm_profile_login" = "Bei OpenStreetMap-Konto anmelden"; +"osm_profile_promt" = "Erstelle ein OpenStreetMap-Konto oder melde dich an, um deine Kartenbearbeitungen weltweit zu veröffentlichen."; +"osm_profile_explanation" = "[OpenStreetMap.org](https://openstreetmap.org) (OSM) ist ein Gemeinschaftsprojekt zur Erstellung einer freien und offenen Karte. Es ist die Hauptquelle für Kartendaten in CoMaps und funktioniert ähnlich wie Wikipedia. Du kannst Orte hinzufügen oder bearbeiten, die dann Millionen von Nutzern weltweit zur Verfügung stehen.\nWerde Teil der Gemeinschaft und helfe mit, eine bessere Karte für alle zu erstellen!"; +"osm_profile_login" = "Anmelden bei OpenStreetMap"; "osm_profile_reauthorize_promt" = "Das OpenStreetMap-Konto wurde von dieser App getrennt"; "osm_profile_reauthorize" = "OpenStreetMap-Konto erneut verbinden"; -"osm_profile_remove_promt" = "Wenn Sie Ihr Konto nicht erneut verbinden können oder möchten, können Sie es einfach aus dieser App entfernen"; +"osm_profile_remove_promt" = "Wenn du dein Konto nicht erneut verbinden kannst oder möchtest, kannst du es einfach aus dieser App entfernen"; "osm_profile_remove" = "OpenStreetMap-Konto entfernen"; "osm_profile_register_promt" = "Kein Konto bei OpenStreetMap?"; "osm_profile_register" = "Bei OpenStreetMap registrieren"; "osm_profile_verfied_changes" = "Bestätigte Änderungen der Karte"; "osm_profile_view_edit_history" = "Bearbeitungsverlauf ansehen"; "osm_profile_view_notes" = "Hinweise ansehen"; -"osm_profile_logout" = "OpenStreetMap-Konto abmelden"; +"osm_profile_logout" = "Abmelden vom OpenStreetMap-Konto"; "osm_profile_delete" = "OpenStreetMap-Konto löschen"; /* Information text: "Last upload 11.01.2016" */ "last_upload" = "Zuletzt hochgeladen"; "thank_you" = "Danke"; "edit_place" = "Eintrag bearbeiten"; -"place_name" = "Name des Ortes"; +"place_name" = "Ortsname"; "add_language" = "Eine Sprache hinzufügen"; /* Editable House Number text field (in address block). */ @@ -640,7 +640,7 @@ /* To indicate the operator of ATMs, bicycle rentals, electric vehicle charging stations... */ "operator" = "Betreiber: %@"; "editor_category_unsuitable_title" = "Keine passende Kategorie gefunden?"; -"editor_category_unsuitable_text" = "Mit CoMaps kann man nur einfache Punktkategorien hinzufügen, dass bedeutet keine Städte, Straßen, Seen, Gebäudeumrisse etc. Bitte füge solche Kategorien direkt bei OpenStreetMap.org hinzu. In unserem Leitfaden findest du eine detaillierte Schritt-für-Schritt Anleitung."; +"editor_category_unsuitable_text" = "Mit CoMaps kannst du nur einfache Punktkategorien hinzufügen, dass bedeutet keine Städte, Straßen, Seen, Gebäudeumrisse etc. Bitte füge solche Kategorien direkt bei OpenStreetMap.org hinzu. In unserem Leitfaden (auf Englisch) findest du eine detaillierte Schritt-für-Schritt Anleitung."; "downloader_no_downloaded_maps_title" = "Keine Karten heruntergeladen"; "downloader_no_downloaded_maps_message" = "Laden Sie Karten für die Offline-Suche und Navigation herunter."; "current_location_unknown_error_title" = "Aktueller Standort ist unbekannt."; @@ -1094,15 +1094,15 @@ "track_recording_toast_nothing_to_save" = "Route ist leer - nichts zu speichern"; "edit_track" = "Track bearbeiten"; "pref_mapappearance_title" = "Kartendarstellung"; -"pref_maplanguage_title" = "Kartensprache"; +"pref_maplanguage_title" = "Karten-Sprache"; "transliteration_title_disabled_summary" = "Bei der Nutzung der lokalen Sprache für die Karte ausgeschaltet"; "pref_maplanguage_local" = "Lokale Sprache"; "existence_confirmed_time_ago" = "Existenz bestätigt %@"; "hours_confirmed_time_ago" = "Bestätigt %@"; "offline_explanation_title" = "Offline-Karten"; "offline_explanation_text" = "Um die Gegend anzusehen und zu erkunden, musst du eine Karte runterladen.\nLade dir Karten für die Gebiete runter, die du bereisen willst."; -"editor_place_doesnt_exist_description" = "Beschreibe wie der Ort jetzt aussieht um eine Fehlermeldung an die OpenStreetMap Community zu senden"; +"editor_place_doesnt_exist_description" = "Beschreibe wie der Ort jetzt aussieht, um eine Fehlermeldung an die OpenStreetMap Community zu senden"; "voice" = "Stimme"; "unknown" = "Unbekannt"; -"voice_explanation_before_version26" = "Es ist möglich, in den Systemeinstellungen unter *Barrierefreiheit*, *Gesprochene Inhalte*, *Stimmen* eine bessere Stimme auszuwählen."; -"voice_explanation" = "Es ist möglich, in den Systemeinstellungen unter *Barrierefreiheit*, *Lesen & Sprechen*, *Stimmen* eine bessere Stimme auszuwählen."; +"voice_explanation_before_version26" = "Es ist möglich in den Systemeinstellungen eine bessere Stimme unter *Barrierefreiheit*, *Gesprochene Inhalte*, *Stimmen* auszuwählen."; +"voice_explanation" = "Es ist möglich in den Systemeinstellungen eine bessere Stimme unter *Barrierefreiheit*, *Lesen & Sprechen*, *Stimmen* auszuwählen."; diff --git a/iphone/Maps/LocalizedStrings/de.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/de.lproj/LocalizableTypes.strings index 5a50ad628..555730c74 100644 --- a/iphone/Maps/LocalizedStrings/de.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/de.lproj/LocalizableTypes.strings @@ -1589,6 +1589,6 @@ "type.amenity.give_box" = "Spendenbox"; "type.xmas.tree" = "Weihnachtsbaum"; "type.natural.sand" = "Sand"; -"type.amenity.mobile_money_agent" = "Mobile Money Vertretung"; +"type.amenity.mobile_money_agent" = "Mobile Money Agent"; "type.amenity.food_sharing" = "Food Sharing"; "type.amenity.hydrant" = "Beregnungshydrant"; diff --git a/iphone/Maps/LocalizedStrings/lt.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/lt.lproj/LocalizableTypes.strings index 717803890..753102dd6 100644 --- a/iphone/Maps/LocalizedStrings/lt.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/lt.lproj/LocalizableTypes.strings @@ -1,8 +1,8 @@ "type.addr_interpolation" = "Adresas / blokas"; "type.addr_interpolation.even" = "Adresas / blokas"; "type.addr_interpolation.odd" = "Adresas / blokas"; -"type.aerialway" = "Oro keltuvas"; -"type.aerialway.gondola" = "Gondola"; +"type.aerialway" = "Keltuvas"; +"type.aerialway.gondola" = "Gondolinis keltuvas"; "type.aeroway" = "Oro transporto infrastruktūra"; "type.aeroway.aerodrome" = "Oro uostas"; "type.aeroway.aerodrome.international" = "Tarptautinis oro uostas"; @@ -157,7 +157,7 @@ "type.amenity.shower" = "Dušas"; "type.amenity.stripclub" = "Striptizo klubas"; "type.amenity.taxi" = "Taksi stovėjimo vieta"; -"type.amenity.telephone" = "Taksofonas"; +"type.amenity.telephone" = "Telefonas"; "type.amenity.theatre" = "Teatras"; "type.amenity.toilets" = "Tualetas"; "type.toilets.yes" = "Tualetas"; @@ -171,7 +171,7 @@ "type.amenity.vending_machine.food" = "Maisto išdavimo automatas"; "type.amenity.vending_machine.newspapers" = "Spaudos išdavimo automatas"; "type.amenity.vending_machine.parking_tickets" = "Parkomatas"; -"type.amenity.vending_machine.public_transport_tickets" = "Bilietomatas"; +"type.amenity.vending_machine.public_transport_tickets" = "Viešojo transporto bilietų automatas"; "type.amenity.vending_machine.sweets" = "Saldainių išdavimo automatas"; "type.amenity.vending_machine.excrement_bags" = "Išmatų maišelių stovas"; "type.amenity.parcel_locker" = "Paštomatas"; @@ -589,7 +589,7 @@ "type.historic" = "Senovinis / istorinis objektas"; "type.historic.aircraft" = "Senovinis orlaivis"; "type.historic.anchor" = "Senovinis inkaras"; -"type.historic.battlefield" = "Istorinio mūšio laukas"; +"type.historic.battlefield" = "Mūšio laukas"; "type.historic.boundary_stone" = "Senovinis riboženklis"; "type.historic.cannon" = "Patranka"; "type.historic.castle" = "Pilis"; @@ -1176,7 +1176,7 @@ "type.route.ferry" = "Keltas"; "type.shop" = "Parduotuvė"; "type.shop.alcohol" = "Alkoholinių gėrimų parduotuvė"; -"type.shop.bakery" = "Kepykla"; +"type.shop.bakery" = "Kepyklėlė"; "type.shop.bathroom_furnishing" = "Vonios įranga"; "type.shop.beauty" = "Grožio salonas"; "type.shop.beverages" = "Gėrimai"; @@ -1219,12 +1219,12 @@ "type.shop.greengrocer" = "Vaisių ir daržovių parduotuvė"; "type.shop.grocery" = "Maisto prekių parduotuvė"; "type.shop.hairdresser" = "Kirpykla"; -"type.shop.hardware" = "Metalo dirbinių parduotuvė"; +"type.shop.hardware" = "Metalo gaminių parduotuvė"; "type.shop.health_food" = "Sveiko maisto parduotuvė"; "type.shop.hearing_aids" = "Klausos aparatų parduotuvė"; "type.shop.herbalist" = "Vaistažolių parduotuvė"; "type.shop.hifi" = "Gero garso aparatūros parduotuvė"; -"type.shop.houseware" = "Prekių namams parduotuvė"; +"type.shop.houseware" = "Namų apyvokos prekių parduotuvė"; "type.shop.jewelry" = "Juvelyrinių dirbinių parduotuvė"; "type.shop.kiosk" = "Kioskas"; "type.shop.kitchen" = "Virtuvės studija"; @@ -1405,21 +1405,21 @@ "type.wheelchair.limited" = "Ribota prieiga neįgaliojo vežimėliu"; "type.wheelchair.no" = "Prieigos neįgaliojo vežimėliu nėra"; "type.wheelchair.yes" = "Visapusė prieiga neįgaliojo vežimėliu"; -"type.piste_type.downhill.advanced" = "Downhill Ski Run"; -"type.piste_type.downhill.advanced.area" = "Downhill Ski Run"; -"type.piste_type.downhill.easy" = "Downhill Ski Run"; -"type.piste_type.downhill.easy.area" = "Downhill Ski Run"; -"type.piste_type.downhill.expert" = "Downhill Ski Run"; -"type.piste_type.downhill.expert.area" = "Downhill Ski Run"; -"type.piste_type.downhill.freeride" = "Downhill Ski Run"; -"type.piste_type.downhill.intermediate" = "Downhill Ski Run"; -"type.piste_type.downhill.intermediate.area" = "Downhill Ski Run"; -"type.piste_type.downhill.novice" = "Downhill Ski Run"; -"type.piste_type.downhill.novice.area" = "Downhill Ski Run"; +"type.piste_type.downhill.advanced" = "Sudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.advanced.area" = "Sudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.easy" = "Nesudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.easy.area" = "Nesudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.expert" = "Ypač sudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.expert.area" = "Ypač sudėtinga kalnų slidinėjimo trasa"; +"type.piste_type.downhill.freeride" = "Laisvojo kalnų slidinėjimo trasa"; +"type.piste_type.downhill.intermediate" = "Vidutinio sudėtingumo kalnų slidinėjimo trasa"; +"type.piste_type.downhill.intermediate.area" = "Vidutinio sudėtingumo kalnų slidinėjimo trasa"; +"type.piste_type.downhill.novice" = "Pradedančiųjų kalnų slidinėjimo trasa"; +"type.piste_type.downhill.novice.area" = "Pradedančiųjų kalnų slidinėjimo trasa"; "type.piste_type.snow_park" = "Sniego parkas"; -"type.piste_type.hike" = "Sniego pėsčiųjų takas"; -"type.piste_type.connection" = "\"Piste Connection"; -"type.piste_type.skitour" = "\"Skitour\" takas"; +"type.piste_type.hike" = "Sniego žygių pėsčiomis trasa"; +"type.piste_type.connection" = "Jungiamoji trasa"; +"type.piste_type.skitour" = "Turistinio slidinėjimo trasa"; "type.amenity.events_venue" = "Renginių centras"; "type.shop.auction" = "Aukcionų namai"; "type.shop.collector" = "Kolekcionuojamų daiktų parduotuvė"; @@ -1540,3 +1540,55 @@ "type.amenity.give_box" = "Dalijimosi daiktais punktas"; "type.xmas.tree" = "Kalėdų eglė"; "type.amenity.mobile_money_agent" = "Mobiliųjų pinigų kasa"; +"type.aerialway.cable_car" = "Didysis gondolinis keltuvas"; +"type.aerialway.chair_lift" = "Krėslinis keltuvas"; +"type.aerialway.drag_lift" = "Traukiamasis keltuvas"; +"type.aerialway.mixed_lift" = "Mišrus keltuvas"; +"type.aerialway.station" = "Keltuvo stotelė"; +"type.amenity.loading_dock" = "Prievaža (rampa)"; +"type.amenity.car_pooling" = "Pakeleivių paėmimo / išleidimo punktas"; +"type.post_office.post_partner" = "Pašto paslaugos"; +"type.emergency" = "Kritinė situacija"; +"type.beacon.cardinal.east" = "Kardinalinis navigacinis ženklas"; +"type.beacon.cardinal.north" = "Kardinalinis navigacinis ženklas"; +"type.beacon.cardinal.south" = "Kardinalinis navigacinis ženklas"; +"type.beacon.cardinal.west" = "Kardinalinis navigacinis ženklas"; +"type.beacon.isolated_danger" = "Pavienės kliūties ženklas"; +"type.beacon.lateral.port" = "Lateralinis navigacinis ženklas"; +"type.beacon.lateral.starboard" = "Lateralinis navigacinis ženklas"; +"type.beacon.safe_water" = "Saugių vandenų navigacinis ženklas"; +"type.beacon.special_purpose" = "Specialusis navigacinis ženklas"; +"type.buoy.cardinal.east" = "Kardinalinė buja"; +"type.buoy.cardinal.north" = "Kardinalinė buja"; +"type.buoy.cardinal.south" = "Kardinalinė buja"; +"type.buoy.cardinal.west" = "Kardinalinė buja"; +"type.buoy.isolated_danger" = "Pavienės kliūties buja"; +"type.buoy.lateral.port" = "Lateralinė buja"; +"type.buoy.lateral.starboard" = "Lateralinė buja"; +"type.buoy.safe_water" = "Saugių vandenų buja"; +"type.buoy.special_purpose" = "Specialioji buja"; +"type.spherical_buoy.cardinal.east" = "Kardinalinė sferinė buja"; +"type.spherical_buoy.cardinal.north" = "Kardinalinė sferinė buja"; +"type.spherical_buoy.cardinal.south" = "Kardinalinė sferinė buja"; +"type.spherical_buoy.cardinal.west" = "Kardinalinė sferinė buja"; +"type.spherical_buoy.isolated_danger" = "Pavienės kliūties sferinė buja"; +"type.spherical_buoy.lateral.port" = "Lateralinė sferinė buja"; +"type.spherical_buoy.lateral.starboard" = "Lateralinė sferinė buja"; +"type.spherical_buoy.safe_water" = "Saugių vandenų sferinė buja"; +"type.spherical_buoy.special_purpose" = "Specialioji sferinė buja"; +"type.highway.track" = "Privažiavimo kelias"; +"type.highway.track.area" = "Privažiavimo kelias"; +"type.highway.track.grade1" = "Privažiavimo kelias"; +"type.highway.track.no.access" = "Privažiavimo kelias"; +"type.area_highway.track" = "Privažiavimo kelias"; +"type.historic.archaeological_site" = "Archeologinė vietovė"; +"type.aerialway.j.bar" = "Laktinis keltuvas"; +"type.aerialway.magic_carpet" = "Keltuvas-konvejeris"; +"type.aerialway.platter" = "Bugelinis disko formos keltuvas"; +"type.aerialway.rope_tow" = "Įsikimbamasis keltuvas"; +"type.aerialway.t.bar" = "Bugelinis „T“ formos keltuvas"; +"type.piste_type.downhill" = "Kalnų slidinėjimo trasa"; +"type.piste_type.downhill.area" = "Kalnų slidinėjimo trasa"; +"type.piste_type.nordic" = "Slidinėjimo kroso trasa"; +"type.piste_type.sled" = "Rogučių trasa"; +"type.piste_type.sled.area" = "Rogučių trasa"; diff --git a/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings index 0938d9318..a43d30bc1 100644 --- a/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings +++ b/iphone/Maps/LocalizedStrings/nb.lproj/Localizable.strings @@ -738,7 +738,7 @@ "transliteration_title" = "Omskrivning til latin"; /* Subway exits for public transport marks on the map */ -"core_exit" = "Avslutt"; +"core_exit" = "Utgang"; /* User selected the destination by pressing Route To, but the current position is unknown. User needs to select a starting point of a route using search or by tapping on the map and then pressing "Route From". */ "routing_add_start_point" = "Bruk søk eller trykk på kartet for å legge til et startpunkt for ruten"; diff --git a/iphone/Maps/LocalizedStrings/nb.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/nb.lproj/LocalizableTypes.strings index dd1f77e70..0112f5564 100644 --- a/iphone/Maps/LocalizedStrings/nb.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/nb.lproj/LocalizableTypes.strings @@ -1275,8 +1275,8 @@ "type.shop.travel_agency" = "Reisebyrå"; "type.shop.tyres" = "Dekkforretning"; "type.shop.variety_store" = "Billigbutikk"; -"type.shop.video" = "Videobutikken"; -"type.shop.video_games" = "Videospillbutikken"; +"type.shop.video" = "Videobutikk"; +"type.shop.video_games" = "Videospillbutikk"; "type.shop.wine" = "Alkoholutsalg"; "type.shop.agrarian" = "Landbruksbutikk"; "type.shop.antiques" = "Antikviteter"; diff --git a/iphone/Maps/LocalizedStrings/pl.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/pl.lproj/LocalizableTypes.strings index adfc7117e..a38b8040e 100644 --- a/iphone/Maps/LocalizedStrings/pl.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/pl.lproj/LocalizableTypes.strings @@ -1588,3 +1588,4 @@ "type.cardinal.north" = "Północ"; "type.cardinal.south" = "Południe"; "type.cardinal.west" = "Zachód"; +"type.amenity.prep_school" = "Szkoła przygotowująca do egzaminów"; diff --git a/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings index ca938c94d..fb6deddd9 100644 --- a/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings +++ b/iphone/Maps/LocalizedStrings/pt-BR.lproj/Localizable.strings @@ -683,7 +683,7 @@ "editor_edits_sent_message" = "A sua nota será enviada ao OpenStreetMap"; "editor_comment_hint" = "Comentar…"; "editor_reset_edits_message" = "Descartar todas as modificações locais?"; -"editor_reset_edits_button" = "Descartar"; +"editor_reset_edits_button" = "Descartar alterações"; "editor_remove_place_message" = "Remover local adicionado?"; "editor_remove_place_button" = "Remover"; "editor_place_doesnt_exist" = "O lugar não existe"; diff --git a/iphone/Maps/LocalizedStrings/pt-BR.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/pt-BR.lproj/LocalizableTypes.strings index a149d3b19..b84c43616 100644 --- a/iphone/Maps/LocalizedStrings/pt-BR.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/pt-BR.lproj/LocalizableTypes.strings @@ -1591,3 +1591,4 @@ "type.buoy.lateral.port" = "Boia lateral"; "type.man_made.mast.communication" = "Mastro de comunicações"; "type.shop.beauty.nails" = "Manicure"; +"type.amenity.hydrant" = "Hidrante de Irrigação"; diff --git a/iphone/Maps/LocalizedStrings/sl.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/sl.lproj/LocalizableTypes.strings index 0627f9d4f..34dbe7158 100644 --- a/iphone/Maps/LocalizedStrings/sl.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/sl.lproj/LocalizableTypes.strings @@ -604,3 +604,108 @@ "type.historic.anchor" = "Zgodovinsko sidro"; "type.historic.battlefield" = "Zgodovinsko bojišče"; "type.historic.archaeological_site" = "Arheološko najdišče"; +"type.historic.boundary_stone" = "Mejni kamen"; +"type.historic.cannon" = "Top"; +"type.historic.castle" = "Grad"; +"type.historic.castle.castrum" = "Rimska utrdba"; +"type.historic.castle.defensive" = "Obrambni grad"; +"type.historic.castle.fortified_church" = "Utrjena cerkev"; +"type.historic.castle.fortress" = "Trdnjava"; +"type.historic.castle.hillfort" = "Gradišče"; +"type.historic.castle.kremlin" = "Kremelj"; +"type.historic.castle.manor" = "Graščina"; +"type.historic.castle.palace" = "Palača"; +"type.historic.castle.shiro" = "Japonski grad"; +"type.historic.castle.stately" = "Dvorec"; +"type.historic.city_gate" = "Mestna vrata"; +"type.historic.citywalls" = "Mestno obzidje"; +"type.historic.fort" = "Utrdba"; +"type.historic.gallows" = "Vislice"; +"type.historic.locomotive" = "Zgodovinska lokomotiva"; +"type.historic.memorial" = "Spominsko obeležje"; +"type.historic.memorial.cross" = "Spominski križ"; +"type.historic.memorial.plaque" = "Spominska plošča"; +"type.historic.memorial.sculpture" = "Spominski kip"; +"type.historic.memorial.statue" = "Kip"; +"type.historic.memorial.stolperstein" = "Kamen spotike (Stolperstein)"; +"type.historic.stone" = "Zgodovinski kamen"; +"type.historic.memorial.war_memorial" = "Vojno spominsko obeležje"; +"type.historic.mine" = "Zgodovinski rudnik"; +"type.historic.monument" = "Spomenik"; +"type.historic.pillory" = "Sramotilni steber"; +"type.historic.ruins" = "Zgodovinske ruševine"; +"type.historic.ship" = "Zgodovinska ladja"; +"type.historic.tank" = "Zgodovinski tank"; +"type.historic.tomb" = "Grobnica"; +"type.man_made.cross" = "Križ"; +"type.historic.wayside_cross" = "Križ ob poti"; +"type.historic.wayside_shrine" = "Kapelica ob poti"; +"type.historic.wreck" = "Ladijske razbitine"; +"type.internet_access" = "Medmrežje"; +"type.internet_access.wlan" = "Medmrežje"; +"type.junction" = "Križišče"; +"type.junction.circular" = "Krožišče"; +"type.junction.roundabout" = "Krožišče"; +"type.landuse" = "Uporaba zemljišča"; +"type.landuse.allotments" = "Vrtne parcele"; +"type.landuse.basin" = "Vodni zadrževalnik"; +"type.landuse.brownfield" = "Zapuščeno industrijsko območje"; +"type.landuse.cemetery" = "Pokopališče"; +"type.landuse.cemetery.christian" = "Krščansko pokopališče"; +"type.landuse.religious" = "Versko območje"; +"type.landuse.commercial" = "Poslovno območje"; +"type.landuse.construction" = "Območje v gradnji"; +"type.landuse.education" = "Izobraževalno območje"; +"type.landuse.farmland" = "Obdelovana zemlja"; +"type.landuse.farmyard" = "Kmetija"; +"type.landuse.flowerbed" = "Cvetlična greda"; +"type.landuse.forest" = "Gozd"; +"type.landuse.forest.coniferous" = "Iglasti gozd"; +"type.landuse.forest.deciduous" = "Listnati gozd"; +"type.landuse.forest.mixed" = "Mešani gozd"; +"type.landuse.garages" = "Garaže"; +"type.landuse.grass" = "Trava"; +"type.landuse.greenhouse_horticulture" = "Rastlinjak"; +"type.landuse.industrial" = "Industrijsko območje"; +"type.landuse.landfill" = "Odlagališče odpadkov"; +"type.landuse.meadow" = "Travnik"; +"type.landuse.military" = "Vojaško območje"; +"type.landuse.orchard" = "Sadovnjak"; +"type.landuse.quarry" = "Kamnolom"; +"type.landuse.railway" = "Območje železnice"; +"type.landuse.recreation_ground" = "Rekreacijska površina"; +"type.landuse.reservoir" = "Vodni zbiralnik"; +"type.landuse.residential" = "Stanovanjsko območje"; +"type.landuse.retail" = "Trgovsko območje"; +"type.landuse.salt_pond" = "Soline"; +"type.landuse.village_green" = "Zelenica"; +"type.landuse.vineyard" = "Vinograd"; +"type.landuse.plant_nursery" = "Vrtnarstvo"; +"type.leisure" = "Površina za prostočasne dejavnosti"; +"type.leisure.bandstand" = "Glasbeni paviljon"; +"type.leisure.common" = "Javna površina"; +"type.leisure.dog_park" = "Park za pse"; +"type.leisure.escape_game" = "Soba pobega"; +"type.leisure.fitness_centre" = "Vadbeni prostor"; +"type.leisure.fitness_station" = "Vadbena postaja"; +"type.leisure.dance" = "Plesna dvorana"; +"type.leisure.garden" = "Vrt"; +"type.leisure.garden.residential" = "Stanovanjski vrt"; +"type.leisure.golf_course" = "Golf igrišče"; +"type.leisure.miniature_golf" = "Mali golf"; +"type.leisure.ice_rink" = "Drsališče"; +"type.leisure.indoor_play" = "Notranja igralnica"; +"type.leisure.marina" = "Pristan"; +"type.leisure.nature_reserve" = "Zavarovano območje narave"; +"type.leisure.outdoor_seating" = "Zunanje sedišče"; +"type.leisure.firepit" = "Ognjišče"; +"type.leisure.park" = "Park"; +"type.leisure.park.no.access" = "Zasebni park"; +"type.leisure.park.permissive" = "Park"; +"type.leisure.park.private" = "Zasebni park"; +"type.leisure.picnic_table" = "Miza za piknik"; +"type.leisure.pitch" = "Športno igrišče"; +"type.leisure.playground" = "Otroško igrišče"; +"type.leisure.recreation_ground" = "Rekreacijska površina"; +"type.leisure.sauna" = "Savna"; +"type.leisure.slipway" = "Splavilna klančina"; diff --git a/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings b/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings index e016b046f..cb0d69329 100644 --- a/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings +++ b/iphone/Maps/LocalizedStrings/tr.lproj/Localizable.strings @@ -683,7 +683,7 @@ "editor_edits_sent_message" = "Notunuz OpenStreetMap'e gönderilecektir"; "editor_comment_hint" = "Yorum…"; "editor_reset_edits_message" = "Tüm yerel değişiklikler sıfırlansın mı?"; -"editor_reset_edits_button" = "Sıfırla"; +"editor_reset_edits_button" = "Değişiklikleri gözden çıkar"; "editor_remove_place_message" = "Eklenen yer kaldırılsın mı?"; "editor_remove_place_button" = "Kaldır"; "editor_place_doesnt_exist" = "Bu yer yok"; diff --git a/iphone/Maps/LocalizedStrings/tr.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/tr.lproj/LocalizableTypes.strings index 4ba8156f9..66284acc9 100644 --- a/iphone/Maps/LocalizedStrings/tr.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/tr.lproj/LocalizableTypes.strings @@ -1462,7 +1462,7 @@ /* https://wiki.openstreetmap.org/wiki/Tag:leisure=sports_hall */ "type.leisure.sports_hall" = "Spor salonu"; -"type.amenity.studio" = "Stüdyo"; +"type.amenity.studio" = "Medya Stüdyosu"; "type.sport.diving" = "Yüksek Dalış Alanı"; "type.highway.ladder" = "Merdiven"; "type.man_made.crane" = "Vinç"; @@ -1492,3 +1492,12 @@ "type.amenity.charging_station.motorcar.small" = "Araç Şarj Noktası"; "type.amenity.bench.backless" = "Sırtı Açık Bank"; "type.amenity.sailing_school" = "Denizcilik Okulu"; +"type.natural.tree" = "Ağaç"; +"type.xmas.tree" = "Yılbaşı Ağacı"; +"type.man_made.telescope" = "Teleskop"; +"type.man_made.telescope.optical" = "Teleskop (Optik)"; +"type.man_made.telescope.radio" = "Teleskop (Radyo)"; +"type.man_made.telescope.gamma" = "Teleskop (Gama)"; +"type.man_made.observatory" = "Gözlemevi"; +"type.emergency.life_ring" = "Can simidi"; +"type.emergency.access_point" = "Acil Durum Noktası"; diff --git a/iphone/metadata/de-DE/description.txt b/iphone/metadata/de-DE/description.txt index 8ae8a6243..ce211b789 100644 --- a/iphone/metadata/de-DE/description.txt +++ b/iphone/metadata/de-DE/description.txt @@ -1,11 +1,11 @@ -Eine von der Community betriebene, kostenlose Open-Source Karten App, die auf OpenStreetMap Daten basiert. Transparent, datensparsam und nicht gewinnorientiert. +Eine von der Community betriebene, kostenlose Open-Source-Karten-App, die auf OpenStreetMap-Daten basiert. Transparent, datensparsam und nicht gewinnorientiert. ‣ Einfach und ausgereift: Essenzielle, leicht zu bedienende Funktionen, die einfach funktionieren. ‣ Offline-orientiert: Plane und navigiere im Ausland ohne Mobilfunkverbindung, finde Wegpunkte auf abgelegenen Wanderungen usw. Alle Funktionen sind für den Offline-Einsatz konzipiert. ‣ Datenschutzfreundlich: Die App wurde mit Fokus auf Privatsphäre entwickelt – keine Personenidentifikation, kein Tracking, keine Erfassung persönlicher Daten, keine Werbung. -‣ Spart Akku und Speicherplatz: Verbraucht nicht unnötig Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf deinem Gerät. +‣ Spart Akku und Speicherplatz: Verbraucht nicht unnötig viel Akku wie andere Navi-Apps. Kompakte Karten sparen Speicherplatz auf deinem Gerät. ‣ Kostenlos und von der Community entwickelt: Menschen wie du haben geholfen, die App zu entwickeln – durch das Hinzufügen von Orten zu OpenStreetMap, Testen von neuen Funktionen, Softwareentwicklung oder Spenden. -‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open Source +‣ Offen und transparent bei Entscheidungen und Finanzen, gemeinnützig und vollständig Open Source. Hauptfunktionen: • Detaillierte, herunterladbare Karten mit Orten, die bei Google Maps oft fehlen @@ -13,12 +13,12 @@ Hauptfunktionen: • Geh- und Radwege • Orte wie Restaurants, Tankstellen, Hotels, Geschäfte, Sehenswürdigkeiten und viele mehr • Suche nach Namen, Adressen oder Kategorien -• Navigation mit Sprachausgabe für Fußgänger, Radfahrer und Autos +• Navigation mit Sprachausgabe für Zufußgehende, Radfahrende und Autofahrende • Lesezeichen mit einem einzigen Tippen speichern • iCloud Synchronisation für deine Lesezeichen und GPS Tracks • Offline verfügbare Wikipedia-Artikel • U- und S-Bahn-Netze -• Aufzeichnen von GPS Tracks +• Aufzeichnen von GPS-Tracks • Import und Export von Favoriten und Routen im KML-, KMZ- oder GPX-Format • Dunkler Modus für die Nutzung bei Nacht • Kartenbearbeitung direkt in der App mit einem einfachen Editor From ff51988ddf2435b0a8f740efad9657e2c6fd95c5 Mon Sep 17 00:00:00 2001 From: Bastian Greshake Tzovaras Date: Sun, 28 Dec 2025 18:15:34 -0300 Subject: [PATCH 10/60] [editor] 'correct' tagging of outdoor fitness stations Signed-off-by: Bastian Greshake Tzovaras --- data/mapcss-mapping.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/mapcss-mapping.csv b/data/mapcss-mapping.csv index 575bcaf20..4bbbf72cc 100644 --- a/data/mapcss-mapping.csv +++ b/data/mapcss-mapping.csv @@ -1299,7 +1299,7 @@ amenity|water_point;1170; emergency|defibrillator;1171; emergency|fire_hydrant;1172; highway|services;1173; -leisure|fitness_station;1174; +leisure|fitness_station;[leisure=fitness_station][sport=fitness],[leisure=fitness_station];;;;1174; leisure|ice_rink;1175; leisure|marina;1176; shop|medical_supply;1177; From 9923a289516f6a1d8478374d3f956b30f6fdc629 Mon Sep 17 00:00:00 2001 From: rimas Date: Thu, 1 Jan 2026 21:42:36 +0100 Subject: [PATCH 11/60] [strings][search] Add lithuanian synonyms Signed-off-by: rimas Co-authored-by: rimas Co-committed-by: rimas --- data/categories_cuisines.txt | 87 +++++++++++++++++++++++++++++++++++- 1 file changed, 86 insertions(+), 1 deletion(-) diff --git a/data/categories_cuisines.txt b/data/categories_cuisines.txt index 3d69edd75..d74b380d1 100644 --- a/data/categories_cuisines.txt +++ b/data/categories_cuisines.txt @@ -15,6 +15,7 @@ id:Cepat saji it:Fast food ja:ファストフード ko:패스트 푸드 +lt:Greitas maistas nb:Hurtigmat pl:Fast food pt:Comida rápida @@ -51,6 +52,7 @@ id:Roti bagel it:Bagel ja:ベーグル ko:베이글 +lt:Beigeliai nb:Bagel pl:Bajgle pt:Bagel @@ -86,6 +88,7 @@ id:Sarapan it:Colazione ja:朝食 ko:아침 식사 +lt:Pusryčiai nb:Frokost pl:Śniadaniarnia pt:Pequeno-almoço @@ -122,6 +125,7 @@ id:Burger it:Hamburger ja:ハンバーガー ko:햄버거 +lt:Mėsainiai|Burgeriai nb:Burger pl:Burgery pt:Hambúrguer @@ -148,6 +152,7 @@ ru:Чай с шариками es:Té de burbujas eu:Burbuila tea hi:बुलबुले वाली चाय +lt:Burbulinė arbata|Boba uk:Бульбашковий чай be:Чай з бурбалкамі zh-Hans:珍珠奶茶 @@ -171,6 +176,7 @@ id:Kue it:Torte ja:ケーキ ko:케이크 +lt:Pyragaičiai|Tortai|Konditerija nb:Kake pl:Ciasta pt:Bolo|padaria @@ -207,6 +213,7 @@ id:Kopi it:Caffè ja:コーヒー ko:커피 +lt:Kava nb:Kaffe pl:Kawa pt:Café|cafetaria @@ -244,6 +251,7 @@ id:Kari it:Curry ja:カレー ko:카레 +lt:Karis nb:Karri pl:Curry pt:Caril @@ -280,6 +288,7 @@ id:Makan malam it:Ristorantino ja:ダイナー ko:식당 +lt:Užkandinė nb:Middag pl:Bar szybkiej obsługi pt:Diner @@ -316,6 +325,7 @@ id:Donat it:Ciambelle ja:ドーナッツ ko:도너츠 +lt:Spurgos nb:Smultring pl:Pączki pt:Donuts @@ -352,6 +362,7 @@ id:Ikan dan kentang goreng it:Fish and chips ja:フィッシュ・アンド・チップス ko:피쉬 앤 칩스 +lt:Žuvis su bulvytėmis nb:Fisk og pommes frites pl:Ryba i frytki pt:Peixe e batatas fritas @@ -388,6 +399,7 @@ id:Gorengan it:Fritture ja:揚げ物 ko:튀김 요리 +lt:Friterija|Gruzdinti patiekalai nb:Frityrt pl:Smażalnia pt:Fritos @@ -424,6 +436,7 @@ id:Panggangan it:Cucina alla griglia ja:グリル ko:그릴 +lt:Ant grotelių keptas maistas|Grotelės|Grilis nb:Grill pl:Dania z grilla pt:Grelhados @@ -463,6 +476,7 @@ id:Hotdog it:Hot dog ja:ホットドッグ ko:핫도그 +lt:Dešrainiai nb:Hotdog nl:Hotdogs pl:Hot-dogi @@ -500,6 +514,7 @@ id:Es_krim it:Gelateria|gelato ja:アイスクリーム ko:아이스크림 +lt:Ledai nb:Iskrem nl:Ijs pl:Lody @@ -537,6 +552,7 @@ id:Kebab it:Kebab ja:カバブ ko:케밥 +lt:Kebabai nb:Kebab nl:Kebab pl:Kebab @@ -571,6 +587,7 @@ id:Bakmi it:Noodles ja:麺類 ko:국수 +lt:Makaronai|nūdlai nb:Nudler pl:Noodle pt:Massa asiática @@ -610,6 +627,7 @@ id:Panekuk|Kue dadar it:Pancake|Crêpes ja:ホットケーキ|クレープ ko:팬케이크|크레이프 +lt:Blynai|Blyneliai|Lietiniai nb:Pannekake|Crepe nl:Pannenkoek pl:Naleśniki|Naleśnikarnia @@ -644,6 +662,7 @@ id:Pasta it:Pasta ja:パスタ ko:파스타 +lt:Itališki makaronai|Makaronai|Pasta nb:Pasta pl:Makarony pt:Massa @@ -680,6 +699,7 @@ id:Pizza it:Pizza ja:ピザ ko:피자 +lt:Picos|Pica|Picerija nb:Pizza pl:Pizza|pizzeria pt:Pizza|piza|pizaria @@ -715,6 +735,7 @@ id:Ramen it:Ramen ja:ラーメン ko:라면 +lt:Ramenai nb:Ramen pl:Ramen pt:Lámen|rāmen @@ -751,6 +772,7 @@ id:Roti isi it:Panini ja:サンドイッチ ko:샌드위치 +lt:Sumuštiniai nb:Smørbrød pl:Kanapki pt:Sanduíche|sande @@ -787,6 +809,7 @@ id:Sosis it:Salsicce ja:ソーセージ ko:소시지 +lt:Dešrelės nb:Pølse pl:Kiełbasa|Kiełbasiarnia pt:Salsicha|salsichas @@ -826,6 +849,7 @@ id:Hidangan laut|Ikan it:Frutti di mare|Pesce ja:シーフード|魚料理 ko:해산물|생선 +lt:Žuvies patiekalai|Žuvis|Jūros gėrybės nb:Sjømat|Fisk nl:Vis en zeevruchten|Vis pl:Owoce morza|Ryby @@ -860,6 +884,7 @@ id:Soba it:Soba ja:そば ko:메밀 국수 +lt:Soba makaronai|Grikių makaronai|Makaronai nb:Soba pl:Soba pt:Soba|sobá @@ -895,6 +920,7 @@ id:Restoran steik it:Bisteccheria ja:ステーキハウス ko:스테이크 하우스 +lt:Kepsnių restoranas|Kepsniai nb:Biffrestaurant pl:Steki pt:Churrasqueira|churrascaria @@ -931,6 +957,7 @@ id:Sushi it:Sushi ja:寿司 ko:초밥 +lt:Sušiai nb:Sushi pl:Sushi pt:Sushi @@ -967,6 +994,7 @@ id:Kudapan spanyol it:Tapas ja:タパス ko:타파스 +lt:Tapos nb:Tapas pl:Tapas pt:Tapas @@ -1003,6 +1031,7 @@ id:Teh it:Tè ja:紅茶 ko:차 +lt:Arbata nb:Te pl:Herbata|Herbaciarnia pt:Chá @@ -1039,6 +1068,7 @@ id:Masakan vegetarian it:Cucina vegetariana ja:ベジタリアン料理 ko:채식주의자 음식 +lt:Vegetariška virtuvė nb:Vegetarisk|Vegetarretter pl:Kuchnia wegetariańska pt:Vegetariana @@ -1077,6 +1107,7 @@ id:Masakan vegan|Masakan vegetarian it:Cucina vegana|Cucina vegetariana ja:ビーガン料理|ベジタリアン料理 ko:비건 음식|채식주의자 음식 +lt:Veganiška virtuvė|Vegetariška virtuvė nb:Vegansk|Vegetarisk|Vegetarretter pl:Kuchnia wegańska|Kuchnia wegetariańska pt:Vegana|vegetariana @@ -1112,6 +1143,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina africana # ja:アフリカ料理 # ko:아프리카식 음식 +# lt:Afrikietiška virtuvė|Afrikiečių virtuvė # nb:Afrikansk mat # pl:Kuchnia afrykańska # pt:Cozinha africana @@ -1146,6 +1178,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina americana # ja:アメリカ料理 # ko:미국식 음식 +# lt:Amerikietiška virtuvė|Amerikiečių virtuvė # nb:Amerikansk mat # pl:Kuchnia amerykańska # pt:Cozinha americana @@ -1180,6 +1213,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina araba # ja:アラビア料理 # ko:아랍식 음식 +# lt:Arabiška virtuvė|Arabų virtuvė # nb:Arabisk mat # pl:Kuchnia arabska # pt:Cozinha árabe @@ -1214,6 +1248,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina argentina # ja:アルゼンチン料理 # ko:아르헨티나식 음식 +# lt:Argentiniečių virtuvė|Argentinos virtuvė # nb:Argentinsk mat # pl:Kuchnia argentyńska # pt:Cozinha argentina @@ -1248,6 +1283,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina asiatica # ja:アジア料理 # ko:아시아식 음식 +# lt:Azijos virtuvė|Azijietiška virtuvė # nb:Asiatisk mat # pl:Kuchnia azjatycka # pt:Cozinha asiática @@ -1282,6 +1318,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina austriaca # ja:オーストリア料理 # ko:오스트리아식 음식 +# lt:Austrų virtuvė|Austrijos virtuvė # nb:Østerriksk mat # pl:Kuchnia austriacka # pt:Cozinha austríaca @@ -1316,6 +1353,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina balcanica # ja:バルカン料理 # ko:발칸 반도식 음식 +# lt:Balkanų virtuvė|Balkaniška virtuvė # nb:Balkan mat # pl:Kuchnia bałkańska # pt:Cozinha balcânica @@ -1350,6 +1388,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Barbecue # ja:バーベキュー # ko:바베큐 +# lt:Barbekiu|Kepsniai # nb:Grillmat # pl:Dania z grilla # pt:Churrasco @@ -1384,6 +1423,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina bavarese # ja:ババロア料理 # ko:바이에른식 음식 +# lt:Bavarų virtuvė|Bavarijos virtuvė # nb:Bayersk mat # pl:Kuchnia bawarska # pt:Cozinha bávara @@ -1418,6 +1458,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Gyūdon # ja:牛丼|ビーフボウル # ko:쇠고기 덮밥 +# lt:Jautienos ir ryžių dubuo|Bowl # nb:Biffbolle # pl:Gyūdon|Gyudon # pt:Tigela com carne bovina|Gyudon @@ -1452,6 +1493,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina brasiliana # ja:ブラジル料理 # ko:브라질식 음식 +# lt:Brazilų virtuvė|Brazilijos virtuvė # nb:Brasiliansk mat # pl:Kuchnia brazylijska # pt:Cozinha brasileira @@ -1486,6 +1528,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Osteria contadina # ja:ブッシェンシャンク # ko:와인 레스토랑 +# lt:Vyno taverna|Vyninė|Bušenšankas # nb:Buschenschank # pl:Buschenschank|Heuriger # pt:Buschenschank|Heuriger @@ -1520,6 +1563,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina caraibica # ja:カリブ料理 # ko:카리브식 음식 +# lt:Karibų virtuvė # nb:Karibisk mat # pl:Kuchnia karaibska # pt:Cozinha caribenha @@ -1554,6 +1598,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Pollo # ja:鶏肉 # ko:닭고기 +# lt:Vištienos patiekalai|Vištienos restoranas # nb:Kylling # pl:Kurczak # pt:Frango @@ -1588,6 +1633,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina cinese # ja:中華料理 # ko:중국식 음식 +# lt:Kinų virtuvė|Kiniečių virtuvė # nb:Kinesisk mat # pl:Kuchnia chińska # pt:Cozinha chinesa @@ -1622,6 +1668,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina croata # ja:クロアチア料理 # ko:크로아티아식 음식 +# lt:Kroatų virtuvė|Kroatijos virtuvė # nb:Kroatisk mat # pl:Kuchnia chorwacka # pt:Cozinha croata @@ -1656,6 +1703,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Gastronomia # ja:デリ # ko:델리 +# lt:Delikatesai # nb:Delikatesse # pl:Delikatesy # pt:Iguarias regionais|delicatesse @@ -1690,6 +1738,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina etiope # ja:エチオピア料理 # ko:에티오피아식 음식 +# lt:Etiopų virtuvė|Etiopijos virtuvė # nb:Etiopisk mat # pl:Kuchnia etiopska # pt:Cozinha etíope @@ -1711,7 +1760,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # cuisine-filipino # en:Filipino cuisine # ru:Филиппинская кухня -# g:Филипинска кухня +# bg:Филипинска кухня # ar:مطبخ فلبيني # cs:Filipínská kuchyně # da:Filippinsk @@ -1724,6 +1773,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina filippina # ja:フィリピン料理 # ko:필리핀식 음식 +# lt:Filipiniečių virtuvė|Filipinų virtuvė # nb:Filippinsk mat # pl:Kuchnia filipińska # pt:Cozinha filipina @@ -1758,6 +1808,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Ristorante elegante # ja:高級料理 # ko:고급 식당 +# lt:Prabangus restoranas|Restoranas # nb:Gourmet # pl:Wykwintna kuchnia # pt:Alta gastronomia @@ -1792,6 +1843,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina francese # ja:フランス料理 # ko:프랑스식 음식 +# lt:Prancūzų virtuvė|Prancūzijos virtuvė|Prancūziški patiekalai # nb:Fransk mat # pl:Kuchnia francuska # pt:Cozinha francesa @@ -1826,6 +1878,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina georgiana # ja:ジョージア料理 # ko:그루지야식 음식 +# lt:Kartvelų virtuvė|Sakartvelo virtuvė|Gruzinų virtuvė|Gruzijos virtuvė # nb:Georgisk mat # pl:Kuchnia gruzińska # pt:Cozinha georgiana @@ -1860,6 +1913,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina tedesca # ja:ドイツ料理 # ko:독일식 음식 +# lt:Vokiečių virtuvė|Vokiška virtuvė # nb:Tysk mat # pl:Kuchnia niemiecka # pt:Cozinha alemã @@ -1894,6 +1948,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina greca # ja:ギリシャ料理 # ko:그리스식 음식 +# lt:Graikų virtuvė|Graikijos virtuvė # nb:Gresk mat # pl:Kuchnia grecka # pt:Cozinha grega @@ -1928,6 +1983,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Heuriger # ja:ホイリゲ # ko:호이리거 +# lt:Vyno restoranas|Vyninė # nb:Heuriger # pl:Heuriger # pt:Heuriger @@ -1962,6 +2018,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina ungherese # ja:ハンガリー料理 # ko:헝가리식 음식 +# lt:Vengrų virtuvė|Vengriška virtuvė|Vengrijos virtuvė # nb:Ungarsk mat # pl:Kuchnia węgierska # pt:Cozinha húngara @@ -1996,6 +2053,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina indiana # ja:インド料理 # ko:인도식 음식 +# lt:Indų virtuvė|Indiška virtuvė|Indijos virtuvė|Indiškas maistas # nb:Indisk mat # pl:Kuchnia indyjska # pt:Cozinha indiana @@ -2030,6 +2088,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina indonesiana # ja:インドネシア料理 # ko:인도네시아식 음식 +# lt:Indoneziečių virtuvė|Indonezijos virtuvė # nb:Indonesisk mat # pl:Kuchnia indonezyjska # pt:Cozinha indonésia @@ -2064,6 +2123,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina internazionale # ja:国際料理 # ko:국제 음식 +# lt:Įvairių šalių virtuvė|Fusion # nb:Internasjonal mat # pl:Kuchnia międzynarodowa # pt:Cozinha internacional @@ -2098,6 +2158,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina irlandese # ja:アイルランド料理 # ko:아일랜드식 음식 +# lt:Airių virtuvė|Airiška virtuvė # nb:Irsk mat # pl:Kuchnia irlandzka # pt:Cozinha irlandesa @@ -2132,6 +2193,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina italiana # ja:イタリア料理 # ko:이탈리아식 음식 +# lt:Italų virtuvė|Itališka virtuvė # nb:Italiensk mat # pl:Kuchnia włoska # pt:Cozinha italiana @@ -2166,6 +2228,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina italiana, pizza # ja:イタリア料理;ピザ # ko:이탈리아식, 피자 +# lt:Itališka pica|Pica # nb:Italiensk mat;pizza # pl:Włoska, pizza # pt:Piza italiana|pizza italiana @@ -2200,6 +2263,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina giapponese # ja:日本料理 # ko:일본식 음식 +# lt:Japonų virtuvė|Japoniška virtuvė|Japonų patiekalai # nb:Japansk mat # pl:Kuchnia japońska # pt:Cozinha japonesa @@ -2234,6 +2298,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina coreana # ja:韓国料理 # ko:한국식 음식 +# lt:Korėjiečių virtuvė|Korėjietiška virtuvė|Korėjiečių patiekalai # nb:Koreansk mat # pl:Kuchnia koreańska # pt:Cozinha coreana @@ -2268,6 +2333,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina laotiana # ja:ラオス料理 # ko:라오식 음식 +# lt:Laosiečių virtuvė|Laoso virtuvė # nb:Lao mat # pl:Kuchnia laoska # pt:Cozinha laosiana @@ -2302,6 +2368,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina libanese # ja:レバノン料理 # ko:레바논식 음식 +# lt:Libaniečių virtuvė|Libano virtuvė|Libanietiška virtuvė # nb:Libanesisk mat # pl:Kuchnia libańska # pt:Cozinha libanesa @@ -2336,6 +2403,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina locale # ja:地元料理 # ko:현지식 음식 +# lt:Vietinė virtuvė|Vietos virtuvė # nb:Lokal mat # pl:Kuchnia lokalna # pt:Cozinha local @@ -2370,6 +2438,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina malgascia # ja:マダガスカル料理 # ko:마다가스카르식 음식 +# lt:Malagasių virtuvė # nb:Gassisk # pl:Kuchnia malgaska # pt:Cozinha malgaxe @@ -2404,6 +2473,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina malese # ja:マレーシア料理 # ko:말레이시아식 음식 +# lt:Malajų virtuvė|Malaizijos virtuvė|Malajietiška virtuvė # nb:Malaysisk mat # pl:Kuchnia malezyjska # pt:Cozinha malaia @@ -2438,6 +2508,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina mediterranea # ja:地中海料理 # ko:지중해식 음식 +# lt:Viduržemio jūros regiono virtuvė|Viduržemio virtuvė # nb:Middelhavsmat # pl:Kuchnia śródziemnomorska # pt:Cozinha mediterrânea @@ -2472,6 +2543,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina messicana # ja:メキシコ料理 # ko:멕시코식 음식 +# lt:Meksikiečių virtuvė|Meksikietiška virtuvė|Meksikos virtuvė # nb:Meksikansk mat # pl:Kuchnia meksykańska # pt:Cozinha mexicana @@ -2506,6 +2578,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina marocchina # ja:モロッコ料理 # ko:모로코식 음식 +# lt:Marokiečių virtuvė|Marokietiška virtuvė|Maroko virtuvė # nb:Marokkansk mat # pl:Kuchnia marokańska # pt:Cozinha marroquina @@ -2540,6 +2613,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina orientale # ja:東洋料理 # ko:극동식 음식 +# lt:Tolimųjų rytų virtuvė|Rytietiška virtuvė # nb:Orientalsk mat # pl:Kuchnia orientalna # pt:Cozinha oriental @@ -2574,6 +2648,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina persiana # ja:ペルシャ料理 # ko:페르시아식 음식 +# lt:Persų virtuvė|Persijos virtuvė # nb:Persisk mat # pl:Kuchnia perska # pt:Cozinha persa @@ -2608,6 +2683,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina peruviana # ja:ペルー料理 # ko:페루식 음식 +# lt:Perujiečių virtuvė|Peru virtuvė # nb:Peruansk mat # pl:Kuchnia peruwiańska # pt:Cozinha peruana @@ -2642,6 +2718,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina polacca # ja:ポーランド料理 # ko:폴란드식 음식 +# lt:Lenkų virtuvė|Lenkiška virtuvė|Lenkijos virtuvė # nb:Polsk mat # pl:Kuchnia polska # pt:Cozinha polonesa @@ -2676,6 +2753,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina portoghese # ja:ポルトガル料理 # ko:포르투갈식 음식 +# lt:Portugalų virtuvė|Portugališka virtuvė|Portugalijos virtuvė # nb:Portugisisk mat # pl:Kuchnia portugalska # pt:Cozinha portuguesa @@ -2710,6 +2788,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina regionale # ja:郷土料理 # ko:지역적 음식 +# lt:Regiono virtuvė|Regioninė virtuvė # nb:Regional mat # pl:Kuchnia regionalna # pt:Cozinha regional @@ -2744,6 +2823,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina russa # ja:ロシア料理 # ko:러시아식 음식 +# lt:Rusų virtuvė|Rusiška virtuvė # nb:Russisk mat # pl:Kuchnia rosyjska # pt:Cozinha russa @@ -2778,6 +2858,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Pancake salati # ja:おいしいホットケーキ # ko:맛좋은 팬케이크 +# lt:Pikantiški blynai|Pikantiški lietiniai # nb:Fylte pannekaker # pl:Wytrawne naleśniki # pt:Tortas salgadas @@ -2812,6 +2893,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina spagnola # ja:スペイン料理 # ko:스페인식 음식 +# lt:Ispanų virtuvė|Ispaniška virtuvė # nb:Spansk mat # pl:Kuchnia hiszpańska # pt:Cozinha espanhola @@ -2846,6 +2928,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina tailandese # ja:タイ料理 # ko:타이식 음식 +# lt:Tajų virtuvė|Tailandietiška virtuvė|Tailando virtuvė # nb:Thaimat # pl:Kuchnia tajska # pt:Cozinha tailandesa @@ -2880,6 +2963,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina turca # ja:トルコ料理 # ko:터키식 음식 +# lt:Turkų virtuvė|Turkiška virtuvė|Turkijos virtuvė # nb:Tyrkisk mat # pl:Kuchnia turecka # pt:Cozinha turca @@ -2914,6 +2998,7 @@ sr:Веганска|Вегетаријанска|Вегетаријанци|Ве # it:Cucina vietnamita # ja:ベトナム料理 # ko:베트남식 음식 +# lt:Vietnamietiška virtuvė|Vietnamiečių virtuvė # nb:Vietnamesisk mat # pl:Kuchnia wietnamska # pt:Cozinha vietnamita From 50130f9880b736bc3c656f95f0b8bd0a3c731dbe Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Thu, 1 Jan 2026 17:33:52 +0100 Subject: [PATCH 12/60] [android] Remove useless text style property Signed-off-by: Jean-Baptiste --- android/app/src/main/res/values/styles-text.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/android/app/src/main/res/values/styles-text.xml b/android/app/src/main/res/values/styles-text.xml index 1be168e88..364675e13 100644 --- a/android/app/src/main/res/values/styles-text.xml +++ b/android/app/src/main/res/values/styles-text.xml @@ -2,8 +2,6 @@ + + From 07e42c0626838c00f31312334b120230435325b5 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Sat, 3 Jan 2026 10:35:40 +0100 Subject: [PATCH 26/60] [android] Add comment about issues with Material library Signed-off-by: Jean-Baptiste --- android/app/build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/android/app/build.gradle b/android/app/build.gradle index 447f621f2..3b95321d7 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -352,6 +352,7 @@ dependencies { implementation libs.androidx.work.runtime implementation libs.androidx.lifecycle.process implementation libs.androidx.documentfile + // 1.13 Material library version doesn't render properly alpha properties on map buttons implementation libs.android.material // Fix for app/organicmaps/util/FileUploadWorker.java:14: error: cannot access ListenableFuture // https://github.com/organicmaps/organicmaps/issues/6106 From 5e8d2e1a59dac536490c078ea4d6221eb42a6437 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Fri, 2 Jan 2026 20:39:03 +0100 Subject: [PATCH 27/60] [android] Use Material Cardview foreach item phone Signed-off-by: Jean-Baptiste --- android/app/src/main/res/layout/item_phone.xml | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/android/app/src/main/res/layout/item_phone.xml b/android/app/src/main/res/layout/item_phone.xml index a0d99e72f..80a701d00 100644 --- a/android/app/src/main/res/layout/item_phone.xml +++ b/android/app/src/main/res/layout/item_phone.xml @@ -1,11 +1,15 @@ - + @@ -25,7 +29,6 @@ android:layout_marginStart="@dimen/margin_half" android:layout_marginEnd="@dimen/margin_half" android:layout_toStartOf="@id/delete_icon" - android:textColorHint="?android:textColorSecondary" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toStartOf="@+id/delete_icon" app:layout_constraintStart_toEndOf="@+id/phone_icon" @@ -41,7 +44,6 @@ + From f38953458d1adad05407ac7139e69e7206de3af6 Mon Sep 17 00:00:00 2001 From: matheusgomesms Date: Sun, 4 Jan 2026 19:31:56 +0100 Subject: [PATCH 28/60] [ios] Fix project.pbxproj Signed-off-by: matheusgomesms Co-authored-by: matheusgomesms Co-committed-by: matheusgomesms --- iphone/Maps/Maps.xcodeproj/project.pbxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj index cb6f1f206..066026e7a 100644 --- a/iphone/Maps/Maps.xcodeproj/project.pbxproj +++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj @@ -790,7 +790,7 @@ 27AF18552E1DB62F00CD41E2 /* PowerSavingMode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PowerSavingMode.swift; sourceTree = ""; }; 27AF18572E1DB63900CD41E2 /* Appearance.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Appearance.swift; sourceTree = ""; }; 27AF18592E1DB64400CD41E2 /* AnnouncingSpeedTrapsWhileVoiceRouting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnnouncingSpeedTrapsWhileVoiceRouting.swift; sourceTree = ""; }; - 27FDBF202EEEFC830045621D /* mapcss-mapping.csv */ = {isa = PBXFileReference; lastKnownFileType = text; name = "mapcss-mapping.csv"; path = "/Users/yannikbloscheck/Apps/CoMaps/Code/data/mapcss-mapping.csv"; sourceTree = ""; }; + 27FDBF202EEEFC830045621D /* mapcss-mapping.csv */ = {isa = PBXFileReference; lastKnownFileType = text; name = "mapcss-mapping.csv"; path = "../data/mapcss-mapping.csv"; sourceTree = SOURCE_ROOT; }; 28A0AB4B0D9B1048005BE974 /* Maps_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = Maps_Prefix.pch; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; 29B97316FDCFA39411CA2CEA /* main.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; indentWidth = 2; path = main.mm; sourceTree = ""; tabWidth = 2; }; 30034C5C2B3F0B74005D961A /* az */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = az; path = az.lproj/Localizable.strings; sourceTree = ""; }; From e869fe1da1cf0bd1ba75e804037ebdf3f69c248f Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Sat, 3 Jan 2026 23:34:04 +0100 Subject: [PATCH 29/60] [android] Fix custom dialog styles Signed-off-by: Jean-Baptiste --- .../ChooseBookmarkCategoryFragment.java | 1 + .../ChooseBookmarksSortingTypeFragment.java | 1 + .../organicmaps/widget/StackedButtonsDialog.java | 1 + .../layout/choose_bookmark_category_fragment.xml | 16 ++++++++++++---- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarkCategoryFragment.java b/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarkCategoryFragment.java index 4f421d90d..79332d031 100644 --- a/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarkCategoryFragment.java +++ b/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarkCategoryFragment.java @@ -42,6 +42,7 @@ public class ChooseBookmarkCategoryFragment public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View root = inflater.inflate(R.layout.choose_bookmark_category_fragment, container, false); + getDialog().getWindow().setBackgroundDrawableResource(android.R.color.transparent); mRecycler = root.findViewById(R.id.recycler); mRecycler.setLayoutManager(new LinearLayoutManager(requireActivity())); return root; diff --git a/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarksSortingTypeFragment.java b/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarksSortingTypeFragment.java index bc145e1e4..85759fd48 100644 --- a/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarksSortingTypeFragment.java +++ b/android/app/src/main/java/app/organicmaps/bookmarks/ChooseBookmarksSortingTypeFragment.java @@ -77,6 +77,7 @@ public class ChooseBookmarksSortingTypeFragment public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); + getDialog().getWindow().setBackgroundDrawableResource(android.R.color.transparent); final Bundle args = getArguments(); if (args == null) diff --git a/android/app/src/main/java/app/organicmaps/widget/StackedButtonsDialog.java b/android/app/src/main/java/app/organicmaps/widget/StackedButtonsDialog.java index 945bba16e..eb5ec86be 100644 --- a/android/app/src/main/java/app/organicmaps/widget/StackedButtonsDialog.java +++ b/android/app/src/main/java/app/organicmaps/widget/StackedButtonsDialog.java @@ -61,6 +61,7 @@ public class StackedButtonsDialog extends AppCompatDialog implements View.OnClic setCancelable(mCancelable); setOnCancelListener(mCancelListener); setContentView(R.layout.dialog_stacked_buttons); + getWindow().setBackgroundDrawableResource(android.R.color.transparent); TextView title = findViewById(R.id.tv__title); UiUtils.setTextAndHideIfEmpty(title, mTitle); diff --git a/android/app/src/main/res/layout/choose_bookmark_category_fragment.xml b/android/app/src/main/res/layout/choose_bookmark_category_fragment.xml index fb1b45087..174b3daec 100644 --- a/android/app/src/main/res/layout/choose_bookmark_category_fragment.xml +++ b/android/app/src/main/res/layout/choose_bookmark_category_fragment.xml @@ -1,9 +1,15 @@ - + @@ -21,9 +27,11 @@ android:layout_marginEnd="@dimen/margin_base_plus" android:layout_marginStart="@dimen/margin_base_plus" tools:text="Select list"/> - + android:scrollbars="vertical"/> + From fc96d17ed75696f34ab4316e0fe3b7a8466888be Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Date: Sun, 4 Jan 2026 09:22:00 +0100 Subject: [PATCH 30/60] [android] Remove background apply on item phone view Signed-off-by: Jean-Baptiste --- android/app/src/main/res/layout/item_phone.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/android/app/src/main/res/layout/item_phone.xml b/android/app/src/main/res/layout/item_phone.xml index 80a701d00..a6a4f9b46 100644 --- a/android/app/src/main/res/layout/item_phone.xml +++ b/android/app/src/main/res/layout/item_phone.xml @@ -9,7 +9,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="@dimen/margin_half" - android:background="?cardBackground" android:paddingStart="@dimen/margin_half_plus" android:paddingEnd="@dimen/margin_half_plus"> From 3e75e5e802c60ff0fc0c87eca8d9198061286668 Mon Sep 17 00:00:00 2001 From: thesupertechie Date: Mon, 5 Jan 2026 10:42:53 +0100 Subject: [PATCH 31/60] [core] Add Tamil TTS support This PR adds TTS voice instruction support for the Tamil language. Co-authored-by: thesupertechie Co-committed-by: thesupertechie --- data/sound-strings/ta.json/localize.json | 108 +++++++++++++++++++++++ libs/platform/languages.hpp | 3 +- 2 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 data/sound-strings/ta.json/localize.json diff --git a/data/sound-strings/ta.json/localize.json b/data/sound-strings/ta.json/localize.json new file mode 100644 index 000000000..b005483b9 --- /dev/null +++ b/data/sound-strings/ta.json/localize.json @@ -0,0 +1,108 @@ +{ +"make_a_slight_right_turn":"லேசாக வலதுபுறம் திரும்புங்கள்.", +"make_a_slight_right_turn_street":"NULL", +"make_a_slight_right_turn_street_verb":"NULL", +"make_a_right_turn":"வலதுபுறமாக திரும்புங்கள்.", +"make_a_right_turn_street":"NULL", +"make_a_sharp_right_turn":"கூர்மையாக வலதுபுறம் திரும்புங்கள்.", +"make_a_sharp_right_turn_street":"NULL", +"enter_the_roundabout":"ரவுண்டபௌட்டை நுழையுங்கள்.", +"enter_the_roundabout_street":"NULL", +"enter_the_roundabout_street_verb":"NULL", +"leave_the_roundabout":"ரவுண்டபௌட்டை வெளியேறுங்கள்.", +"leave_the_roundabout_street":"NULL", +"leave_the_roundabout_street_verb":"NULL", +"make_a_slight_left_turn":"லேசாக இடதுபுறம் திரும்புங்கள்.", +"make_a_slight_left_turn_street":"NULL", +"make_a_slight_left_turn_street_verb":"NULL", +"make_a_left_turn":"இடதுபுறமாக திரும்புங்கள்.", +"make_a_left_turn_street":"NULL", +"make_a_sharp_left_turn":"கூர்மையாக இடதுபுறம் திரும்புங்கள்.", +"make_a_sharp_left_turn_street":"NULL", +"make_a_u_turn":"U-வழியில் திரும்புங்கள்.", +"make_a_u_turn_street":"NULL", +"make_a_u_turn_street_verb":"NULL", +"go_straight":"நேரா போங்க.", +"exit":"வெளியேறுங்கள்.", +"onto":"நோக்கி", +"take_exit_number":"வெளியேறும் வழி எடுங்கள்", +"take_exit_number_street_verb":"NULL", +"route_recalculating":"வழி மறுபடி கணிக்கிறது", +"destination":"நீங்கள் வருவீர்கள்.", +"you_have_reached_the_destination":"நீங்கள் வந்துவிட்டீர்கள்..", +"in_50_meters":"ஐம்பது மீட்டரில்", +"in_100_meters":"நூறு மீட்டரில்", +"in_200_meters":"இருநூறு மீட்டரில்", +"in_250_meters":"இருநூற்று ஐம்பது மீட்டரில்", +"in_300_meters":"முன்னூறு மீட்டரில்", +"in_400_meters":"நானூறு மீட்டரில்", +"in_500_meters":"ஐநூறு மீட்டரில்", +"in_600_meters":"அறுநூறு மீட்டரில்", +"in_700_meters":"எழுநூறு மீட்டரில்", +"in_750_meters":"எழுநூறு ஐம்பது மீட்டரில்", +"in_800_meters":"எண்ணூறு மீட்டரில்", +"in_900_meters":"தொள்ளாயிரம் மீட்டரில்", +"in_1_kilometer":"ஒரு கிலோமீட்டரில்", +"in_1_5_kilometers":"ஒன்றரை கிலோமீட்டரில்", +"in_2_kilometers":"இரண்டு கிலோமீட்டரில்", +"in_2_5_kilometers":"இரண்டரை கிலோமீட்டரில்", +"in_3_kilometers":"மூன்று கிலோமீட்டரில்", +"then":"அடுத்தது", +"dist_direction_onto_street":"%1$s %4$s %3$s %5$s %2$s", +"take_the_1_exit":"ஒன்றாம் வெளியேறும் வழி எடுங்கள்.", +"take_the_1_exit_street":"NULL", +"take_the_1_exit_street_verb":"NULL", +"take_the_2_exit":"இரண்டாம் வெளியேறும் வழி எடுங்கள்.", +"take_the_2_exit_street":"NULL", +"take_the_2_exit_street_verb":"NULL", +"take_the_3_exit":"மூன்றாம் வெளியேறும் வழி எடுங்கள்.", +"take_the_3_exit_street":"NULL", +"take_the_3_exit_street_verb":"NULL", +"take_the_4_exit":"நான்காவது வெளியேறும் வழி எடுங்கள்.", +"take_the_4_exit_street":"NULL", +"take_the_4_exit_street_verb":"NULL", +"take_the_5_exit":"ஐந்தாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_5_exit_street":"NULL", +"take_the_5_exit_street_verb":"NULL", +"take_the_6_exit":"ஆறாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_6_exit_street":"NULL", +"take_the_6_exit_street_verb":"NULL", +"take_the_7_exit":"ஏழாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_7_exit_street":"NULL", +"take_the_7_exit_street_verb":"NULL", +"take_the_8_exit":"எட்டாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_8_exit_street":"NULL", +"take_the_8_exit_street_verb":"NULL", +"take_the_9_exit":"ஒன்பதாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_9_exit_street":"NULL", +"take_the_9_exit_street_verb":"NULL", +"take_the_10_exit":"பத்தாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_10_exit_street":"NULL", +"take_the_10_exit_street_verb":"NULL", +"take_the_11_exit":"பதினொன்றாவது வெளியேறும் வழி எடுங்கள்.", +"take_the_11_exit_street":"NULL", +"take_the_11_exit_street_verb":"NULL", +"in_50_feet":"ஐம்பது அடியில்", +"in_100_feet":"நூறு அடியில்", +"in_200_feet":"இருநூறு அடியில்", +"in_300_feet":"முன்னூறு அடியில்", +"in_400_feet":"நானூறு அடியில்", +"in_500_feet":"ஐநூறு அடியில்", +"in_600_feet":"அறுநூறு அடியில்", +"in_700_feet":"எழுநூறு அடியில்", +"in_800_feet":"எண்ணூறு அடியில்", +"in_900_feet":"தொள்ளாயிரம் அடியில்", +"in_1000_feet":"ஆயிரம் அடியில்", +"in_1500_feet":"ஆயிரம் ஐநூறு அடியில்", +"in_2000_feet":"இரண்டு ஆயிரம் அடியில்", +"in_2500_feet":"இரண்டு ஆயிரம் ஐநூறு அடியில்", +"in_3000_feet":"மூன்று ஆயிரம் அடியில்", +"in_3500_feet":"மூன்று ஆயிரம் ஐநூறு அடியில்", +"in_4000_feet":"நான்கு ஆயிரம் அடியில்", +"in_4500_feet":"நான்கு ஆயிரம் ஐநூறு அடியில்", +"in_5000_feet":"ஐந்து ஆயிரம் அடியில்", +"in_1_mile":"ஒன்று மைலில்", +"in_1_5_miles":"ஒன்றரை மைலில்", +"in_2_miles":"இரண்டு மைலில்", +"unknown_camera":"கேமரா முன்னால் இருக்கிறது" +} diff --git a/libs/platform/languages.hpp b/libs/platform/languages.hpp index 31bbcc9b3..b62192e45 100644 --- a/libs/platform/languages.hpp +++ b/libs/platform/languages.hpp @@ -27,7 +27,7 @@ namespace routing::turns::sound * - All other variants default to `zh-Hans` (Simplified Chinese). * */ -std::array, 42> constexpr kLanguageList = {{ +std::array, 43> constexpr kLanguageList = {{ {"en", "English"}, {"id", "Bahasa Indonesia"}, {"ca", "Català"}, @@ -82,5 +82,6 @@ std::array, 42> constexpr kLanguag #endif {"ja", "日本語"}, {"ko", "한국어"}, + {"ta", "தமிழ்"}, }}; } // namespace routing::turns::sound From 43ffd199a4e5fe551f9c6659299a17b8bfb070b6 Mon Sep 17 00:00:00 2001 From: gedankenstuecke Date: Mon, 5 Jan 2026 13:23:29 +0100 Subject: [PATCH 32/60] [docs] Update CB teams description Keeps the docs up to date on the currently existing teams Signed-off-by: gedankenstuecke --- docs/TEAMS.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/TEAMS.md b/docs/TEAMS.md index 8525e0d72..26ee3f6a3 100644 --- a/docs/TEAMS.md +++ b/docs/TEAMS.md @@ -8,6 +8,12 @@ CoMaps is led by community contributors, with functional domains occasionally es Active contributors on different projects around CoMaps +## Mergers + +- [compaps/mergers](https://codeberg.org/org/comaps/teams/mergers) + +Contributors who have merge permissions on the `comaps/comaps` repository, can do "official reviews" (those that count towards blocking merges), and can create branches/tags + ## Owners - [@comaps/owners](https://codeberg.org/org/comaps/teams/owners) @@ -18,7 +24,7 @@ Owners of the CoMaps team and repositories on Codeberg - [@comaps/admins](https://codeberg.org/org/comaps/teams/admins) -- Administrators of different repositories on Codeberg +Administrators of different repositories on Codeberg ## Android From 18ce55afa330982f9585718b24fbabf6f9fbf773 Mon Sep 17 00:00:00 2001 From: gedankenstuecke Date: Mon, 5 Jan 2026 13:27:42 +0100 Subject: [PATCH 33/60] incorp review feedback --- docs/TEAMS.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/TEAMS.md b/docs/TEAMS.md index 26ee3f6a3..35dbedea2 100644 --- a/docs/TEAMS.md +++ b/docs/TEAMS.md @@ -8,12 +8,6 @@ CoMaps is led by community contributors, with functional domains occasionally es Active contributors on different projects around CoMaps -## Mergers - -- [compaps/mergers](https://codeberg.org/org/comaps/teams/mergers) - -Contributors who have merge permissions on the `comaps/comaps` repository, can do "official reviews" (those that count towards blocking merges), and can create branches/tags - ## Owners - [@comaps/owners](https://codeberg.org/org/comaps/teams/owners) @@ -26,6 +20,12 @@ Owners of the CoMaps team and repositories on Codeberg Administrators of different repositories on Codeberg +## Mergers + +- [compaps/mergers](https://codeberg.org/org/comaps/teams/mergers) + +Contributors who have merge permissions on CoMaps repositories, can do "official reviews" (those that count towards PR approvals), and can create branches/tags. + ## Android - [@comaps/android](https://codeberg.org/org/comaps/teams) From de1c0a061dbe1f243f6d004a12161495d671a916 Mon Sep 17 00:00:00 2001 From: "Chris H. Meyer" Date: Sun, 4 Jan 2026 13:33:08 +0100 Subject: [PATCH 34/60] [styles] Set text color of fortress and other castles Signed-off-by: Chris H. Meyer --- data/styles/default/include/Icons_Label_Colors.mapcss | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/data/styles/default/include/Icons_Label_Colors.mapcss b/data/styles/default/include/Icons_Label_Colors.mapcss index a1ae3276e..c5b1bdbab 100644 --- a/data/styles/default/include/Icons_Label_Colors.mapcss +++ b/data/styles/default/include/Icons_Label_Colors.mapcss @@ -72,6 +72,14 @@ node[amenity=conference_centre], node[amenity=exhibition_centre], node[amenity=place_of_worship] node[amenity=social_facility], +node[historic=castle][castle_type=castrum], +node[historic=castle][castle_type=defensive], +node[historic=castle][castle_type=fortified_church], +node[historic=castle][castle_type=fortress], +node[historic=castle][castle_type=hillfort], +node[historic=castle][castle_type=kremlin], +node[historic=castle][castle_type=shiro], +node[historic=fortress], node[historic=ship], node[leisure=hackerspace], node[social_facility], From 93b35454eb43201303414c8352e1a59b4c41c0c4 Mon Sep 17 00:00:00 2001 From: "Chris H. Meyer" Date: Mon, 5 Jan 2026 18:24:30 +0100 Subject: [PATCH 35/60] [styles] Fix missing comma Signed-off-by: Chris H. Meyer --- data/styles/default/include/Icons_Label_Colors.mapcss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/styles/default/include/Icons_Label_Colors.mapcss b/data/styles/default/include/Icons_Label_Colors.mapcss index c5b1bdbab..7fa6f3c07 100644 --- a/data/styles/default/include/Icons_Label_Colors.mapcss +++ b/data/styles/default/include/Icons_Label_Colors.mapcss @@ -70,7 +70,7 @@ node[amenity=arts_centre], node[amenity=community_centre], node[amenity=conference_centre], node[amenity=exhibition_centre], -node[amenity=place_of_worship] +node[amenity=place_of_worship], node[amenity=social_facility], node[historic=castle][castle_type=castrum], node[historic=castle][castle_type=defensive], From 13d7def519ba12abc6c89821a3085bc33a1ac56f Mon Sep 17 00:00:00 2001 From: Yannik Bloscheck Date: Mon, 5 Jan 2026 18:18:54 +0100 Subject: [PATCH 36/60] [ios] Fix file path Signed-off-by: Yannik Bloscheck --- iphone/Maps/Maps.xcodeproj/project.pbxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj index 066026e7a..3318a9967 100644 --- a/iphone/Maps/Maps.xcodeproj/project.pbxproj +++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj @@ -790,7 +790,7 @@ 27AF18552E1DB62F00CD41E2 /* PowerSavingMode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PowerSavingMode.swift; sourceTree = ""; }; 27AF18572E1DB63900CD41E2 /* Appearance.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Appearance.swift; sourceTree = ""; }; 27AF18592E1DB64400CD41E2 /* AnnouncingSpeedTrapsWhileVoiceRouting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnnouncingSpeedTrapsWhileVoiceRouting.swift; sourceTree = ""; }; - 27FDBF202EEEFC830045621D /* mapcss-mapping.csv */ = {isa = PBXFileReference; lastKnownFileType = text; name = "mapcss-mapping.csv"; path = "../data/mapcss-mapping.csv"; sourceTree = SOURCE_ROOT; }; + 27FDBF202EEEFC830045621D /* mapcss-mapping.csv */ = {isa = PBXFileReference; lastKnownFileType = text; name = "mapcss-mapping.csv"; path = "../../data/mapcss-mapping.csv"; sourceTree = SOURCE_ROOT; }; 28A0AB4B0D9B1048005BE974 /* Maps_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; indentWidth = 2; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = Maps_Prefix.pch; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; 29B97316FDCFA39411CA2CEA /* main.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; indentWidth = 2; path = main.mm; sourceTree = ""; tabWidth = 2; }; 30034C5C2B3F0B74005D961A /* az */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = az; path = az.lproj/Localizable.strings; sourceTree = ""; }; From fe5d4f5286ac93497f9c24d484db5dc647e2bb65 Mon Sep 17 00:00:00 2001 From: Viktor Govako Date: Mon, 20 Oct 2025 11:32:33 -0300 Subject: [PATCH 37/60] [classifier] Added railway=miniature. Signed-off-by: Viktor Govako Co-authored-by: Chris H. Meyer --- data/mapcss-mapping.csv | 6 +++--- data/styles/default/include/Roads.mapcss | 11 +++++++++++ data/styles/default/include/priorities_3_FG.prio.txt | 5 +++++ data/styles/outdoors/include/Roads.mapcss | 3 +++ data/styles/outdoors/include/priorities_3_FG.prio.txt | 5 +++++ data/styles/vehicle/include/Roads.mapcss | 10 ++++++++++ data/styles/vehicle/include/priorities_3_FG.prio.txt | 5 +++++ 7 files changed, 42 insertions(+), 3 deletions(-) diff --git a/data/mapcss-mapping.csv b/data/mapcss-mapping.csv index 4bbbf72cc..13e72f73c 100644 --- a/data/mapcss-mapping.csv +++ b/data/mapcss-mapping.csv @@ -757,9 +757,9 @@ highway|track|grade5|permissive;[highway=track][tracktype=grade5][access=permiss lateral|port;[seamark:buoy_lateral:category=port],[seamark:beacon_lateral:category=port][seamark:beacon_lateral:shape=tower],[seamark:beacon_lateral:category=port][seamark:beacon_lateral:shape=lattice],[seamark:beacon_lateral:category=port][seamark:beacon_lateral:shape=pile],[seamark:beacon_lateral:category=port][seamark:beacon_lateral:shape=buoyant];;;;632; lateral|starboard;[seamark:buoy_lateral:category=starboard],[seamark:beacon_lateral:category=starboard][seamark:beacon_lateral:shape=tower],[seamark:beacon_lateral:category=starboard][seamark:beacon_lateral:shape=lattice],[seamark:beacon_lateral:category=starboard][seamark:beacon_lateral:shape=pile],[seamark:beacon_lateral:category=starboard][seamark:beacon_lateral:shape=buoyant];;;;633; highway|tertiary_link|tunnel;[highway=tertiary_link][tunnel?];;name;int_name;634; -deprecated|deprecated;635;x -deprecated|deprecated;636;x -deprecated|deprecated;637;x +railway|miniature;635; +railway|miniature|bridge;[railway=miniature][bridge?];;name;int_name;636; +railway|miniature|tunnel;[railway=miniature][tunnel?];;name;int_name;637; deprecated|deprecated;638;x deprecated|deprecated;639;x deprecated|deprecated;640;x diff --git a/data/styles/default/include/Roads.mapcss b/data/styles/default/include/Roads.mapcss index c155f5d55..9e291eca5 100644 --- a/data/styles/default/include/Roads.mapcss +++ b/data/styles/default/include/Roads.mapcss @@ -1195,6 +1195,7 @@ line|z14-[railway=monorail], line|z15-[railway=narrow_gauge], line|z15-[railway=construction], line|z15-[railway=preserved], +line|z16-[railway=miniature], line|z16-[railway=disused], line|z16-[railway=abandoned], {color: @railway; opacity: 0.7;} @@ -1214,12 +1215,14 @@ line|z13-[railway=rail][bridge?]::bridgewhite, line|z13-[railway=subway][bridge?]::bridgewhite, line|z13-[railway=light_rail][bridge?]::bridgewhite, line|z15-[railway=preserved][bridge?]::bridgewhite, +line|z16-[railway=miniature][bridge?]::bridgewhite, line|z16-[railway=abandoned][bridge?]::bridgewhite, {casing-linecap: butt;casing-color:@bridge_background;casing-opacity: 0.8;} line|z16-[railway=rail][bridge?]::bridgeblack, line|z16-[railway=subway][bridge?]::bridgeblack, line|z16-[railway=light_rail][bridge?]::bridgeblack, line|z16-[railway=preserved][bridge?]::bridgeblack, +line|z16-[railway=miniature][bridge?]::bridgeblack, line|z16-[railway=abandoned][bridge?]::bridgeblack, {casing-linecap: butt;casing-color:@bridge_casing;casing-opacity: 0.7;} @@ -1370,6 +1373,7 @@ line|z18-[railway=light_rail][!tunnel]::dash, line|z15-[railway=preserved], +line|z16-[railway=miniature], line|z16-[railway=abandoned], {width: 1.6;dashes: 6.3,6.3;} @@ -1419,23 +1423,27 @@ line|z13-15[railway=rail][bridge?]::bridgewhite, line|z13-15[railway=subway][bridge?]::bridgewhite, line|z13-15[railway=light_rail][bridge?]::bridgewhite, line|z15[railway=preserved][bridge?]::bridgewhite, +line|z16[railway=miniature][bridge?]::bridgewhite, {casing-width-add: 1.2;} line|z16[railway=rail][bridge?]::bridgewhite, line|z16[railway=subway][bridge?]::bridgewhite, line|z16[railway=light_rail][bridge?]::bridgewhite, line|z16[railway=preserved][bridge?]::bridgewhite, +line|z16[railway=miniature][bridge?]::bridgewhite, line|z16[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 1.6;} line|z17[railway=rail][bridge?]::bridgewhite, line|z17[railway=subway][bridge?]::bridgewhite, line|z17[railway=light_rail][bridge?]::bridgewhite, line|z17[railway=preserved][bridge?]::bridgewhite, +line|z17[railway=miniature][bridge?]::bridgewhite, line|z17[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 2.3;} line|z18-[railway=rail][bridge?]::bridgewhite, line|z18-[railway=subway][bridge?]::bridgewhite, line|z18-[railway=light_rail][bridge?]::bridgewhite, line|z18-[railway=preserved][bridge?]::bridgewhite, +line|z18-[railway=miniature][bridge?]::bridgewhite, line|z18-[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 3.5;} @@ -1443,18 +1451,21 @@ line|z16[railway=rail][bridge?]::bridgeblack, line|z16[railway=subway][bridge?]::bridgeblack, line|z16[railway=light_rail][bridge?]::bridgeblack, line|z16[railway=preserved][bridge?]::bridgeblack, +line|z16[railway=miniature][bridge?]::bridgeblack, line|z16[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 2.2;} line|z17[railway=rail][bridge?]::bridgeblack, line|z17[railway=subway][bridge?]::bridgeblack, line|z17[railway=light_rail][bridge?]::bridgeblack, line|z17[railway=preserved][bridge?]::bridgeblack, +line|z17[railway=miniature][bridge?]::bridgeblack, line|z17[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 3;} line|z18-[railway=rail][bridge?]::bridgeblack, line|z18-[railway=subway][bridge?]::bridgeblack, line|z18-[railway=light_rail][bridge?]::bridgeblack, line|z18-[railway=preserved][bridge?]::bridgeblack, +line|z18-[railway=miniature][bridge?]::bridgeblack, line|z18-[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 4.4;} diff --git a/data/styles/default/include/priorities_3_FG.prio.txt b/data/styles/default/include/priorities_3_FG.prio.txt index c9b4bab0c..8f33da9df 100644 --- a/data/styles/default/include/priorities_3_FG.prio.txt +++ b/data/styles/default/include/priorities_3_FG.prio.txt @@ -299,6 +299,9 @@ railway-abandoned-bridge # line z16- (also has line:: railway-abandoned-tunnel # line z16- railway-construction # line z15- railway-disused # line z16- +railway-miniature # line z16- +railway-miniature-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-) +railway-miniature-tunnel # line z16- railway-preserved # line z15- railway-preserved-bridge # line z15- (also has line::bridgeblack z16-, line::bridgewhite z15-) railway-preserved-tunnel # line z15- @@ -352,6 +355,7 @@ highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (al highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z13-) railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-) railway-light_rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z13-, line::bridgeblack z16-, line::dash z16-) +railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-) railway-preserved-bridge::bridgewhite # line::bridgewhite z15- (also has line z15-, line::bridgeblack z16-) railway-rail-branch-bridge::bridgewhite # line::bridgewhite z13- (also has line z11-, line::bridgeblack z16-, line::dash z16-) railway-rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z11-, line::bridgeblack z16-, line::dash z16-) @@ -388,6 +392,7 @@ highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (al highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z13-) railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-) railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z13-, line::dash z16-) +railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-) railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z15-, line::bridgewhite z15-) railway-rail-branch-bridge::bridgeblack # line::bridgeblack z16- (also has line z11-, line::bridgewhite z13-, line::dash z16-) railway-rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z11-, line::bridgewhite z13-, line::dash z16-) diff --git a/data/styles/outdoors/include/Roads.mapcss b/data/styles/outdoors/include/Roads.mapcss index ba1f2af8f..ae1f80aad 100644 --- a/data/styles/outdoors/include/Roads.mapcss +++ b/data/styles/outdoors/include/Roads.mapcss @@ -552,14 +552,17 @@ line|z18-[railway=rail][service=service]::dash, line|z13-[railway=construction], line|z13-[railway=preserved], +line|z13-[railway=miniature], line|z13-[railway=disused], line|z13-[railway=abandoned], {color: @railway; opacity:1;} line|z13-[railway=preserved], +line|z13-[railway=miniature], line|z13-[railway=abandoned] {width: 1.6; dashes: 6.3,6.3;} line|z16-[railway=preserved], +line|z16-[railway=miniature], line|z16-[railway=abandoned] {width: 2.2; dashes: 8,8;} diff --git a/data/styles/outdoors/include/priorities_3_FG.prio.txt b/data/styles/outdoors/include/priorities_3_FG.prio.txt index 60cdcb0bb..fb19beb09 100644 --- a/data/styles/outdoors/include/priorities_3_FG.prio.txt +++ b/data/styles/outdoors/include/priorities_3_FG.prio.txt @@ -301,6 +301,9 @@ railway-abandoned-bridge # line z13- (also has line:: railway-abandoned-tunnel # line z13- railway-construction # line z13- railway-disused # line z13- +railway-miniature # line z13- +railway-miniature-bridge # line z13- (also has line::bridgeblack z16-, line::bridgewhite z16-) +railway-miniature-tunnel # line z13- railway-preserved # line z13- railway-preserved-bridge # line z13- (also has line::bridgeblack z16-, line::bridgewhite z15-) railway-preserved-tunnel # line z13- @@ -354,6 +357,7 @@ highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (al highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z13-) railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z13-, line::bridgeblack z16-) railway-light_rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z13-, line::bridgeblack z16-, line::dash z16-) +railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z13-, line::bridgeblack z16-) railway-preserved-bridge::bridgewhite # line::bridgewhite z15- (also has line z13-, line::bridgeblack z16-) railway-rail-branch-bridge::bridgewhite # line::bridgewhite z13- (also has line z10-, line::bridgeblack z16-, line::dash z15-) railway-rail-bridge::bridgewhite # line::bridgewhite z13- (also has line z10-, line::bridgeblack z16-, line::dash z15-) @@ -390,6 +394,7 @@ highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (al highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z13-) railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z16-) railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z13-, line::dash z16-) +railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z16-) railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z15-) railway-rail-branch-bridge::bridgeblack # line::bridgeblack z16- (also has line z10-, line::bridgewhite z13-, line::dash z15-) railway-rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z10-, line::bridgewhite z13-, line::dash z15-) diff --git a/data/styles/vehicle/include/Roads.mapcss b/data/styles/vehicle/include/Roads.mapcss index 93aa63548..e7d37c4dd 100644 --- a/data/styles/vehicle/include/Roads.mapcss +++ b/data/styles/vehicle/include/Roads.mapcss @@ -720,6 +720,7 @@ line|z15-[railway=narrow_gauge], line|z16-[railway=construction], line|z16-[railway=disused], line|z16-[railway=preserved], +line|z16-[railway=miniature], line|z16-[railway=abandoned], {color: @railway; opacity: 0.6;} @@ -740,6 +741,7 @@ line|z14-[railway=rail][bridge?]::bridgewhite, line|z14-[railway=subway][bridge?]::bridgewhite, line|z14-[railway=light_rail][bridge?]::bridgewhite, line|z16-[railway=preserved][bridge?]::bridgewhite, +line|z16-[railway=miniature][bridge?]::bridgewhite, line|z16-[railway=abandoned][bridge?]::bridgewhite, line|z16-[railway=tram][bridge?]::bridgewhite, {casing-linecap: butt;casing-color:@bridge_background; opacity: 0.8;} @@ -747,6 +749,7 @@ line|z16-[railway=rail][bridge?]::bridgeblack, line|z16-[railway=subway][bridge?]::bridgeblack, line|z16-[railway=light_rail][bridge?]::bridgeblack, line|z16-[railway=preserved][bridge?]::bridgeblack, +line|z16-[railway=miniature][bridge?]::bridgeblack, line|z16-[railway=abandoned][bridge?]::bridgeblack, line|z16-[railway=tram][bridge?]::bridgeblack, {casing-linecap: butt;casing-color:@bridge_casing; opacity: 0.6;} @@ -910,6 +913,7 @@ line|z19-[railway=light_rail][!tunnel]::dash, line|z16-[railway=preserved], +line|z16-[railway=miniature], line|z16-[railway=abandoned] {width: 1.6;dashes: 6.3,6.3;} @@ -945,18 +949,21 @@ line|z16[railway=rail][bridge?]::bridgewhite, line|z16[railway=subway][bridge?]::bridgewhite, line|z16[railway=light_rail][bridge?]::bridgewhite, line|z16[railway=preserved][bridge?]::bridgewhite, +line|z16[railway=miniature][bridge?]::bridgewhite, line|z16[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 1.6;} line|z17[railway=rail][bridge?]::bridgewhite, line|z17[railway=subway][bridge?]::bridgewhite, line|z17[railway=light_rail][bridge?]::bridgewhite, line|z17[railway=preserved][bridge?]::bridgewhite, +line|z17[railway=miniature][bridge?]::bridgewhite, line|z17[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 2.3;} line|z18-[railway=rail][bridge?]::bridgewhite, line|z18-[railway=subway][bridge?]::bridgewhite, line|z18-[railway=light_rail][bridge?]::bridgewhite, line|z18-[railway=preserved][bridge?]::bridgewhite, +line|z18-[railway=miniature][bridge?]::bridgewhite, line|z18-[railway=abandoned][bridge?]::bridgewhite, {casing-width-add: 3.5;} @@ -964,18 +971,21 @@ line|z16[railway=rail][bridge?]::bridgeblack, line|z16[railway=subway][bridge?]::bridgeblack, line|z16[railway=light_rail][bridge?]::bridgeblack, line|z16[railway=preserved][bridge?]::bridgeblack, +line|z16[railway=miniature][bridge?]::bridgeblack, line|z16[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 2.2;} line|z17[railway=rail][bridge?]::bridgeblack, line|z17[railway=subway][bridge?]::bridgeblack, line|z17[railway=light_rail][bridge?]::bridgeblack, line|z17[railway=preserved][bridge?]::bridgeblack, +line|z17[railway=miniature][bridge?]::bridgeblack, line|z17[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 3;} line|z18-[railway=rail][bridge?]::bridgeblack, line|z18-[railway=subway][bridge?]::bridgeblack, line|z18-[railway=light_rail][bridge?]::bridgeblack, line|z18-[railway=preserved][bridge?]::bridgeblack, +line|z18-[railway=miniature][bridge?]::bridgeblack, line|z18-[railway=abandoned][bridge?]::bridgeblack, {casing-width-add: 4.4;} diff --git a/data/styles/vehicle/include/priorities_3_FG.prio.txt b/data/styles/vehicle/include/priorities_3_FG.prio.txt index 76e8de244..1fa840256 100644 --- a/data/styles/vehicle/include/priorities_3_FG.prio.txt +++ b/data/styles/vehicle/include/priorities_3_FG.prio.txt @@ -276,6 +276,9 @@ railway-abandoned-bridge # line z16- (also has line:: railway-abandoned-tunnel # line z16- railway-construction # line z16- railway-disused # line z16- +railway-miniature # line z16- +railway-miniature-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-) +railway-miniature-tunnel # line z16- railway-preserved # line z16- railway-preserved-bridge # line z16- (also has line::bridgeblack z16-, line::bridgewhite z16-) railway-preserved-tunnel # line z16- @@ -295,6 +298,7 @@ highway-trunk_link-bridge::bridgewhite # line::bridgewhite z14- (al highway-unclassified-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z14-, pathtext z14-) railway-abandoned-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-) railway-light_rail-bridge::bridgewhite # line::bridgewhite z14- (also has line z13-, line::bridgeblack z16-, line::dash z16-) +railway-miniature-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-) railway-preserved-bridge::bridgewhite # line::bridgewhite z16- (also has line z16-, line::bridgeblack z16-) railway-rail-branch-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z16-, line::dash z16-) railway-rail-bridge::bridgewhite # line::bridgewhite z14- (also has line z11-, line::bridgeblack z16-, line::dash z16-) @@ -321,6 +325,7 @@ highway-trunk_link-bridge::bridgeblack # line::bridgeblack z14- (al highway-unclassified-bridge::bridgeblack # line::bridgeblack z14- (also has line z11-, line::bridgewhite z14-, pathtext z14-) railway-abandoned-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-) railway-light_rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z13-, line::bridgewhite z14-, line::dash z16-) +railway-miniature-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-) railway-preserved-bridge::bridgeblack # line::bridgeblack z16- (also has line z16-, line::bridgewhite z16-) railway-rail-branch-bridge::bridgeblack # line::bridgeblack z16- (also has line z11-, line::bridgewhite z14-, line::dash z16-) railway-rail-bridge::bridgeblack # line::bridgeblack z16- (also has line z11-, line::bridgewhite z14-, line::dash z16-) From 90c18f4983069a40443a0f9dc669c5ee36bbbb64 Mon Sep 17 00:00:00 2001 From: "Chris H. Meyer" Date: Tue, 6 Jan 2026 08:48:54 +0100 Subject: [PATCH 38/60] [types] Add miniature railway Signed-off-by: Chris H. Meyer --- android/sdk/src/main/res/values/types_strings.xml | 3 +++ iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings | 3 +++ 2 files changed, 6 insertions(+) diff --git a/android/sdk/src/main/res/values/types_strings.xml b/android/sdk/src/main/res/values/types_strings.xml index 731da2a9b..41a796a63 100644 --- a/android/sdk/src/main/res/values/types_strings.xml +++ b/android/sdk/src/main/res/values/types_strings.xml @@ -947,6 +947,9 @@ Monorail Monorail Bridge Monorail Tunnel + Miniature Railway + Miniature Railway Bridge + Miniature Railway Tunnel Narrow Gauge Rail Narrow Gauge Rail Bridge Narrow Gauge Rail Tunnel diff --git a/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings index e3c761661..63c970064 100644 --- a/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings @@ -1040,6 +1040,9 @@ "type.railway.monorail" = "Monorail"; "type.railway.monorail.bridge" = "Monorail Bridge"; "type.railway.monorail.tunnel" = "Monorail Tunnel"; +"type.railway.miniature" = "Miniature Railway"; +"type.railway.miniature.bridge" = "Miniature Railway Bridge"; +"type.railway.miniature.tunnel" = "Miniature Railway Tunnel"; "type.railway.narrow_gauge" = "Narrow Gauge Rail"; "type.railway.narrow_gauge.bridge" = "Narrow Gauge Rail Bridge"; "type.railway.narrow_gauge.tunnel" = "Narrow Gauge Rail Tunnel"; From 20d9185c79ee0a394537502bfcbfccb9d9a18bb6 Mon Sep 17 00:00:00 2001 From: matheusgomesms Date: Tue, 9 Dec 2025 15:04:24 +0100 Subject: [PATCH 39/60] Removing maxspeed estimate from generator Signed-off-by: matheusgomesms --- generator/maxspeeds_builder.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/generator/maxspeeds_builder.cpp b/generator/maxspeeds_builder.cpp index 60be8b4cd..cce033891 100644 --- a/generator/maxspeeds_builder.cpp +++ b/generator/maxspeeds_builder.cpp @@ -151,7 +151,7 @@ public: // Set speed as-is from parent link. if (parentHwType == hwType) return {{s.GetForward(), s.GetUnits()}}; - + /* Commenting this part out as an attempt to solve displayed (and inexistent) max speed in highway links (https://codeberg.org/comaps/comaps/issues/1000) using routing::HighwayType; if ((*parentHwType == HighwayType::HighwayMotorway && hwType == HighwayType::HighwayMotorwayLink) || (*parentHwType == HighwayType::HighwayTrunk && hwType == HighwayType::HighwayTrunkLink) || @@ -163,6 +163,7 @@ public: return converter.ClosestValidMacro( {base::asserted_cast(std::lround(s.GetForward() * kLinkToMainSpeedFactor)), s.GetUnits()}); } + */ return {}; }; From aa9ee3cbbfe0e4e780f42ed1ac3088a8b08de3ea Mon Sep 17 00:00:00 2001 From: "Chris H. Meyer" Date: Sat, 3 Jan 2026 19:44:25 +0100 Subject: [PATCH 40/60] [styles] Add tactile maps Signed-off-by: Chris H. Meyer --- android/sdk/src/main/res/values/types_strings.xml | 1 + data/categories-strings/en.json/localize.json | 1 + data/mapcss-mapping.csv | 2 +- data/styles/default/include/Icons.mapcss | 3 ++- data/styles/default/include/priorities_4_overlays.prio.txt | 2 ++ data/styles/outdoors/include/Icons.mapcss | 1 + data/styles/outdoors/include/priorities_4_overlays.prio.txt | 2 ++ generator/generator_tests/osm_type_test.cpp | 1 + iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings | 1 + 9 files changed, 12 insertions(+), 2 deletions(-) diff --git a/android/sdk/src/main/res/values/types_strings.xml b/android/sdk/src/main/res/values/types_strings.xml index 41a796a63..af5cf9f2c 100644 --- a/android/sdk/src/main/res/values/types_strings.xml +++ b/android/sdk/src/main/res/values/types_strings.xml @@ -1424,6 +1424,7 @@ Information Board Guidepost Tourist Map + Tactile Map Tourist Office Visitor Centre Ranger Station diff --git a/data/categories-strings/en.json/localize.json b/data/categories-strings/en.json/localize.json index 76b244633..fb1fdc979 100644 --- a/data/categories-strings/en.json/localize.json +++ b/data/categories-strings/en.json/localize.json @@ -402,6 +402,7 @@ "tourism-chalet|@category_hotel": "5Holiday Cottage|5vacation home|4Chalet", "tourism-information-board": "Information Board", "tourism-information-map": "Tourist map|map|4Information", +"tourism-information-tactile_map": "Tactile map|map|4Information", "tourism-information-guidepost": "Guidepost", "aerialway-station": "Aerialway Station|5Cable car station", "aeroway-helipad": "4Helipad", diff --git a/data/mapcss-mapping.csv b/data/mapcss-mapping.csv index 13e72f73c..7bf79ffdb 100644 --- a/data/mapcss-mapping.csv +++ b/data/mapcss-mapping.csv @@ -518,7 +518,7 @@ piste:type|sled;402; leisure|beach_resort;403; leisure|dog_park;404; aerialway|gondola;405; -deprecated:historic|museum:10.2021;[historic=museum];x;name;int_name;406;tourism|museum +tourism|information|tactile_map;[tourism=information][information=tactile_map];;name;int_name;406; highway|living_street|bridge;[highway=living_street][bridge?];;name;int_name;407; leisure|track|area;[leisure=track][area?];;name;int_name;408; railway|monorail;409; diff --git a/data/styles/default/include/Icons.mapcss b/data/styles/default/include/Icons.mapcss index ce22a755c..3cc2a7b3e 100644 --- a/data/styles/default/include/Icons.mapcss +++ b/data/styles/default/include/Icons.mapcss @@ -766,7 +766,8 @@ node|z16-[tourism=information][information=board] {icon-image: board.svg;text-offset: 1;icon-min-distance: 10;} node|z16-[tourism=information][information=guidepost] {icon-image: guidepost.svg;text-offset: 1;icon-min-distance: 10;} -node|z16-[tourism=information][information=map] +node|z16-[tourism=information][information=map], +node|z16-[tourism=information][information=tactile_map], {icon-image: map.svg;text-offset: 1;icon-min-distance: 10;} node|z15-[amenity=ranger_station], diff --git a/data/styles/default/include/priorities_4_overlays.prio.txt b/data/styles/default/include/priorities_4_overlays.prio.txt index b31f66b64..80d421626 100644 --- a/data/styles/default/include/priorities_4_overlays.prio.txt +++ b/data/styles/default/include/priorities_4_overlays.prio.txt @@ -2387,6 +2387,7 @@ tourism-information # icon z16- (also has captio tourism-information-board # icon z16- (also has caption(optional) z16-) tourism-information-guidepost # icon z16- (also has caption(optional) z16-) tourism-information-map # icon z16- (also has caption(optional) z16-) +tourism-information-tactile_map # icon z16- (also has caption(optional) z16-) === -9940 amenity # caption z19- @@ -2478,4 +2479,5 @@ entrance-service # icon z19- (also has captio # tourism-information-board # caption(optional) z16- (also has icon z16-) # tourism-information-guidepost # caption(optional) z16- (also has icon z16-) # tourism-information-map # caption(optional) z16- (also has icon z16-) +# tourism-information-tactile_map # caption(optional) z16- (also has icon z16-) === -10000 diff --git a/data/styles/outdoors/include/Icons.mapcss b/data/styles/outdoors/include/Icons.mapcss index 7ca0fa09d..cb27acfeb 100644 --- a/data/styles/outdoors/include/Icons.mapcss +++ b/data/styles/outdoors/include/Icons.mapcss @@ -353,6 +353,7 @@ node|z15-[tourism=information][information=board], node|z15-[tourism=information][information=guidepost], {icon-image: guidepost.svg;} node|z15-[tourism=information][information=map], +node|z15-[tourism=information][information=tactile_map], {icon-image: map.svg;} node|z13-[amenity=ranger_station], diff --git a/data/styles/outdoors/include/priorities_4_overlays.prio.txt b/data/styles/outdoors/include/priorities_4_overlays.prio.txt index e715bc4e8..520d9cab6 100644 --- a/data/styles/outdoors/include/priorities_4_overlays.prio.txt +++ b/data/styles/outdoors/include/priorities_4_overlays.prio.txt @@ -2393,6 +2393,7 @@ tourism-information # icon z15- (also has captio tourism-information-board # icon z15- (also has caption(optional) z15-) tourism-information-guidepost # icon z15- (also has caption(optional) z15-) tourism-information-map # icon z15- (also has caption(optional) z15-) +tourism-information-tactile_map # icon z15- (also has caption(optional) z15-) === -9940 amenity # caption z19- @@ -2484,4 +2485,5 @@ entrance-service # icon z19- (also has captio # tourism-information-board # caption(optional) z15- (also has icon z15-) # tourism-information-guidepost # caption(optional) z15- (also has icon z15-) # tourism-information-map # caption(optional) z15- (also has icon z15-) +# tourism-information-tactile_map # caption(optional) z15- (also has icon z15-) === -10000 diff --git a/generator/generator_tests/osm_type_test.cpp b/generator/generator_tests/osm_type_test.cpp index 2191e45d2..a61e206cc 100644 --- a/generator/generator_tests/osm_type_test.cpp +++ b/generator/generator_tests/osm_type_test.cpp @@ -2979,6 +2979,7 @@ UNIT_CLASS_TEST(TestWithClassificator, OsmType_ComplexTypesSmoke) {{"tourism", "information", "board"}, {{"tourism", "information"}, {"information", "board"}}}, {{"tourism", "information", "guidepost"}, {{"tourism", "information"}, {"information", "guidepost"}}}, {{"tourism", "information", "map"}, {{"tourism", "information"}, {"information", "map"}}}, + {{"tourism", "information", "tactile_map"}, {{"tourism", "information"}, {"information", "tactile_map"}}}, {{"tourism", "information", "office"}, {{"tourism", "information"}, {"information", "office"}}}, //{{"waterway", "canal", "tunnel"}, {{"waterway", "canal"}, {"tunnel", "any_value"}}}, //{{"waterway", "river", "tunnel"}, {{"waterway", "river"}, {"tunnel", "any_value"}}}, diff --git a/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings b/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings index 63c970064..bd9a17600 100644 --- a/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings +++ b/iphone/Maps/LocalizedStrings/en.lproj/LocalizableTypes.strings @@ -1522,6 +1522,7 @@ "type.tourism.information.board" = "Information Board"; "type.tourism.information.guidepost" = "Guidepost"; "type.tourism.information.map" = "Tourist Map"; +"type.tourism.information.tactile_map" = "Tactile Map"; "type.tourism.information.office" = "Tourist Office"; "type.tourism.information.visitor_centre" = "Visitor Centre"; "type.amenity.ranger_station" = "Ranger Station"; From 381c1e39799b73b0cc6211020b1cdee13cb35906 Mon Sep 17 00:00:00 2001 From: Dobri Dabar Date: Tue, 6 Jan 2026 09:01:53 +0100 Subject: [PATCH 41/60] [desktop] Added Local Language option Signed-off-by: Dobri Dabar --- qt/preferences_dialog.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/qt/preferences_dialog.cpp b/qt/preferences_dialog.cpp index 26d4e7c9f..4f8d77153 100644 --- a/qt/preferences_dialog.cpp +++ b/qt/preferences_dialog.cpp @@ -127,6 +127,8 @@ PreferencesDialog::PreferencesDialog(QWidget * parent, Framework & framework) QStringList languagesList = QStringList(); std::vector sortedIndices; + languagesList << QString::fromStdString("Local Language"); + sortedIndices.push_back(0); for (auto const & pair : languageNameIndexPairs) { languagesList << QString::fromStdString(pair.first); @@ -143,6 +145,11 @@ PreferencesDialog::PreferencesDialog(QWidget * parent, Framework & framework) QString::fromStdString(std::string(StringUtf8Multilang::GetLangNameByCode(languageIndex)))); connect(mapLanguageComboBox, &QComboBox::activated, [&framework, &supportedLanguages, sortedIndices](int index) { + if (index == 0) + { + framework.SetMapLanguageCode("default"); + return; + } auto const & mapLanguageCode = std::string(supportedLanguages[sortedIndices[index]].m_code); framework.SetMapLanguageCode(mapLanguageCode); }); From 4a64bf05bec3ca5961334a8266ce2359c60894c6 Mon Sep 17 00:00:00 2001 From: Yannik Bloscheck Date: Tue, 6 Jan 2026 17:55:48 +0100 Subject: [PATCH 42/60] [ios] Add missing speedcamera icon version Signed-off-by: Yannik Bloscheck --- .../speedcamera.slash.symbolset/Contents.json | 12 ++ .../speedcamera.slash.svg | 115 ++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/Contents.json create mode 100644 iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/speedcamera.slash.svg diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/Contents.json b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/Contents.json new file mode 100644 index 000000000..05e605eed --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/Contents.json @@ -0,0 +1,12 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + }, + "symbols" : [ + { + "filename" : "speedcamera.slash.svg", + "idiom" : "universal" + } + ] +} diff --git a/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/speedcamera.slash.svg b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/speedcamera.slash.svg new file mode 100644 index 000000000..f569fa48c --- /dev/null +++ b/iphone/Maps/Images.xcassets/Interface/Symbols/speedcamera.slash.symbolset/speedcamera.slash.svg @@ -0,0 +1,115 @@ + + + + + + + + + + Weight/Scale Variations + Ultralight + Thin + Light + Regular + Medium + Semibold + Bold + Heavy + Black + + + + + + + + + + + Design Variations + Symbols are supported in up to nine weights and three scales. + For optimal layout with text and other symbols, vertically align + symbols with the adjacent text. + + + + + + Margins + Leading and trailing margins on the left and right side of each symbol + can be adjusted by modifying the x-location of the margin guidelines. + Modifications are automatically applied proportionally to all + scales and weights. + + + + Exporting + Symbols should be outlined when exporting to ensure the + design is preserved when submitting to Xcode. + Template v.7.0 + Requires Xcode 17 or greater + Generated from + Typeset at 100.0 points + Small + Medium + Large + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 75439b5d8918eff227416fdf796b582454305845 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Sun, 11 Jan 2026 00:18:42 -0800 Subject: [PATCH 43/60] [ci] Use Docker Android SDK container for builds Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 46 +++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index de191b613..338847617 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -38,7 +38,23 @@ jobs: lint: name: Android Lint runs-on: ubuntu-latest + container: + image: codeberg.org/comaps/docker-android-sdk:latest + options: --user root steps: + - name: Install build dependencies + shell: bash + run: | + apt-get update -y + apt-get install -y git python3-pip + pip install "protobuf<3.21" --break-system-packages + + - name: Install Android SDK components + shell: bash + run: | + yes | sdkmanager --licenses || true + sdkmanager "platforms;android-36" "build-tools;36.0.0" "ndk;28.2.13676358" + - name: Checkout sources uses: actions/checkout@v4 with: @@ -56,6 +72,9 @@ jobs: android-check: name: Build Android Debug runs-on: ubuntu-latest + container: + image: codeberg.org/comaps/docker-android-sdk:latest + options: --user root strategy: fail-fast: false matrix: @@ -74,8 +93,31 @@ jobs: - name: Install build tools and dependencies shell: bash run: | - sudo apt-get update -y - sudo apt-get install -y ninja-build + apt-get update -y + apt-get install -y \ + ninja-build \ + qt6-base-dev \ + qt6-declarative-dev \ + qt6-positioning-dev \ + libqt6svg6-dev \ + optipng \ + libfreetype-dev \ + libharfbuzz-dev \ + libxrandr-dev \ + libxinerama-dev \ + libxcursor-dev \ + libxi-dev \ + python3-pip \ + zlib1g-dev \ + git \ + ccache + pip install "protobuf<3.21" --break-system-packages + + - name: Install Android SDK components + shell: bash + run: | + yes | sdkmanager --licenses || true + sdkmanager "platforms;android-36" "build-tools;36.0.0" "ndk;28.2.13676358" - name: Checkout sources uses: actions/checkout@v4 From fccda2d8b94f9ed67d6b584c71771db9c0056209 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Sun, 11 Jan 2026 00:46:23 -0800 Subject: [PATCH 44/60] add java at runtime Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 338847617..eefad21bf 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -46,7 +46,10 @@ jobs: shell: bash run: | apt-get update -y - apt-get install -y git python3-pip + apt-get install -y \ + git \ + python3-pip \ + openjdk-21-jdk pip install "protobuf<3.21" --break-system-packages - name: Install Android SDK components From c305c2e5804343a27f808ea4e931df196ca57e7e Mon Sep 17 00:00:00 2001 From: zyphlar Date: Sun, 11 Jan 2026 21:41:35 -0800 Subject: [PATCH 45/60] [ci] Set Java 21 as default for Android builds Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index eefad21bf..1512eb857 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -41,6 +41,8 @@ jobs: container: image: codeberg.org/comaps/docker-android-sdk:latest options: --user root + env: + JAVA_HOME: /usr/lib/jvm/java-21-openjdk-amd64 steps: - name: Install build dependencies shell: bash @@ -51,6 +53,7 @@ jobs: python3-pip \ openjdk-21-jdk pip install "protobuf<3.21" --break-system-packages + update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java - name: Install Android SDK components shell: bash @@ -78,6 +81,8 @@ jobs: container: image: codeberg.org/comaps/docker-android-sdk:latest options: --user root + env: + JAVA_HOME: /usr/lib/jvm/java-21-openjdk-amd64 strategy: fail-fast: false matrix: @@ -113,8 +118,10 @@ jobs: python3-pip \ zlib1g-dev \ git \ - ccache + ccache \ + openjdk-21-jdk pip install "protobuf<3.21" --break-system-packages + update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java - name: Install Android SDK components shell: bash From 838fa4a28886cab92c860ae53e203fcdbb85a4d2 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Sun, 11 Jan 2026 21:57:35 -0800 Subject: [PATCH 46/60] run configure Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 1512eb857..e0efd8ab8 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -73,7 +73,9 @@ jobs: - name: Lint shell: bash working-directory: android - run: ./gradlew -Pandroidauto=true lint + run: | + ./configure.sh + ./gradlew -Pandroidauto=true lint android-check: name: Build Android Debug @@ -152,6 +154,7 @@ jobs: run: | cmake --version ninja --version + ./configure.sh ./gradlew -P${{ matrix.arch }} assemble${{ matrix.flavor }} - name: Upload ${{ matrix.flavor }} apk From e08692008690fa29023dc077565cd93b5dfaf86b Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 00:51:18 -0800 Subject: [PATCH 47/60] [ci] Add daily 3party cache and configure.sh Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index e0efd8ab8..74eb1a138 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -136,12 +136,21 @@ jobs: with: fetch-depth: 200 # enough to get all commits for the current day + - name: Get date for cache key + id: date + run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + + - uses: actions/cache@v4 + with: + path: "3party" + key: 3party-cache-${{ steps.date.outputs.date }} + - name: Parallel submodules checkout shell: bash run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - name: Configure ccache - uses: hendrikmuhs/ccache-action@v1.2 + uses: https://github.com/hendrikmuhs/ccache-action@v1.2 with: key: ${{ github.workflow }}-${{ matrix.flavor }} @@ -154,7 +163,9 @@ jobs: run: | cmake --version ninja --version + cd .. ./configure.sh + cd android ./gradlew -P${{ matrix.arch }} assemble${{ matrix.flavor }} - name: Upload ${{ matrix.flavor }} apk From 37846bc6b16fd253b92f1d0a5dea33f898c15b1d Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 07:19:14 -0800 Subject: [PATCH 48/60] cmake and paths Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 74eb1a138..8fd44a999 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -49,6 +49,7 @@ jobs: run: | apt-get update -y apt-get install -y \ + cmake \ git \ python3-pip \ openjdk-21-jdk @@ -74,7 +75,9 @@ jobs: shell: bash working-directory: android run: | + cd .. ./configure.sh + cd android ./gradlew -Pandroidauto=true lint android-check: @@ -105,6 +108,7 @@ jobs: run: | apt-get update -y apt-get install -y \ + cmake \ ninja-build \ qt6-base-dev \ qt6-declarative-dev \ @@ -161,8 +165,6 @@ jobs: CMAKE_C_COMPILER_LAUNCHER: ccache CMAKE_CXX_COMPILER_LAUNCHER: ccache run: | - cmake --version - ninja --version cd .. ./configure.sh cd android From a1e6cf9c60ff706f2a943abdea68cc8c2690a239 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 07:57:14 -0800 Subject: [PATCH 49/60] cache Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 8fd44a999..b4f5f0961 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -67,6 +67,15 @@ jobs: with: fetch-depth: 1 + - name: Get date for cache key + id: date + run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + + - uses: actions/cache@v4 + with: + path: "3party" + key: 3party-cache-${{ steps.date.outputs.date }} + - name: Parallel submodules checkout shell: bash run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) From e72400760c680438496a3583a35ff16d2faea2a5 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 08:29:15 -0800 Subject: [PATCH 50/60] cache apt, upload all Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 54 ++++++++++----------------- 1 file changed, 19 insertions(+), 35 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index b4f5f0961..d8beab447 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -44,15 +44,18 @@ jobs: env: JAVA_HOME: /usr/lib/jvm/java-21-openjdk-amd64 steps: + - name: Get date for cache key + id: date + run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + + - uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 + with: + packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + version: "${{ steps.date.outputs.date }}" + - name: Install build dependencies shell: bash run: | - apt-get update -y - apt-get install -y \ - cmake \ - git \ - python3-pip \ - openjdk-21-jdk pip install "protobuf<3.21" --break-system-packages update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java @@ -67,10 +70,6 @@ jobs: with: fetch-depth: 1 - - name: Get date for cache key - id: date - run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - uses: actions/cache@v4 with: path: "3party" @@ -112,29 +111,18 @@ jobs: cancel-in-progress: true steps: + - name: Get date for cache key + id: date + run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + + - uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 + with: + packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + version: "${{ steps.date.outputs.date }}" + - name: Install build tools and dependencies shell: bash run: | - apt-get update -y - apt-get install -y \ - cmake \ - ninja-build \ - qt6-base-dev \ - qt6-declarative-dev \ - qt6-positioning-dev \ - libqt6svg6-dev \ - optipng \ - libfreetype-dev \ - libharfbuzz-dev \ - libxrandr-dev \ - libxinerama-dev \ - libxcursor-dev \ - libxi-dev \ - python3-pip \ - zlib1g-dev \ - git \ - ccache \ - openjdk-21-jdk pip install "protobuf<3.21" --break-system-packages update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java @@ -149,10 +137,6 @@ jobs: with: fetch-depth: 200 # enough to get all commits for the current day - - name: Get date for cache key - id: date - run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - uses: actions/cache@v4 with: path: "3party" @@ -183,5 +167,5 @@ jobs: uses: actions/upload-artifact@v4 with: name: android-${{ matrix.flavor }} - path: android/app/build/outputs/apk/**/OrganicMaps-*.apk + path: android/app/build/outputs/apk/**/*.apk if-no-files-found: error From 401c4324d383b8e4a62488d14e4dcbae980bf187 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 08:36:09 -0800 Subject: [PATCH 51/60] cache Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index d8beab447..979ab0d7d 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -48,7 +48,13 @@ jobs: id: date run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 + - name: Apt update + shell: bash + run: | + apt update -y + + - name: Install and cache apt packages + uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 with: packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk version: "${{ steps.date.outputs.date }}" @@ -115,7 +121,13 @@ jobs: id: date run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT - - uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 + - name: Apt update + shell: bash + run: | + apt update -y + + - name: Install and cache apt packages + uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 with: packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk version: "${{ steps.date.outputs.date }}" From e7ad0f20b67460b6bd45fdc142850f0f6b48abf9 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 09:34:16 -0800 Subject: [PATCH 52/60] [ci] Add sudo wrapper for apt cache action Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 979ab0d7d..de2a675d2 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -48,6 +48,13 @@ jobs: id: date run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + - name: Create sudo wrapper + shell: bash + run: | + echo '#!/bin/bash' > /usr/local/bin/sudo + echo 'exec "$@"' >> /usr/local/bin/sudo + chmod +x /usr/local/bin/sudo + - name: Apt update shell: bash run: | @@ -121,11 +128,18 @@ jobs: id: date run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT + - name: Create sudo wrapper + shell: bash + run: | + echo '#!/bin/bash' > /usr/local/bin/sudo + echo 'exec "$@"' >> /usr/local/bin/sudo + chmod +x /usr/local/bin/sudo + - name: Apt update shell: bash run: | apt update -y - + - name: Install and cache apt packages uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 with: From b9e7b9b9942aa7bfde20a0d3d7e90f62fc1818bb Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 09:51:27 -0800 Subject: [PATCH 53/60] [ci] Consolidate apt packages list and add fallback install Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index de2a675d2..ebf6e312b 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -34,6 +34,9 @@ on: - track_generator/** - xcode/** +env: + APT_PACKAGES: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + jobs: lint: name: Android Lint @@ -63,9 +66,17 @@ jobs: - name: Install and cache apt packages uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 with: - packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + packages: ${{ env.APT_PACKAGES }} version: "${{ steps.date.outputs.date }}" + - name: Fallback manual apt install + shell: bash + run: | + if ! command -v pip &> /dev/null; then + echo "pip not found, cache action failed, installing packages manually" + apt install -y $APT_PACKAGES + fi + - name: Install build dependencies shell: bash run: | @@ -143,9 +154,17 @@ jobs: - name: Install and cache apt packages uses: https://github.com/awalsh128/cache-apt-pkgs-action@v1.6.0 with: - packages: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + packages: ${{ env.APT_PACKAGES }} version: "${{ steps.date.outputs.date }}" + - name: Fallback manual apt install + shell: bash + run: | + if ! command -v pip &> /dev/null; then + echo "pip not found, cache action failed, installing packages manually" + apt install -y $APT_PACKAGES + fi + - name: Install build tools and dependencies shell: bash run: | From 3e224c666b3040b18961b6e914483949c6cdbced Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 11:06:08 -0800 Subject: [PATCH 54/60] [ci] Sync and reset submodules after cache restore Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index ebf6e312b..8db9dc7c6 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -98,7 +98,13 @@ jobs: with: path: "3party" key: 3party-cache-${{ steps.date.outputs.date }} - + + - name: Sync submodule URLs after cache restore + shell: bash + run: | + git submodule sync --recursive + git submodule foreach --recursive git reset --hard + - name: Parallel submodules checkout shell: bash run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) @@ -186,7 +192,13 @@ jobs: with: path: "3party" key: 3party-cache-${{ steps.date.outputs.date }} - + + - name: Sync submodule URLs after cache restore + shell: bash + run: | + git submodule sync --recursive + git submodule foreach --recursive git reset --hard + - name: Parallel submodules checkout shell: bash run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) From 3f89c75b879df08942b3aa6c4fe9802d1cc95fb9 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 11:20:41 -0800 Subject: [PATCH 55/60] [ci] Conditionally sync or checkout submodules based on cache Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 32 +++++++++++++++------------ 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 8db9dc7c6..576a61a96 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -95,19 +95,21 @@ jobs: fetch-depth: 1 - uses: actions/cache@v4 + id: cache-3party with: path: "3party" key: 3party-cache-${{ steps.date.outputs.date }} - - name: Sync submodule URLs after cache restore - shell: bash - run: | - git submodule sync --recursive - git submodule foreach --recursive git reset --hard - - name: Parallel submodules checkout shell: bash - run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + run: | + if [ "${{ steps.cache-3party.outputs.cache-hit }}" == "true" ]; then + echo "Cache hit, syncing submodules" + git submodule sync --recursive + else + echo "No cache, checking out submodules" + git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + fi - name: Lint shell: bash @@ -189,19 +191,21 @@ jobs: fetch-depth: 200 # enough to get all commits for the current day - uses: actions/cache@v4 + id: cache-3party with: path: "3party" key: 3party-cache-${{ steps.date.outputs.date }} - - name: Sync submodule URLs after cache restore - shell: bash - run: | - git submodule sync --recursive - git submodule foreach --recursive git reset --hard - - name: Parallel submodules checkout shell: bash - run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + run: | + if [ "${{ steps.cache-3party.outputs.cache-hit }}" == "true" ]; then + echo "Cache hit, syncing submodules" + git submodule sync --recursive + else + echo "No cache, checking out submodules" + git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + fi - name: Configure ccache uses: https://github.com/hendrikmuhs/ccache-action@v1.2 From b2eae1aa2408d1c4735c586a849278253ae4ef66 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 14:00:51 -0800 Subject: [PATCH 56/60] [ci] Always run submodule update regardless of cache. Specify exact folders. Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 72 +++++++++++++++++++-------- 1 file changed, 50 insertions(+), 22 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 576a61a96..fb092e8e6 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -95,21 +95,35 @@ jobs: fetch-depth: 1 - uses: actions/cache@v4 - id: cache-3party with: - path: "3party" - key: 3party-cache-${{ steps.date.outputs.date }} + path: | + 3party/CMake-MetalShaderSupport + 3party/Vulkan-Headers + 3party/boost + 3party/expat + 3party/fast_double_parser + 3party/fast_obj + 3party/freetype/freetype + 3party/gflags + 3party/glaze + 3party/glfw + 3party/glm + 3party/googletest + 3party/harfbuzz/harfbuzz + 3party/icu/icu + 3party/imgui/imgui + 3party/jansson/jansson + 3party/just_gtfs + 3party/protobuf/protobuf + 3party/pugixml/pugixml + 3party/utfcpp + tools/kothic + tools/osmctools + key: submodules-cache-${{ steps.date.outputs.date }} - name: Parallel submodules checkout shell: bash - run: | - if [ "${{ steps.cache-3party.outputs.cache-hit }}" == "true" ]; then - echo "Cache hit, syncing submodules" - git submodule sync --recursive - else - echo "No cache, checking out submodules" - git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - fi + run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - name: Lint shell: bash @@ -191,21 +205,35 @@ jobs: fetch-depth: 200 # enough to get all commits for the current day - uses: actions/cache@v4 - id: cache-3party with: - path: "3party" - key: 3party-cache-${{ steps.date.outputs.date }} + path: | + 3party/CMake-MetalShaderSupport + 3party/Vulkan-Headers + 3party/boost + 3party/expat + 3party/fast_double_parser + 3party/fast_obj + 3party/freetype/freetype + 3party/gflags + 3party/glaze + 3party/glfw + 3party/glm + 3party/googletest + 3party/harfbuzz/harfbuzz + 3party/icu/icu + 3party/imgui/imgui + 3party/jansson/jansson + 3party/just_gtfs + 3party/protobuf/protobuf + 3party/pugixml/pugixml + 3party/utfcpp + tools/kothic + tools/osmctools + key: submodules-cache-${{ steps.date.outputs.date }} - name: Parallel submodules checkout shell: bash - run: | - if [ "${{ steps.cache-3party.outputs.cache-hit }}" == "true" ]; then - echo "Cache hit, syncing submodules" - git submodule sync --recursive - else - echo "No cache, checking out submodules" - git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - fi + run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - name: Configure ccache uses: https://github.com/hendrikmuhs/ccache-action@v1.2 From 5fb56d9abd475e54bce8aaf7ae0f27cd0834dd6a Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 15:51:12 -0800 Subject: [PATCH 57/60] use upload-artifact v3 --- .forgejo/workflows/android-check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index fb092e8e6..f408c745b 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -253,7 +253,7 @@ jobs: ./gradlew -P${{ matrix.arch }} assemble${{ matrix.flavor }} - name: Upload ${{ matrix.flavor }} apk - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 with: name: android-${{ matrix.flavor }} path: android/app/build/outputs/apk/**/*.apk From c0373e4557694675252c35ef11ee064e12e68aac Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 16:53:02 -0800 Subject: [PATCH 58/60] [ci] Cache .git/modules with submodules for proper restoration Signed-off-by: zyphlar --- .forgejo/workflows/android-check.yaml | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index f408c745b..4f220203d 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -97,6 +97,7 @@ jobs: - uses: actions/cache@v4 with: path: | + .git/modules 3party/CMake-MetalShaderSupport 3party/Vulkan-Headers 3party/boost @@ -119,11 +120,15 @@ jobs: 3party/utfcpp tools/kothic tools/osmctools - key: submodules-cache-${{ steps.date.outputs.date }} + key: submodules-${{ hashFiles('.gitmodules') }} + restore-keys: | + submodules- - - name: Parallel submodules checkout + - name: Sync and update submodules shell: bash - run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + run: | + git submodule sync --recursive + git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - name: Lint shell: bash @@ -207,6 +212,7 @@ jobs: - uses: actions/cache@v4 with: path: | + .git/modules 3party/CMake-MetalShaderSupport 3party/Vulkan-Headers 3party/boost @@ -229,11 +235,15 @@ jobs: 3party/utfcpp tools/kothic tools/osmctools - key: submodules-cache-${{ steps.date.outputs.date }} + key: submodules-${{ hashFiles('.gitmodules') }} + restore-keys: | + submodules- - - name: Parallel submodules checkout + - name: Sync and update submodules shell: bash - run: git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) + run: | + git submodule sync --recursive + git submodule update --depth 1 --init --recursive --jobs=$(($(nproc) * 20)) - name: Configure ccache uses: https://github.com/hendrikmuhs/ccache-action@v1.2 From f989e45f5352b738ce4e1fc8211871b3db3c076a Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 17:11:58 -0800 Subject: [PATCH 59/60] use a specific apk path for single-file artifact --- .forgejo/workflows/android-check.yaml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index 4f220203d..e901dcc46 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -262,9 +262,17 @@ jobs: cd android ./gradlew -P${{ matrix.arch }} assemble${{ matrix.flavor }} + - name: Find built APK + id: find-apk + shell: bash + run: | + APK_PATH=$(find android/app/build/outputs/apk/**/ -name "*.apk" -type f | head -n 1) + echo "apk_path=$APK_PATH" >> $GITHUB_OUTPUT + echo "Found APK: $APK_PATH" + - name: Upload ${{ matrix.flavor }} apk uses: actions/upload-artifact@v3 with: name: android-${{ matrix.flavor }} - path: android/app/build/outputs/apk/**/*.apk + path: ${{ steps.find-apk.outputs.apk_path }} if-no-files-found: error From b919186c9dc3df50162b34477b10e038c5da8520 Mon Sep 17 00:00:00 2001 From: zyphlar Date: Mon, 12 Jan 2026 21:41:37 -0800 Subject: [PATCH 60/60] cache pip and mwm too --- .forgejo/workflows/android-check.yaml | 133 ++++++++++++++++---------- 1 file changed, 81 insertions(+), 52 deletions(-) diff --git a/.forgejo/workflows/android-check.yaml b/.forgejo/workflows/android-check.yaml index e901dcc46..43b3afab9 100644 --- a/.forgejo/workflows/android-check.yaml +++ b/.forgejo/workflows/android-check.yaml @@ -35,7 +35,50 @@ on: - xcode/** env: - APT_PACKAGES: cmake ninja-build qt6-base-dev qt6-declarative-dev qt6-positioning-dev libqt6svg6-dev optipng libfreetype-dev libharfbuzz-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python3-pip zlib1g-dev git ccache openjdk-21-jdk + APT_PACKAGES: >- + cmake + ninja-build + qt6-base-dev + qt6-declarative-dev + qt6-positioning-dev + libqt6svg6-dev + optipng + libfreetype-dev + libharfbuzz-dev + libxrandr-dev + libxinerama-dev + libxcursor-dev + libxi-dev + python3-pip + zlib1g-dev + git + ccache + openjdk-21-jdk + PIP_PACKAGES: protobuf<3.21 + SUBMODULE_CACHE_PATHS: | + .git/modules + 3party/CMake-MetalShaderSupport + 3party/Vulkan-Headers + 3party/boost + 3party/expat + 3party/fast_double_parser + 3party/fast_obj + 3party/freetype/freetype + 3party/gflags + 3party/glaze + 3party/glfw + 3party/glm + 3party/googletest + 3party/harfbuzz/harfbuzz + 3party/icu/icu + 3party/imgui/imgui + 3party/jansson/jansson + 3party/just_gtfs + 3party/protobuf/protobuf + 3party/pugixml/pugixml + 3party/utfcpp + tools/kothic + tools/osmctools jobs: lint: @@ -77,10 +120,20 @@ jobs: apt install -y $APT_PACKAGES fi + - name: Generate pip cache key + id: pip-cache-key + run: echo "key=pip-$(echo '${{ env.PIP_PACKAGES }}' | md5sum | cut -d' ' -f1)" >> $GITHUB_OUTPUT + + - name: Cache pip packages + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ steps.pip-cache-key.outputs.key }} + - name: Install build dependencies shell: bash run: | - pip install "protobuf<3.21" --break-system-packages + pip install "${{ env.PIP_PACKAGES }}" --break-system-packages update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java - name: Install Android SDK components @@ -94,32 +147,15 @@ jobs: with: fetch-depth: 1 + - name: Cache world map + uses: actions/cache@v4 + with: + path: world_mwm + key: world-mwm + - uses: actions/cache@v4 with: - path: | - .git/modules - 3party/CMake-MetalShaderSupport - 3party/Vulkan-Headers - 3party/boost - 3party/expat - 3party/fast_double_parser - 3party/fast_obj - 3party/freetype/freetype - 3party/gflags - 3party/glaze - 3party/glfw - 3party/glm - 3party/googletest - 3party/harfbuzz/harfbuzz - 3party/icu/icu - 3party/imgui/imgui - 3party/jansson/jansson - 3party/just_gtfs - 3party/protobuf/protobuf - 3party/pugixml/pugixml - 3party/utfcpp - tools/kothic - tools/osmctools + path: ${{ env.SUBMODULE_CACHE_PATHS }} key: submodules-${{ hashFiles('.gitmodules') }} restore-keys: | submodules- @@ -192,10 +228,20 @@ jobs: apt install -y $APT_PACKAGES fi - - name: Install build tools and dependencies + - name: Generate pip cache key + id: pip-cache-key + run: echo "key=pip-$(echo '${{ env.PIP_PACKAGES }}' | md5sum | cut -d' ' -f1)" >> $GITHUB_OUTPUT + + - name: Cache pip packages + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ steps.pip-cache-key.outputs.key }} + + - name: Install build dependencies shell: bash run: | - pip install "protobuf<3.21" --break-system-packages + pip install "${{ env.PIP_PACKAGES }}" --break-system-packages update-alternatives --set java /usr/lib/jvm/java-21-openjdk-amd64/bin/java - name: Install Android SDK components @@ -209,32 +255,15 @@ jobs: with: fetch-depth: 200 # enough to get all commits for the current day + - name: Cache world map + uses: actions/cache@v4 + with: + path: world_mwm + key: world-mwm + - uses: actions/cache@v4 with: - path: | - .git/modules - 3party/CMake-MetalShaderSupport - 3party/Vulkan-Headers - 3party/boost - 3party/expat - 3party/fast_double_parser - 3party/fast_obj - 3party/freetype/freetype - 3party/gflags - 3party/glaze - 3party/glfw - 3party/glm - 3party/googletest - 3party/harfbuzz/harfbuzz - 3party/icu/icu - 3party/imgui/imgui - 3party/jansson/jansson - 3party/just_gtfs - 3party/protobuf/protobuf - 3party/pugixml/pugixml - 3party/utfcpp - tools/kothic - tools/osmctools + path: ${{ env.SUBMODULE_CACHE_PATHS }} key: submodules-${{ hashFiles('.gitmodules') }} restore-keys: | submodules-