Compare commits

...

10 Commits

Author SHA1 Message Date
map-per
8683853f46 [search] Check for empty/nullptr to fix editor crash (#2904)
Signed-off-by: map-per <map-per@gmx.de>
2025-12-19 13:49:30 +01:00
Yannik Bloscheck
d7e34c2685 [search] Fix search for vegan and vegetarian places
Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
2025-12-19 13:11:05 +01:00
Konstantin Pastbin
0028306b26 [search] Fix compilation (add missing comma)
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-12-19 12:36:51 +07:00
x7z4w
b5354fd1e3 [search] Add synonyms
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-12-19 04:12:12 +01:00
x7z4w
964f82510a [drape] Set Harfbuzz language to map language
Signed-off-by: x7z4w <x7z4w@noreply.codeberg.org>
2025-12-19 04:09:13 +01:00
Konstantin Pastbin
faf49fc574 [tts] Revert values changes done in #2752 4f739d98b
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2025-12-19 09:25:00 +07:00
Jean-Baptiste
60b1ad232a [android] Clean background color in views
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2025-12-18 21:31:25 +01:00
Jean-Baptiste
1bac0fd4fc [search] Improve search terms in french
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2025-12-18 20:35:30 +01:00
Codeberg Translate
ed6dcc5cb2 [strings] Update from Codeberg Translate
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: JanezPavelZebovec <janezpavelzebovec@noreply.codeberg.org>
Co-authored-by: N4ta <codeberg@n4ta.anonaddy.me>
Co-authored-by: Prefill add-on <noreply-addon-prefill@weblate.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: Stephan-P <stephan-p@noreply.codeberg.org>
Co-authored-by: Stzyxh <stzyxh@noreply.codeberg.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: aoxa <aoxa@noreply.codeberg.org>
Co-authored-by: dobridabar <dobridabar@noreply.codeberg.org>
Co-authored-by: map-per <map-per@noreply.codeberg.org>
Co-authored-by: metehan <metehan@noreply.codeberg.org>
Co-authored-by: ovl-005 <ovl-005@noreply.codeberg.org>
Co-authored-by: patepelo <patepelo@noreply.codeberg.org>
Co-authored-by: teletext <teletext@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/comaps/android-typestrings/
Translate-URL: https://translate.codeberg.org/projects/comaps/ios-typestrings/
Translation: CoMaps/Android - Map Feature Types
Translation: CoMaps/Android UI Strings
Translation: CoMaps/Apple AppStore description
Translation: CoMaps/Countries and regions names
Translation: CoMaps/Voice announcements for navigation (TTS)
Translation: CoMaps/iOS - Map Feature Types
Translation: CoMaps/iOS UI Strings
2025-12-18 14:24:02 +00:00
Jean-Baptiste
33b440dd71 [android] Remove custom attrs fonts styles
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2025-12-18 15:23:52 +01:00
64 changed files with 359 additions and 198 deletions

View File

@@ -2,6 +2,6 @@
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/bg_panel"/>
<solid android:color="@color/bg_window"/>
<corners android:radius="100dp"/>
</shape>

View File

@@ -2,5 +2,5 @@
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/bg_panel"/>
<solid android:color="@color/bg_window"/>
</shape>

View File

@@ -24,7 +24,7 @@
android:id="@+id/items_frame"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?panel">
android:background="?windowBackgroundForced">
<include
layout="@layout/item_missed_map"
android:layout_width="match_parent"

View File

@@ -26,7 +26,7 @@
android:id="@+id/items_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?panel"
android:background="?windowBackgroundForced"
android:listSelector="?clickableBackground"
android:drawSelectorOnTop="true"/>

View File

@@ -60,7 +60,7 @@
android:layout_below="@id/tv__bookmark_set_title"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/margin_quadruple"
android:background="?attr/selectableItemBackground"
android:background="?selectableItemBackground"
android:clickable="true"
android:paddingTop="@dimen/margin_quarter_plus"
android:paddingBottom="@dimen/margin_half_plus"

View File

@@ -2,7 +2,7 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="?attr/cardBackground"
android:background="?cardBackground"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
@@ -11,7 +11,6 @@
style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?colorPrimary"
android:gravity="end|center_vertical"
android:theme="@style/MwmWidget.ToolbarTheme">
</com.google.android.material.appbar.MaterialToolbar>

View File

@@ -18,7 +18,7 @@
app:srcCompat="@drawable/ic_done"
android:layout_width="?actionBarSize"
android:layout_height="?actionBarSize"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
android:layout_gravity="end|center_vertical"
android:scaleType="centerInside"
android:contentDescription="@string/save" />

View File

@@ -48,7 +48,6 @@
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?panel"/>
android:layout_height="match_parent" />
</LinearLayout>

View File

@@ -12,7 +12,6 @@
style="@style/MwmWidget.ToolbarStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?colorPrimary"
android:gravity="end|center_vertical"
android:theme="@style/MwmWidget.ToolbarTheme">
<com.google.android.material.imageview.ShapeableImageView

View File

@@ -22,8 +22,7 @@
<ScrollView
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?panel">
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"

View File

@@ -15,7 +15,7 @@
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:background="?colorPrimary"
android:elevation="@dimen/dp_0"
app:elevation="@dimen/dp_0">
<include

View File

@@ -45,7 +45,7 @@
android:paddingStart="0dp"
android:paddingEnd="@dimen/altitude_chart_container_padding_left">
<View
<com.google.android.material.divider.MaterialDivider
android:layout_width="match_parent"
android:layout_height="@dimen/divider_height"
android:background="?dividerHorizontal"/>

View File

@@ -4,7 +4,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?panel"
android:background="?windowBackgroundForced"
android:orientation="vertical">

View File

@@ -155,7 +155,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_half_plus"
android:layout_marginBottom="@dimen/margin_quarter"
android:background="?attr/selectableItemBackground"
android:background="?selectableItemBackground"
android:gravity="center"
android:orientation="horizontal"
android:paddingStart="@dimen/margin_quarter"

View File

@@ -29,7 +29,7 @@
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?panel"
android:background="?cardBackground"
android:padding="@dimen/margin_base"
android:text="@string/editor_focus_map_on_location"
app:layout_constraintTop_toBottomOf="@+id/toolbar_point_chooser" />

View File

@@ -4,7 +4,7 @@
android:id="@+id/pp_buttons_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?ppButtonsBackground"
android:background="?windowBackgroundForced"
android:orientation="horizontal"
android:layout_gravity="bottom">
<include layout="@layout/item_divider" />

View File

@@ -28,7 +28,7 @@
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
android:layout_alignParentStart="true"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
app:srcCompat="?homeAsUpIndicator"
android:scaleType="center"
tools:src="@drawable/ic_expand_more" />
@@ -143,7 +143,7 @@
android:id="@+id/driving_options_btn_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/drivingOptionsViewBg"
android:background="?drivingOptionsViewBg"
android:foreground="@drawable/shadow_top"
android:visibility="gone"
tools:visibility="visible">
@@ -151,7 +151,7 @@
android:id="@+id/driving_options_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
android:gravity="center"
android:minHeight="@dimen/height_block_base">
<LinearLayout

View File

@@ -14,7 +14,7 @@
android:id="@+id/back"
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
app:srcCompat="?homeAsUpIndicator"
android:scaleType="center"
tools:src="@drawable/ic_expand_more"
@@ -52,7 +52,7 @@
android:layout_height="?actionBarSize"
android:layout_gravity="center_vertical"
android:layout_weight="0"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@string/clear_the_search"
android:scaleType="center"
app:srcCompat="@drawable/ic_close"/>
@@ -63,7 +63,7 @@
android:layout_height="?actionBarSize"
android:layout_gravity="center_vertical"
android:layout_weight="0"
android:background="?attr/selectableItemBackgroundBorderless"
android:background="?selectableItemBackgroundBorderless"
android:contentDescription="@null"
android:scaleType="center"
app:srcCompat="@drawable/ic_mic_white"

View File

@@ -502,7 +502,7 @@
<string name="placepage_edit_bookmark_button">Lesezeichen bearbeiten</string>
<string name="placepage_personal_notes_hint">Persönliche Notizen (Text oder html)</string>
<string name="editor_reset_edits_message">Alle lokalen Änderungen verwerfen?</string>
<string name="editor_reset_edits_button">Verwerfen</string>
<string name="editor_reset_edits_button">Änderungen verwerfen</string>
<string name="editor_remove_place_message">Hinzugefügtes Objekt löschen?</string>
<string name="editor_remove_place_button">Löschen</string>
<string name="editor_place_doesnt_exist">Dieser Ort existiert nicht</string>
@@ -902,9 +902,17 @@
<item quantity="other">%d min</item>
</plurals>
<string name="editor_business_vacant_button">Geschäft steht leer</string>
<string name="editor_mark_business_vacant_title">Geschäft als leerstehend markieren</string>
<string name="editor_mark_business_vacant_title">Geschäft auf leerstehend setzen</string>
<string name="editor_submit">Absenden</string>
<string name="editor_mark_business_vacant_description">Wenn das Unternehmen ausgezogen ist und die Fläche leer und bereit für die nächste Miete ist.</string>
<string name="editor_mark_business_vacant_description">Verwenden Sie diese Option, wenn das Geschäft ausgezogen ist und ein neues Geschäft die leerstehenden Räume übernehmen könnte.</string>
<string name="charge_socket_schuko">Schuko</string>
<string name="power_management">Energiemanagement</string>
<string name="place_page_map_too_old_title">Kartendaten veraltet</string>
<string name="place_page_map_too_old_description">Die aktuellen Kartendaten sind sehr alt, bitte aktualisiere die Karte.</string>
<string name="place_page_app_too_old_description">Die aktuellen Kartendaten sind sehr alt, bitte aktualisiere die CoMaps-App.</string>
<string name="place_page_update_too_old_map">Kartenregion aktualisieren</string>
<string name="place_page_too_old_to_edit">OpenStreetMap-Bearbeitung ist deaktiviert, da die Kartendaten zu alt sind.</string>
<string name="prefs_speed_cameras_information">Blitzerwarnungen sind in Ländern deaktiviert, in denen Warnungen durch lokale Gesetze verboten sind.</string>
<string name="navigation_start_tts_message">"Navigation wird gestartet, Sprache der Sprachansagen: "</string>
<string name="navigation_start_tts_disabled_message">Sprachansagen deaktiviert: TTS-Engine nicht verfügbar</string>
</resources>

View File

@@ -42,15 +42,15 @@
<!-- Text in About screen -->
<string name="about_proposition_3">• آفلاین، چابک و جمع و جور</string>
<!-- Text in About screen -->
<string name="about_developed_by_enthusiasts">منبع کاملا باز، نه برای سود، تصمیم گیری شفاف و امور مالی شفاف.</string>
<string name="about_developed_by_enthusiasts">ویدابُن بُوَندگ، نه ازبرای سود، وزیریدن اود تیس‌های مالی رو راست.</string>
<!-- The button that opens system location settings -->
<string name="location_settings">پیکربندی‌های گیاگ</string>
<string name="close">بستن</string>
<string name="unsupported_phone">متأسفانه دستگاه شما از آن پشتیبانی نمی‌کندبرنامه برای اجرا به OpenGL نیازمند است.</string>
<string name="unsupported_phone">برنامه به OpenGL نیازمند است.شوربختانه، از دستگاه شما پشتیبانی نمی‌شود.</string>
<string name="download">بارگیری</string>
<!-- Used in DownloadResources startup screen -->
<string name="not_enough_free_space_on_sdcard">لطفا مقداری از فضای ذخیره‌سازی را آزاد نمایید</string>
<string name="download_resources">قبل از استفاده از اپلیکیشن, اجازه دهید تا ما نقشه جهانی را بر روی موبایل شما دانلود کنیم. \nمقدار %s از حافظه شما اشغال می شود.</string>
<string name="not_enough_free_space_on_sdcard">لطفا پیش از بکارگیری برنامه، نخست کمی جا در کارت SD/ویر USB آزاد کنید</string>
<string name="download_resources">پیش از بکارگیری برنامه, لطفا نقشه پیش‌نمایش جهانی را بر روی دستگاه خویش بارگیری کنید.\nاندازه %s از ویر شما را می‌گیرد.</string>
<string name="download_resources_continue">برو به نقشه</string>
<string name="downloading_country_can_proceed">بارگیری می‌شود %1$s (%2$s). شما اکنون می‌توانید\nبه نقشه بروید.</string>
<string name="download_country_ask">بارگیری %1$s؟ (%2$s)</string>
@@ -64,7 +64,7 @@
<!-- "Add new bookmark list" dialog title -->
<string name="add_new_set">افزودن پهرستی نو</string>
<!-- Should be used in the bookmarks-only context, see bookmarks_and_tracks if tracks are also implied. -->
<string name="bookmarks">نشانهها</string>
<string name="bookmarks">نشانگها</string>
<!-- "Bookmarks and Tracks" dialog title, also sync it with iphone/plist.txt -->
<string name="bookmarks_and_tracks">نشانه‌ها و مسیر ها</string>
<!-- Add bookmark dialog - bookmark name -->
@@ -138,7 +138,7 @@
<!-- Notes field in Bookmarks view -->
<string name="description">یادداشت‌ها</string>
<!-- message title of loading file -->
<string name="load_kmz_title">در حال بارگیری نشانهها</string>
<string name="load_kmz_title">بارگذاری نشانگها</string>
<!-- Kmz file successful loading -->
<string name="load_kmz_successful">نشانه‌ها با موفقیت بارگذاری شد!شما می توانید آنها را در نقشه یا بخش مدیریت نشانه‌ها بیابید.</string>
<!-- Kml file loading failed -->
@@ -784,4 +784,6 @@
<string name="backup_interval_every_week">هفتگی</string>
<string name="backup_interval_manual_only">خاموش (تنها به شیوه دستی)</string>
<string name="backup_interval_every_day">روزانه</string>
<string name="disconnect_usb_cable">برای بکارگیری CoMaps، لطفا USB را بگسلانید یا کارت‌ویر را اندرون گذارید.</string>
<string name="bookmark_set_name">نام پهرست نشانگ‌ها</string>
</resources>

View File

@@ -373,4 +373,6 @@
<string name="offline_explanation_title">Mappys Dhywarlinen</string>
<string name="category_shopping">Gwerthjiow</string>
<string name="edit">Golegi</string>
<string name="downloader_no_space_title">Nyns eus lowr dalghuster</string>
<string name="translated_om_site_url">https://comaps.app/</string>
</resources>

View File

@@ -503,7 +503,7 @@
<string name="placepage_edit_bookmark_button">Rediger bokmerke</string>
<string name="placepage_personal_notes_hint">Personlige notater (tekst eller html)</string>
<string name="editor_reset_edits_message">Forkaste alle lokale endringer?</string>
<string name="editor_reset_edits_button">Forkast</string>
<string name="editor_reset_edits_button">Forkast endringer</string>
<string name="editor_remove_place_message">Slette tillagt sted?</string>
<string name="editor_remove_place_button">Slett</string>
<string name="editor_place_doesnt_exist">Sted finnes ikke</string>
@@ -906,4 +906,10 @@
<string name="place_page_too_old_to_edit">OpenStreetMap-redigering er deaktivert fordi kartdataene er for gamle.</string>
<string name="osm_note_hint">Alternativt, så kan du legge til et notat i OpenStreetMap, slik at noen andre kan redigere eller legge til stedet.</string>
<string name="osm_note_toast">Notatet vil bli sendt til OpenStreetMap</string>
<string name="advanced">Avansert</string>
<string name="download_resources_custom_url_summary_none">Ikke angitt</string>
<string name="download_resources_custom_url_error_scheme">Angi en fullstendig nettadresse som starter med https:// og slutter med /</string>
<string name="download_resources_custom_url_hint">https://cdn-fi-1.comaps.app/</string>
<string name="download_resources_custom_url_message">Overstyr standardserveren som brukes til nedlasting av kart. La det stå tomt for å bruke CoMaps standardserver.</string>
<string name="download_resources_custom_url_title">Tilpasset kartserver</string>
</resources>

View File

@@ -88,19 +88,6 @@
<item name="android:textAppearanceSmall">@style/TextAppearance.Small</item>
<item name="android:textAppearanceMedium">@style/TextAppearance.Medium</item>
<item name="android:textAppearanceLarge">@style/TextAppearance.Large</item>
<item name="fontHeadline1">@style/TextAppearance.Headline1</item>
<item name="fontHeadline2">@style/TextAppearance.Headline2</item>
<item name="fontHeadline3">@style/TextAppearance.Headline3</item>
<item name="fontHeadline4">@style/TextAppearance.Headline4</item>
<item name="fontHeadline5">@style/TextAppearance.MaterialComponents.Headline5</item>
<item name="fontHeadline6">@style/TextAppearance.Headline6</item>
<item name="fontSubtitle1">@style/TextAppearance.Subtitle1</item>
<item name="fontSubtitle2">@style/TextAppearance.Subtitle2</item>
<item name="fontBody1">@style/TextAppearance.Body1</item>
<item name="fontBody2">@style/TextAppearance.Body2</item>
<item name="fontButton">@style/TextAppearance.Button</item>
<item name="fontCaption">@style/TextAppearance.Caption</item>
<item name="fontOverline">@style/TextAppearance.Overline</item>
<item name="drivingOptionsViewBg">@color/bg_primary_dark</item>
<item name="elevationProfilePropertyBg">@drawable/bg_rounded_rect</item>
<item name="elevationProfilePropIconTint">@color/white_secondary</item>

View File

@@ -909,4 +909,10 @@
<string name="prefs_speed_cameras_information">Avisos de câmaras de velocidade estão desativados em países onde alertas estão proibidos por lei.</string>
<string name="navigation_start_tts_message">"Iniciando Navegação, idioma das instruções por voz: "</string>
<string name="navigation_start_tts_disabled_message">Instruções por voz desativadas: nenhum motor de TTS disponível</string>
<string name="advanced">Avançadas</string>
<string name="download_resources_custom_url_title">Servidor de Mapa Personalizado</string>
<string name="download_resources_custom_url_message">Substitui o servidor de download de mapas normal. Deixe em branco para usar o servidor do CoMaps padrão.</string>
<string name="download_resources_custom_url_hint">https://cdn-fi-1.comaps.app/</string>
<string name="download_resources_custom_url_summary_none">Indefinido</string>
<string name="download_resources_custom_url_error_scheme">Por favor insira um URL inteiro começando com https:// e acabando com /</string>
</resources>

View File

@@ -277,7 +277,7 @@
<!-- Preference title -->
<string name="google_play_services">Serviciul de Localizare Fuzionat Google</string>
<!-- Preference text -->
<string name="pref_use_google_play">Un serviciu proprietar care combină GPS, Wi-Fi, rețelele celulare etc. pentru a-ți determina locația mai precisă. Se poate conecta la serverele Google.</string>
<string name="pref_use_google_play">Un serviciu proprietar care combină GPS, Wi-Fi, rețelele celulare etc. pentru a-ți determina locația mai precis. Se poate conecta la serverele Google.</string>
<!-- Preference title -->
<!-- Preference description -->
<!-- Text for routing error dialog -->
@@ -460,7 +460,7 @@
<string name="osm_presentation">Date OpenStreetMap create de comunitate la data de %s. Aflați mai multe despre cum să editați și să actualizați harta la OpenStreetMap.org</string>
<!-- OSM explanation on Android login screen -->
<string name="login_osm_presentation">OpenStreetMap.org (OSM) este un proiect comunitar pentru construirea unei hărți libere și deschise. Este principala sursă de date cartografice în CoMaps și funcționează similar cu Wikipedia. Puteți adăuga sau edita locuri, iar acestea devin disponibile pentru milioane de utilizatori din întreaga lume. \nAlăturați-vă comunității și ajutați la crearea unei hărți mai bune pentru toată lumea!</string>
<string name="login_to_make_edits_visible">Creați un cont OpenStreetMap sau conectați-vă pentru a vă publica edițiile de hartă în întreaga lume</string>
<string name="login_to_make_edits_visible">Creați un cont OpenStreetMap sau conectați-vă pentru a vă publica editările hărții pentru întreaga lume</string>
<!-- Downloaded 10 **of** 20 <- it is that "of" -->
<string name="downloader_of">%1$d din %2$d</string>
<string name="download_over_mobile_header">Vrei să descarci prin rețeaua de telefonie mobilă?</string>
@@ -475,7 +475,7 @@
<!-- Hint of the input field in the OSM note section of the editor -->
<string name="editor_note_hint">Descrieți erorile de pe hartă sau lucrurile care nu pot fi editate cu CoMaps</string>
<!-- Information about OSM at the top of the editing page -->
<string name="editor_about_osm">Edițiile dvs. sunt încărcate în baza de date publică <a href="https://wiki.openstreetmap.org/wiki/About_OpenStreetMap">OpenStreetMap</a>. Vă rugăm să nu adăugați informații personale sau protejate prin drepturi de autor.</string>
<string name="editor_about_osm">Editările dvs. sunt încărcate în baza de date publică <a href="https://wiki.openstreetmap.org/wiki/About_OpenStreetMap">OpenStreetMap</a>. Vă rugăm să nu adăugați informații personale sau protejate prin drepturi de autor.</string>
<string name="editor_more_about_osm">Mai multe despre OpenStreetMap</string>
<string name="editor_osm_history">Istoricul dvs. de editare</string>
<string name="editor_osm_notes">Note privind datele hărții dvs</string>
@@ -889,4 +889,13 @@
<string name="list_description_empty">Editează lista ca să adaugi o descriere</string>
<string name="charging_station_available_sockets">Conectori</string>
<string name="charge_socket_unknown_other">Alte tipuri necunoscute</string>
<string name="place_page_map_too_old_title">Harta este prea veche</string>
<string name="place_page_map_too_old_description">Harta dvs. este foarte veche, vă rugăm actualizați-o.</string>
<string name="place_page_app_too_old_description">Harta dvs. este foarte veche, vă rugăm actualizați CoMaps.</string>
<string name="place_page_update_too_old_map">Actualizează harta</string>
<string name="place_page_too_old_to_edit">Editarea OpenStreetMap este dezactivată pentru că harta descărcată este prea veche.</string>
<string name="prefs_speed_cameras_information">Avertizările pentru radare sunt dezactivate unde avertizarea este interzisă de legea locală.</string>
<string name="navigation_start_tts_disabled_message">Instrucțiuni vocale dezactivate: Nu este disponibil niciun sistem TTS</string>
<string name="charge_socket_count">Număr</string>
<string name="unknown_count">Necunoscut</string>
</resources>

View File

@@ -893,4 +893,5 @@
<string name="unknown_count">bilinmiyor</string>
<string name="error_value_must_be_positive">Değer pozitif olmalıdır</string>
<string name="error_invalid_number">Geçersiz sayı</string>
<string name="avoid_paved">Asfalt yollardan kaçın</string>
</resources>

View File

@@ -69,19 +69,4 @@
<attr name="elevationProfileSelectedPointTriangle" format="reference" />
<attr name="elevationProfileFloatingTriangle" format="reference" />
</declare-styleable>
<declare-styleable name="ThemeAttrs.Fonts">
<attr name="fontHeadline1" format="reference" />
<attr name="fontHeadline2" format="reference" />
<attr name="fontHeadline3" format="reference" />
<attr name="fontHeadline4" format="reference" />
<attr name="fontHeadline5" format="reference" />
<attr name="fontHeadline6" format="reference" />
<attr name="fontSubtitle1" format="reference" />
<attr name="fontSubtitle2" format="reference" />
<attr name="fontBody1" format="reference" />
<attr name="fontBody2" format="reference" />
<attr name="fontButton" format="reference" />
<attr name="fontCaption" format="reference" />
<attr name="fontOverline" format="reference" />
</declare-styleable>
</resources>

View File

@@ -93,19 +93,6 @@
<item name="android:textAppearanceSmallInverse">@style/TextAppearance.Small.Inverse</item>
<item name="android:textAppearanceMediumInverse">@style/TextAppearance.Medium.Inverse</item>
<item name="android:textAppearanceLargeInverse">@style/TextAppearance.Large.Inverse</item>
<item name="fontHeadline1">@style/TextAppearance.Headline1</item>
<item name="fontHeadline2">@style/TextAppearance.Headline2</item>
<item name="fontHeadline3">@style/TextAppearance.Headline3</item>
<item name="fontHeadline4">@style/TextAppearance.Headline4</item>
<item name="fontHeadline5">@style/TextAppearance.MaterialComponents.Headline5</item>
<item name="fontHeadline6">@style/TextAppearance.Headline6</item>
<item name="fontSubtitle1">@style/TextAppearance.Subtitle1</item>
<item name="fontSubtitle2">@style/TextAppearance.Subtitle2</item>
<item name="fontBody1">@style/TextAppearance.Body1</item>
<item name="fontBody2">@style/TextAppearance.Body2</item>
<item name="fontButton">@style/TextAppearance.Button</item>
<item name="fontCaption">@style/TextAppearance.Caption</item>
<item name="fontOverline">@style/TextAppearance.Overline</item>
<item name="drivingOptionsViewBg">@color/bg_primary_dark</item>
<item name="elevationProfilePropertyBg">@drawable/bg_rounded_rect</item>
<item name="elevationProfilePropIconTint">@color/black_secondary</item>

View File

@@ -707,7 +707,7 @@
<string name="type.natural.beach.sand">Playa de arena</string>
<string name="type.natural.beach.gravel">Playa de grava</string>
<string name="type.natural.cape">Cabo</string>
<string name="type.natural.cave_entrance">Cueva</string>
<string name="type.natural.cave_entrance">Entrada de cueva</string>
<string name="type.natural.cliff">Acantilado</string>
<string name="type.natural.earth_bank">Talud de tierra</string>
<string name="type.man_made.embankment">Terraplén</string>
@@ -743,7 +743,7 @@
<string name="type.natural.wetland.marsh">Ciénaga</string>
<string name="type.noexit">Sin salida</string>
<string name="type.office">Oficina</string>
<string name="type.office.company">Oficina</string>
<string name="type.office.company">Oficina de compañía</string>
<string name="type.office.estate_agent">Agente inmobiliario</string>
<string name="type.office.government">Oficina gubernamental</string>
<string name="type.office.insurance">Oficina de seguros</string>
@@ -784,13 +784,13 @@
<string name="type.place.state">Estado</string>
<string name="type.place.state.USA">Estado</string>
<!-- Named part of a city or town, bigger than place=quarter (Wiki: https://wiki.openstreetmap.org/wiki/Tag:place%3Dsuburb) -->
<string name="type.place.suburb">Barrio</string>
<string name="type.place.suburb">Suburbio</string>
<string name="type.place.town">Pueblo</string>
<string name="type.place.village">Pueblo</string>
<string name="type.power">Energía</string>
<string name="type.power.generator">Generador</string>
<string name="type.power.generator.solar">Generador solar</string>
<string name="type.power.generator.wind">Generador de viento</string>
<string name="type.power.generator.wind">Aerogenerador</string>
<string name="type.power.generator.gas">Planta termoeléctrica de gas</string>
<string name="type.power.generator.hydro">Planta hidroeléctrica</string>
<string name="type.power.line">Línea eléctrica</string>
@@ -849,10 +849,10 @@
<string name="type.railway.station">Estación de tren</string>
<string name="type.railway.station.funicular">Funicular</string>
<string name="type.railway.station.light_rail">Estación de tren</string>
<string name="type.railway.station.light_rail.berlin">Estación de tren</string>
<string name="type.railway.station.light_rail.berlin">Estación de tren (S-Bahn)</string>
<string name="type.railway.station.light_rail.london">Estación de tren</string>
<string name="type.railway.station.light_rail.porto">Estación de tren</string>
<string name="type.railway.station.monorail">Estación de tren</string>
<string name="type.railway.station.light_rail.porto">Estación de metro</string>
<string name="type.railway.station.monorail">Estación de monoriel</string>
<string name="type.railway.station.subway">Estación de metro</string>
<string name="type.railway.station.subway.adana">Estación de metro</string>
<string name="type.railway.station.subway.algiers">Estación de metro</string>
@@ -1207,7 +1207,7 @@
<string name="type.shop.tobacco">Tabaco</string>
<string name="type.shop.trade">Suministros comerciales</string>
<string name="type.shop.watches">Relojes</string>
<string name="type.shop.wholesale">Almacén al por mayor</string>
<string name="type.shop.wholesale">Tienda al por mayor</string>
<string name="type.sport">Deporte</string>
<string name="type.sport.american_football">Fútbol americano</string>
<string name="type.sport.archery">Tiro al arco</string>
@@ -1247,7 +1247,7 @@
<string name="type.tourism.aquarium">Acuario</string>
<!-- Typically serviced, staff is present and food is available (compared to wilderness_hut). -->
<string name="type.tourism.alpine_hut">Albergue de montaña</string>
<string name="type.tourism.apartment">Apartamento de vacaciones</string>
<string name="type.tourism.apartment">Apartamento vacacional</string>
<string name="type.tourism.artwork">Obra de arte</string>
<string name="type.tourism.artwork.architecture">Arte arquitectónico</string>
<string name="type.tourism.artwork.painting">Pintura</string>

View File

@@ -1494,4 +1494,5 @@
<string name="type.spherical_buoy.safe_water">Faarvaatri kerapoi</string>
<string name="type.man_made.mast.communication">Sidemast</string>
<string name="type.shop.beauty.nails">Küünestuudio</string>
<string name="type.amenity.hydrant">Kastmishüdrant</string>
</resources>

View File

@@ -1500,4 +1500,5 @@
<string name="type.shop.beauty.nails">Nagelsalon</string>
<string name="type.amenity.food_sharing">Voedsel delen</string>
<string name="type.amenity.give_box">Giftenkist</string>
<string name="type.amenity.hydrant">Watertappunt|waterkraan</string>
</resources>

View File

@@ -1501,4 +1501,5 @@
<string name="type.natural.tree">Árvore</string>
<string name="type.shop.beauty.nails">Salão de Unhas</string>
<string name="type.xmas.tree">Árvore de Natal</string>
<string name="type.amenity.hydrant">Boca de Rega</string>
</resources>

View File

@@ -369,4 +369,92 @@
<string name="type.cuisine.breakfast">Zajtrk</string>
<string name="type.cuisine.bubble_tea">Čaj s tapiokinimi kroglicami (\'Bubble Tea\')</string>
<string name="type.cuisine.chicken">Piščanec</string>
<string name="type.cuisine.greek">Grška kuhinja</string>
<string name="type.cuisine.hungarian">Madžarska kuhinja</string>
<string name="type.cuisine.ice_cream">Sladoled</string>
<string name="type.cuisine.indian">Indijska kuhinja</string>
<string name="type.cuisine.indonesian">Indonezijska kuhinja</string>
<string name="type.cuisine.international">Mednarodna kuhinja</string>
<string name="type.cuisine.irish">Irska kuhinja</string>
<string name="type.cuisine.italian">Italijanska kuhinja</string>
<string name="type.cuisine.italian_pizza">Italijanska kuhinja, pica</string>
<string name="type.cuisine.japanese">Japonska kuhinja</string>
<string name="type.cuisine.korean">Korejska kuhinja</string>
<string name="type.cuisine.lao">Laoška kuhinja</string>
<string name="type.cuisine.lebanese">Libanonska kuhinja</string>
<string name="type.cuisine.local">Krajevna kuhinja</string>
<string name="type.cuisine.malaysian">Malezijska kuhinja</string>
<string name="type.cuisine.mediterranean">Sredozemska kuhinja</string>
<string name="type.cuisine.mexican">Mehiška kuhinja</string>
<string name="type.cuisine.moroccan">Maroška kuhinja</string>
<string name="type.cuisine.oriental">Orientalska kuhinja</string>
<string name="type.cuisine.pancake">Palačinke</string>
<string name="type.cuisine.pasta">Testenine</string>
<string name="type.cuisine.persian">Perzijska kuhinja</string>
<string name="type.cuisine.peruvian">Perujska kuhinja</string>
<string name="type.cuisine.pizza">Pica</string>
<string name="type.cuisine.polish">Poljska kuhinja</string>
<string name="type.cuisine.portuguese">Portugalska kuhinja</string>
<string name="type.cuisine.russian">Ruska kuhinja</string>
<string name="type.cuisine.sandwich">Sendvič</string>
<string name="type.cuisine.sausage">Salama</string>
<string name="type.cuisine.savory_pancakes">Slane palačinke</string>
<string name="type.cuisine.seafood">Morska hrana</string>
<string name="type.cuisine.soba">Soba (ajdovi rezanci)</string>
<string name="type.cuisine.spanish">Španska kuhinja</string>
<string name="type.cuisine.steak_house">Zrezkarnica</string>
<string name="type.cuisine.sushi">Suši</string>
<string name="type.cuisine.tea">Čaj</string>
<string name="type.cuisine.turkish">Turška kuhinja</string>
<string name="type.cuisine.vegan">Veganska kuhinja</string>
<string name="type.cuisine.vegetarian">Vegetarijanska kuhinja</string>
<string name="type.cuisine.vietnamese">Vietnamska kuhinja</string>
<string name="type.emergency">V sili</string>
<string name="type.emergency.access_point">Reševalno mesto</string>
<string name="type.emergency.assembly_point">Zbirno mesto</string>
<string name="type.emergency.life_ring">Reševalni obroč</string>
<string name="type.emergency.defibrillator">Defibrilator</string>
<string name="type.emergency.fire_hydrant">Požarni hidrant</string>
<string name="type.amenity.hydrant">Namakalni hidrant</string>
<string name="type.emergency.phone">Telefon v sili</string>
<string name="type.emergency.lifeguard">Reševalec</string>
<string name="type.beacon.cardinal.east">Glavni usmerjevalni znak</string>
<string name="type.beacon.cardinal.north">Glavni usmerjevalni znak</string>
<string name="type.beacon.cardinal.south">Glavni usmerjevalni znak</string>
<string name="type.beacon.cardinal.west">Glavni usmerjevalni znak</string>
<string name="type.beacon.isolated_danger">Usmerjevalni znak ločene nevarnosti</string>
<string name="type.craft.caterer">Ponudnik cateringa</string>
<string name="type.cuisine.balkan">Balkanska kuhinja</string>
<string name="type.cuisine.barbecue">Jedi na žaru</string>
<string name="type.cuisine.bavarian">Bavarska kuhinja</string>
<string name="type.cuisine.brazilian">Brazilska kuhinja</string>
<string name="type.cuisine.burger">Burger</string>
<string name="type.cuisine.buschenschank">Vinotoč (Buschenschank)</string>
<string name="type.cuisine.deli">Delkatesa</string>
<string name="type.cuisine.regional">Regionalna kuhinja</string>
<string name="type.cuisine.tapas">Tapas (španski prigrizki)</string>
<string name="type.cuisine.thai">Tajska kuhinja</string>
<string name="type.beacon.lateral.port">Bočni usmerjevalni znak</string>
<string name="type.beacon.lateral.starboard">Bočni usmerjevalni znak</string>
<string name="type.beacon.safe_water">Znak varne plovne poti</string>
<string name="type.beacon.special_purpose">Usmerjevalni znak posebnega namena</string>
<string name="type.buoy.cardinal.east">Glavna boja</string>
<string name="type.buoy.cardinal.north">Glavna boja</string>
<string name="type.buoy.cardinal.south">Glavna boja</string>
<string name="type.buoy.cardinal.west">Glavna boja</string>
<string name="type.lateral.port">Pristanišče</string>
<string name="type.cardinal.east">Vzhod</string>
<string name="type.cardinal.north">Sever</string>
<string name="type.cardinal.south">Jug</string>
<string name="type.cardinal.west">Zahod</string>
<string name="type.emergency.mountain_rescue">Postaja gorskih reševalcev</string>
<string name="type.entrance">Vhod</string>
<string name="type.entrance.main">Glavni vhod</string>
<string name="type.entrance.house">Vhod hiše</string>
<string name="type.entrance.garage">Vhod garaže</string>
<string name="type.entrance.service">Servisni vhod</string>
<string name="type.entrance.entry">Vstop (samo)</string>
<string name="type.entrance.exit">Izhod (samo)</string>
<string name="type.healthcare.laboratory">Zdravstveni laboratorij</string>
<string name="type.healthcare.psychotherapist">Psihoterapevt</string>
</resources>

View File

@@ -1399,4 +1399,5 @@
<string name="type.amenity.ranger_station">Orman Bekçisi</string>
<string name="type.amenity.bench.backless">Sırtıık Bank</string>
<string name="type.amenity.charging_station.motorcar.small">Araç Şarj Noktası</string>
<string name="type.amenity.sailing_school">Denizcilik Okulu</string>
</resources>

View File

@@ -34,7 +34,7 @@
"shop-farm|@category_food|@shop": "Farm food",
"shop-garden_centre|@shop": "4Garden Centre|U+1F3E1",
"shop-grocery|@category_food|@shop": "Grocery",
"shop-health_food|@category_food|@shop": "7Health food|7Healthy food|healthfood|organic|vegan|vegetarian",
"shop-health_food|@category_food|@shop": "7Health food|7Healthy food|healthfood|organic",
"shop-hearing_aids|@shop": "7Hearing Aids",
"shop-mobile_phone|@shop": "4Cell Phones|4Mobile Phones|6smartphones|electronics store|U+1F4F1|U+1F4F2",
"shop-florist|@shop": "4Florist|U+1F337|U+1F338|U+1F339|U+1F33A|U+1F33B|U+1F33C|U+1F490|U+1F33E|4flowers|flower shop|floral shop|floral arrangements|same day flowers|bouquet",

View File

@@ -220,13 +220,13 @@
"tourism-motel|@category_hotel": "3Motel|auberge de jeunesse",
"tourism-alpine_hut|@category_hotel": "Refuge de montagne|auberge de jeunesse|cabane alpine",
"shop-hairdresser": "3Coiffeur|salon de coiffure",
"aeroway-aerodrome": "3Aéroport|3aérodrome|3avion",
"aeroway-aerodrome": "3Aéroport|3aérodrome|3avion|3aérogare",
"leisure-stadium": "4Stade|4sport",
"leisure-playground|@category_children": "Terrain de jeu|aire de jeu",
"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": "Centre sportif|sport",
"leisure-playground|@category_children": "Terrain de jeu|aire de jeu|parc de jeux|espace de jeu",
"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": "Centre sportif|salle omnisports|complexe sportif|sport",
"leisure-golf_course": "Terrain de golf|Parcours de golf",
"leisure-miniature_golf": "Minigolf",
"leisure-escape_game": "Salle d'évasion",
"leisure-escape_game": "Salle d'évasion|escape game",
"leisure-pitch": "Terrain de sport|sport",
"leisure-swimming_pool": "4Piscine|sport",
"sport-american_football": "Football américain",
@@ -245,12 +245,12 @@
"sport-gymnastics": "Gymnastique",
"sport-handball": "Handball",
"sport-scuba_diving": "Plongée sous-marine",
"sport-shooting": "Stand de tir|Centre de tir",
"sport-shooting": "Stand de tir|Centre de tir|champ de tir|salle de tir",
"sport-skateboard": "Skateboard",
"sport-skiing": "Ski",
"sport-soccer": "Football",
"sport-swimming": "Piscine|Natation",
"sport-table_tennis": "Tennis de table",
"sport-table_tennis": "Tennis de table|Ping Pong",
"sport-tennis": "Tennis",
"sport-padel": "Padel",
"sport-volleyball": "Volley-ball",
@@ -272,27 +272,27 @@
"natural-water-pond|@waterbody": "Étang|bassin",
"natural-water-lake|@waterbody": "Lac",
"natural-water-reservoir|landuse-reservoir|@waterbody": "5Réservoir",
"waterway-river|waterway-stream|natural-water-river": "Rivière|fleuve",
"waterway-river|waterway-stream|natural-water-river": "Rivière|fleuve|ruisseau|cours d'eau|torrent",
"waterway-canal": "Canal",
"shop-car_repair": "3Réparation d'automobiles|3garage|4station service|voiture|auto|garagiste|mécano|mécanicien automobile",
"tourism-camp_site|@category_hotel": "4Camping|terrain de camping",
"tourism-caravan_site|@category_rv||@category_hotel": "4Parc caravanier|VR|caravane|camping-car",
"office": "Bureau|compagnie",
"office-company": "Bureaux d'entreprise",
"office-government": "Administration publique",
"office-lawyer": "Cabinet d'avocat",
"office-government": "Administration publique|service public|fonction publique|service civil|services administratifs",
"office-lawyer": "Cabinet d'avocat|bureau d'avocat",
"office-telecommunication": "Opérateur mobile",
"craft-beekeeper": "Apiculteur",
"craft-blacksmith": "Forgeron",
"craft-brewery": "Brasserie artisanale|Brasseur",
"craft-brewery": "Brasserie artisanale|Brasseur|micro-brasserie",
"craft-caterer": "Traiteur",
"craft-carpenter": "Menuisier|charpentier",
"craft-confectionery": "Confiseur",
"craft-electrician": "4Électricien",
"craft-electronics_repair": "Réparation d'appareils électroniques",
"craft-gardener": "Paysagiste",
"craft-gardener": "Paysagiste|jardinier",
"craft-grinding_mill": "Moulin",
"craft-handicraft": "Artisanat",
"craft-handicraft": "Artisanat|fait-main|métiers d'art",
"craft-hvac": "Chauffage, ventilation et climatisation",
"craft-metal_construction": "5Métallo|métallurgiste",
"craft-key_cutter": "Reproduction de clé",
@@ -302,7 +302,7 @@
"craft-plumber": "Plombier",
"craft-sawmill": "Scierie",
"craft-shoemaker": "Cordonnier",
"craft-winery": "Chai",
"craft-winery": "Chai|établissement vinicole",
"craft-tailor": "5Tailleur",
"area:highway-footway|area:highway-pedestrian|area:highway-steps|place-square": "Place",
"place-sea": "Mer",
@@ -320,11 +320,11 @@
"shop-copyshop": "Boutique de photocopies|5Imprimerie",
"shop-photo|@shop": "5Matériel de photographie|5Photographie|Cadres",
"shop-camera|@shop": "Boutique d'appareils photo",
"shop-travel_agency": "Agence de voyages|Voyages organisés",
"shop-travel_agency": "Agence de voyages|Voyages organisés|agence de tourisme|voyagiste",
"shop-outdoor|@shop": "Matériel de loisirs de plein air|Randonnée|Escalade|Camping",
"shop-dry_cleaning": "Nettoyage à sec|Pressing|Lavage",
"shop-tyres|@shop": "Pneu|Pneus",
"amenity-car_wash": "Station de lavage|lavage-autp",
"amenity-car_wash": "Station de lavage|lavage-auto|lavage de voiture",
"amenity-veterinary": "Docteur vétérinaire|véto|Clinique vétérinaire",
"@charging_station": "Borne de recharge|station de recharge|4voiture électrique|4recharge|IRVE",
"amenity-charging_station-bicycle|@charging_station": "Chargement des vélos",
@@ -332,14 +332,14 @@
"amenity-bicycle_parking": "Parking à vélo|Stationnement vélo",
"amenity-waste_basket": "Poubelle",
"emergency-phone": "3Téléphone d'urgence",
"leisure-fitness_centre": "Centre fitness|salle de gym|salle de sport",
"leisure-fitness_centre": "Centre fitness|salle de gym|salle de sport|centre de remise en forme",
"leisure-sauna": "3Sauna",
"shop-car_repair-tyres|shop-car_repair": "Réparation de pneus",
"shop-chemist|@shop": "4Droguerie",
"shop-pet|@shop": "5Animalerie",
"tourism-zoo|@category_tourism|@category_children": "Zoo|Parc Animalier",
"shop-pet|@shop": "5Animalerie|magasin d'animaux",
"tourism-zoo|@category_tourism|@category_children": "Zoo|Parc Animalier|ménagerie|parc zoologique",
"attraction-animal": "Enclos pour animaux",
"tourism-information-office|amenity-ranger_station|@category_tourism": "Office de tourisme|syndicat d'initiative",
"tourism-information-office|amenity-ranger_station|@category_tourism": "Office de tourisme|syndicat d'initiative|bureau d'information touristique",
"tourism-information-visitor_centre|amenity-ranger_station|@category_tourism": "centre de visite",
"amenity-community_centre": "Centre communautaire|Salle polyvalente|Salle des fêtes",
"amenity-compressed_air": "Air comprimé",
@@ -350,14 +350,14 @@
"amenity-vending_machine-drinks": "Distributeur de boissons|cannettes",
"amenity-vending_machine-food|@category_food": "Distributeur d'aliments|Aliments",
"amenity-vending_machine-parking_tickets|@category_parking": "Horodateur|parcmètre",
"amenity-vending_machine-public_transport_tickets|@category_transport": "Distributeur de billets de transport en commun|ticket de bus",
"amenity-vending_machine-public_transport_tickets|@category_transport": "Distributeur de billets de transport en commun|ticket de bus|ticket de tram|ticket de métro",
"amenity-vending_machine-newspapers": "Distributeur de journaux|Journaux",
"amenity-vending_machine-sweets": "Distributeur de bonbons|Bonbons",
"amenity-vending_machine-excrement_bags": "5Distributeur de sacs à excréments",
"amenity-parcel_locker|@category_post": "Consigne automatique pour colis|3locker",
"shop-outpost": "Point de retrait",
"building-garage": "Garage",
"highway-rest_area|highway-services": "Aire de repos|Aire de service",
"highway-rest_area|highway-services": "Aire de repos|Aire de service|relais routier",
"man_made-chimney": "Cheminée",
"man_made-tower|man_made-flare": "Tour",
"shop-bookmaker|@gambling": "Bookmaker",
@@ -371,12 +371,12 @@
"tourism-information-board": "Panneau d'informations",
"tourism-information-map": "Carte touristique|Plan",
"aerialway-station": "Remontées mécaniques",
"aeroway-helipad": "Hélisurface",
"barrier-border_control": "Contrôle aux frontières",
"aeroway-helipad": "Hélisurface|zone d'atterrissage pour hélicoptères",
"barrier-border_control": "Contrôle aux frontières|contrôle frontalier",
"leisure-water_park|@category_tourism|@category_children": "Centre aquatique|Parc aquatique",
"man_made-water_tower": "Château d'eau",
"man_made-windmill": "Moulin",
"natural-cave_entrance": "4Grotte",
"natural-cave_entrance": "4Grotte|caverne",
"natural-volcano|@mountain": "4Volcan",
"office-estate_agent": "Agence immobilière|agent immobilier",
"waterway-lock_gate": "Écluse",
@@ -387,24 +387,24 @@
"leisure-resort|@category_hotel": "Complexe touristique",
"amenity-biergarten|@category_eat|@category_nightlife": "5Biergarten",
"amenity-driving_school": "4Auto-école|École de conduite",
"amenity-music_school": "École de musique",
"amenity-music_school": "École de musique|conservatoire de musique",
"amenity-language_school": "École de langue",
"amenity-ice_cream": "Stand de crème glacée|Marchand de glaces|Glacier",
"amenity-internet_cafe": "5Cybercafé",
"amenity-motorcycle_parking": "Parking moto|Stationnement moto",
"amenity-parking_space-disabled|@category_parking": "Place de stationnement handicapé|Stationnement PMR|Parking PMR",
"amenity-nursing_home": "Maison de retraite|résidence pour personnes âgées",
"amenity-nursing_home": "Maison de retraite|résidence pour personnes âgées|EHPAD",
"amenity-payment_terminal": "Terminal de paiement",
"amenity-public_bath": "Bain public",
"amenity-shower": "Douche",
"emergency-assembly_point": "Point de rassemblement d'urgence",
"emergency-defibrillator": "4Défibrillateur|DAE",
"emergency-fire_hydrant": "Bouche dincendie|bouche de incendie|borne dincendie|borne de incendie|Borne hydratante|Poteau dincendie|Hydrant|Hydrante",
"amenity-hydrant": "Bouche dpuisage|bouche de puisage|borne dpuisage|bourne de puisage|Hydrant|Hydrante",
"emergency-lifeguard": "Sauveteur durgence|Sauveteur",
"emergency-fire_hydrant": "Bouche dincendie|borne dincendie|Poteau dincendie|Hydrant",
"amenity-hydrant": "Bouche de puisage|borne de puisage|Hydrant",
"emergency-lifeguard": "Sauveteur durgence",
"emergency-mountain_rescue": "Sauveteurs en montagne durgence",
"leisure-fitness_station": "Station de fitness|Parcours de santé",
"office-insurance": "Bureau dassurance|assureur|Agent d'assurance",
"office-insurance": "Bureau dassurance|assureur|Agent d'assurance|courtier en assurance|compagnie d'assurance",
"office-ngo": "Bureau d'ONG|organisation non gouvernementale|Bureau ONG",
"shop-erotic|@shop": "Boutique érotique",
"shop-massage": "Salon de massage",
@@ -416,10 +416,10 @@
"shop-tattoo": "Salon de tatouage|tatoueur",
"shop-variety_store|@category_shopping|@shop": "Bazar",
"shop-video|@shop": "Boutique de vidéos|videostore",
"shop-video_games|@shop": "Boutique de jeux vidéo",
"shop-video_games|@shop": "Boutique de jeux vidéos",
"tourism-wilderness_hut|@category_hotel": "Refuge non gardé|Refuge-bivouac",
"tourism-gallery|@category_tourism": "3Galerie d'art|musée d'art",
"tourism-theme_park|@category_tourism|@category_children": "Parc d'attractions|Parc de loisirs",
"tourism-gallery|@category_tourism": "3Galerie d'art|musée d'art|galerie de peinture",
"tourism-theme_park|@category_tourism|@category_children": "Parc d'attractions|Parc de loisirs|parc à thèmes",
"boundary-national_park|@category_tourism": "Parc national",
"leisure-nature_reserve|@category_tourism": "Réserve naturelle",
"natural-cape": "Cap",
@@ -447,7 +447,7 @@
"shop-medical_supply|@shop": "Materiel médical",
"shop-nutrition_supplements|@shop": "Suppléments nutritionnels",
"shop-paint|@shop": "Magasin de peinture",
"shop-perfumery|@category_shopping|@shop": "Parfumerie",
"shop-perfumery|@category_shopping|@shop": "Parfumerie|boutique de parfum",
"shop-sewing|@shop": "Mercerie|Couture",
"shop-storage_rental": "Location de stockage",
"shop-tobacco|@shop": "Bureau de tabac",
@@ -462,19 +462,19 @@
"amenity-social_facility": "Établissement de services sociaux",
"leisure-sports_hall": "Salle de sport",
"amenity-arts_centre|@category_tourism": "Centre artistique",
"amenity-prison": "prison",
"amenity-prison": "prison|centre pénitentiaire|centre de détention",
"amenity-exhibition_centre": "Centre d'exposition",
"shop-bathroom_furnishing|@shop": "Mobilier de salle de bain",
"shop-bed|@shop": "Magasin de literie",
"shop-boutique|@shop": "Boutique",
"amenity-food_court": "Aire de restauration",
"amenity-food_court": "Aire de restauration|foodcourt",
"shop-curtain|@shop": "Magasin de rideaux",
"shop-gas|@shop": "Vente de gaz",
"shop-gas|@shop": "Vente de gaz|bouteille de gaz",
"shop-pet_grooming": "Salon de toilettage",
"shop-hifi|@shop": "Matériel Hi-Fi",
"amenity-conference_centre": "Centre de conférence",
"shop-herbalist|@shop": "Herboristerie",
"shop-appliance|@shop": "Magasin d'électroménager",
"shop-appliance|@shop": "Magasin d'électroménager|boutique d'électroménager",
"shop-agrarian|@shop": "Magasin d'agriculture",
"shop-fashion_accessories|@shop": "Boutique d'accessoires de mode",
"amenity-waste_transfer_station": "Station de transfert de déchets",
@@ -489,7 +489,7 @@
"amenity-charging_station-motorcar|amenity-charging_station-motorcar-small|@charging_station": "Chargeur automobile|Chargeur de voiture|Chargeur",
"shop-lighting|@shop": "4Lumières|Luminaires|4Lampes",
"office-security": "Bureau de sécurité",
"building-guardhouse": "Garde",
"building-guardhouse": "Garde|poste de sécurité|poste de gardiennage",
"leisure-dance|@category_entertainment": "4Danse|École de danse",
"shop-money_lender": "Prêteur d'argent",
"attraction-amusement_ride|attraction-carousel|attraction-roller_coaster|attraction-maze|attraction-historic|attraction-big_wheel|attraction-bumper_car|@category_children": "Attraction|Labyrinthe",

View File

@@ -550,7 +550,7 @@
"Italy_Emilia-Romagna_Forli-Cesena":"Покрајина Форли-Чезена",
"Italy_Emilia-Romagna_Modena":"Покрајина Модена",
"Italy_Emilia-Romagna_Parma":"Покрајина Парма",
"Italy_Emilia-Romagna_Piacenza":"Покрајина Пјаћенца",
"Italy_Emilia-Romagna_Piacenza":"Покрајина Пјаченца",
"Italy_Emilia-Romagna_Ravenna":"Покрајина Равена",
"Italy_Emilia-Romagna_Reggio Emilia":"Покрајина Ређо Емилија",
"Italy_Emilia-Romagna_Rimini":"Покрајина Римини",
@@ -1881,7 +1881,7 @@
"Italy_Veneto_Treviso Description":"Тревизо, Конелијано, Кастелфранко Венето",
"Italy_Veneto_Venezia Description":"Венеција, Местре, Кјоџа",
"Italy_Veneto_Verona Description":"Верона, Вилафранка ди Верона, Лењаго",
"Italy_Veneto_Vicenza Description":"Вићенца, Басано дел Грапа, Скио",
"Italy_Veneto_Vicenza Description":"Виченца, Басано дел Грапа, Скио",
"Jamaica Description":"Кингстон, Монтего Беј, Спениш Таун",
"Japan_Chubu Region_Aichi_Nagoya Description":"Нагоја, Цушима, Кијосу",
"Japan_Chubu Region_Aichi_Toyohashi Description":"Тахара, Гамагори, Нишио",

View File

@@ -28,7 +28,7 @@
"take_exit_number":"Nehmen Sie die Ausfahrt auf",
"take_exit_number_street_verb":"NULL",
"route_recalculating":"Neuberechnung der Route",
"destination":"Werden Sie ankommen.",
"destination":"erreichen Sie ihr Ziel.",
"you_have_reached_the_destination":"Sie haben Ihr Ziel erreicht.",
"in_50_meters":"In fünfzig Metern",
"in_100_meters":"In einhundert Metern",

View File

@@ -1,32 +1,32 @@
{
"make_a_slight_right_turn":"Rechts aanhouden.",
"make_a_slight_right_turn_street":"flauwe bocht naar rechts",
"make_a_slight_right_turn_street":"een flauwe bocht naar rechts",
"make_a_right_turn":"Sla rechtsaf.",
"make_a_right_turn_street":"Sla rechtsaf",
"make_a_sharp_right_turn":"Scherp rechtsaf.",
"make_a_sharp_right_turn_street":"scherp naar rechts afslaan",
"enter_the_roundabout":"Rij de rotonde op.",
"enter_the_roundabout_street":"de rotonde",
"enter_the_roundabout_street_verb":"Rijd",
"enter_the_roundabout_street":"de rotonde op",
"enter_the_roundabout_street_verb":"Rij",
"leave_the_roundabout":"Verlaat de rotonde.",
"leave_the_roundabout_street":"de rotonde",
"leave_the_roundabout_street_verb":"Verlaat",
"make_a_slight_left_turn":"Links aanhouden.",
"make_a_slight_left_turn_street":"de flauwe bocht naar links",
"make_a_slight_left_turn_street":"een flauwe bocht naar links",
"make_a_slight_left_turn_street_verb":"Neem",
"make_a_left_turn":"Sla linksaf.",
"make_a_left_turn_street":"naar links afslaan",
"make_a_left_turn_street":"Sla linksaf",
"make_a_sharp_left_turn":"Scherp linksaf.",
"make_a_sharp_left_turn_street":"scherp naar links afslaan",
"make_a_u_turn":"Keer om.",
"make_a_u_turn_street":"NULL",
"make_a_u_turn_street_verb":"NULL",
"make_a_u_turn_street":"om",
"make_a_u_turn_street_verb":"Keer",
"go_straight":"Rij rechtdoor.",
"exit":"Verlaat.",
"onto":"naar",
"take_exit_number":"Verlaat naar",
"take_exit_number_street_verb":"Neem",
"route_recalculating":"De route herberekenen",
"route_recalculating":"Route herberekenen",
"destination":"Arriveert u.",
"you_have_reached_the_destination":"Bestemming bereikt.",
"in_50_meters":"Over vijftig meter",
@@ -104,5 +104,5 @@
"in_1_5_miles":"Over anderhalve mijl",
"in_2_miles":"Over twee mijl",
"unknown_camera":"Camera in zicht",
"make_a_slight_right_turn_street_verb":"NULL"
"make_a_slight_right_turn_street_verb":"Neem"
}

View File

@@ -685,7 +685,7 @@
"editor_edits_sent_message" = "Ihre Notiz wird an OpenStreetMap gesendet";
"editor_comment_hint" = "Kommentar…";
"editor_reset_edits_message" = "Alle lokalen Korrekturen verwerfen?";
"editor_reset_edits_button" = "Verwerfen";
"editor_reset_edits_button" = "Änderungen verwerfen";
"editor_remove_place_message" = "Hinzugefügtes Objekt löschen?";
"editor_remove_place_button" = "Löschen";
"editor_place_doesnt_exist" = "Dieser Ort existiert nicht";

View File

@@ -779,7 +779,7 @@
"type.natural.beach.sand" = "Playa de arena";
"type.natural.beach.gravel" = "Playa de grava";
"type.natural.cape" = "Cabo";
"type.natural.cave_entrance" = "Cueva";
"type.natural.cave_entrance" = "Entrada de cueva";
"type.natural.cliff" = "Acantilado";
"type.natural.earth_bank" = "Talud de tierra";
"type.man_made.embankment" = "Terraplén";
@@ -815,7 +815,7 @@
"type.natural.wetland.marsh" = "Ciénaga";
"type.noexit" = "Sin salida";
"type.office" = "Oficina";
"type.office.company" = "Oficina";
"type.office.company" = "Oficina de compañía";
"type.office.estate_agent" = "Agente inmobiliario";
"type.office.government" = "Oficina gubernamental";
"type.office.insurance" = "Oficina de seguros";
@@ -859,13 +859,13 @@
"type.place.state.USA" = "Estado";
/* Named part of a city or town, bigger than place=quarter (Wiki: https://wiki.openstreetmap.org/wiki/Tag:place%3Dsuburb) */
"type.place.suburb" = "Barrio";
"type.place.suburb" = "Suburbio";
"type.place.town" = "Pueblo";
"type.place.village" = "Pueblo";
"type.power" = "Energía";
"type.power.generator" = "Generador";
"type.power.generator.solar" = "Generador solar";
"type.power.generator.wind" = "Generador de viento";
"type.power.generator.wind" = "Aerogenerador";
"type.power.generator.gas" = "Planta termoeléctrica de gas";
"type.power.generator.hydro" = "Planta hidroeléctrica";
"type.power.line" = "Línea eléctrica";
@@ -947,10 +947,10 @@
"type.railway.station" = "Estación de tren";
"type.railway.station.funicular" = "Funicular";
"type.railway.station.light_rail" = "Estación de tren";
"type.railway.station.light_rail.berlin" = "Estación de tren";
"type.railway.station.light_rail.berlin" = "Estación de tren (S-Bahn)";
"type.railway.station.light_rail.london" = "Estación de tren";
"type.railway.station.light_rail.porto" = "Estación de tren";
"type.railway.station.monorail" = "Estación de tren";
"type.railway.station.light_rail.porto" = "Estación de metro";
"type.railway.station.monorail" = "Estación de monoriel";
"type.railway.station.subway" = "Estación de metro";
"type.railway.station.subway.adana" = "Estación de metro";
"type.railway.station.subway.algiers" = "Estación de metro";
@@ -1306,7 +1306,7 @@
"type.shop.tobacco" = "Tabaco";
"type.shop.trade" = "Suministros comerciales";
"type.shop.watches" = "Relojes";
"type.shop.wholesale" = "Almacén al por mayor";
"type.shop.wholesale" = "Tienda al por mayor";
"type.sport" = "Deporte";
"type.sport.american_football" = "Fútbol americano";
"type.sport.archery" = "Tiro al arco";
@@ -1348,7 +1348,7 @@
/* Typically serviced, staff is present and food is available (compared to wilderness_hut). */
"type.tourism.alpine_hut" = "Albergue de montaña";
"type.tourism.apartment" = "Apartamento de vacaciones";
"type.tourism.apartment" = "Apartamento vacacional";
"type.tourism.artwork" = "Obra de arte";
"type.tourism.artwork.architecture" = "Arte arquitectónico";
"type.tourism.artwork.painting" = "Pintura";

View File

@@ -1585,3 +1585,4 @@
"type.spherical_buoy.safe_water" = "Faarvaatri kerapoi";
"type.man_made.mast.communication" = "Sidemast";
"type.shop.beauty.nails" = "Küünestuudio";
"type.amenity.hydrant" = "Kastmishüdrant";

View File

@@ -57,13 +57,13 @@
"add_new_set" = "افزودن پهرستی نو";
/* Add Bookmark list dialog - hint when the list name is empty */
"bookmark_set_name" = "Bookmark List Name";
"bookmark_set_name" = "نام پهرست نشانگ‌ها";
/* "Bookmark Lists" dialog title */
"bookmark_sets" = "Bookmark Lists";
/* Should be used in the bookmarks-only context, see bookmarks_and_tracks if tracks are also implied. */
"bookmarks" = "نشانهها";
"bookmarks" = "نشانگها";
/* "Bookmarks and Tracks" dialog title, also sync it with iphone/plist.txt */
"bookmarks_and_tracks" = "نشانه‌ها و مسیر ها";
@@ -151,7 +151,7 @@
"share_bookmarks_email_body" = "Hello!\n\nAttached are my bookmarks; please open them in CoMaps. If you don't have it installed you can download it here: https://www.comaps.app/download/\n\nEnjoy travelling with CoMaps!";
/* message title of loading file */
"load_kmz_title" = "در حال بارگیری نشانهها";
"load_kmz_title" = "بارگذاری نشانگها";
/* Kmz file successful loading */
"load_kmz_successful" = "نشانه‌ها با موفقیت بارگذاری شد!شما می توانید آنها را در نقشه یا بخش مدیریت نشانه‌ها بیابید.";

View File

@@ -680,7 +680,7 @@
"editor_edits_sent_message" = "Notatet ditt vil bli sendt til OpenStreetMap";
"editor_comment_hint" = "Kommentar…";
"editor_reset_edits_message" = "Forkaste alle lokale endringer?";
"editor_reset_edits_button" = "Forkast";
"editor_reset_edits_button" = "Forkast endringer";
"editor_remove_place_message" = "Slette tillagt sted?";
"editor_remove_place_button" = "Slett";
"editor_place_doesnt_exist" = "Sted finnes ikke";

View File

@@ -1591,3 +1591,4 @@
"type.shop.beauty.nails" = "Nagelsalon";
"type.amenity.food_sharing" = "Voedsel delen";
"type.amenity.give_box" = "Giftenkist";
"type.amenity.hydrant" = "Watertappunt|waterkraan";

View File

@@ -1591,3 +1591,4 @@
"type.natural.tree" = "Árvore";
"type.shop.beauty.nails" = "Salão de Unhas";
"type.xmas.tree" = "Árvore de Natal";
"type.amenity.hydrant" = "Boca de Rega";

View File

@@ -543,7 +543,7 @@
/* OpenStreetMap Profile */
"osm_profile" = "Profil OpenStreetMap";
"osm_profile_promt" = "Creați un cont OpenStreetMap sau conectați-vă pentru a vă publica edițiile de hartă în întreaga lume.";
"osm_profile_promt" = "Creați un cont OpenStreetMap sau conectați-vă pentru a vă publica editările hărții pentru întreaga lume.";
"osm_profile_explanation" = "[OpenStreetMap.org](https://openstreetmap.org) (OSM) este un proiect comunitar pentru construirea unei hărți libere și deschise. Este principala sursă de date cartografice în CoMaps și funcționează similar cu Wikipedia. Puteți adăuga sau edita locuri, iar acestea devin disponibile pentru milioane de utilizatori din întreaga lume. \nAlăturați-vă comunității și ajutați la crearea unei hărți mai bune pentru toată lumea!";
"osm_profile_login" = "Conectează-te la contul OpenStreetMap";
"osm_profile_reauthorize_promt" = "Contul OpenStreetMap a fost deconectat de la această aplicație";

View File

@@ -368,3 +368,91 @@
"type.cuisine.bubble_tea" = "Čaj s tapiokinimi kroglicami ('Bubble Tea')";
"type.cuisine.breakfast" = "Zajtrk";
"type.cuisine.chicken" = "Piščanec";
"type.amenity.hydrant" = "Namakalni hidrant";
"type.cuisine.greek" = "Grška kuhinja";
"type.cuisine.hungarian" = "Madžarska kuhinja";
"type.cuisine.ice_cream" = "Sladoled";
"type.cuisine.indian" = "Indijska kuhinja";
"type.cuisine.indonesian" = "Indonezijska kuhinja";
"type.cuisine.international" = "Mednarodna kuhinja";
"type.cuisine.irish" = "Irska kuhinja";
"type.cuisine.italian" = "Italijanska kuhinja";
"type.cuisine.italian_pizza" = "Italijanska kuhinja, pica";
"type.cuisine.japanese" = "Japonska kuhinja";
"type.cuisine.korean" = "Korejska kuhinja";
"type.cuisine.lao" = "Laoška kuhinja";
"type.cuisine.lebanese" = "Libanonska kuhinja";
"type.cuisine.local" = "Krajevna kuhinja";
"type.cuisine.malaysian" = "Malezijska kuhinja";
"type.cuisine.mediterranean" = "Sredozemska kuhinja";
"type.cuisine.mexican" = "Mehiška kuhinja";
"type.cuisine.moroccan" = "Maroška kuhinja";
"type.cuisine.oriental" = "Orientalska kuhinja";
"type.cuisine.pancake" = "Palačinke";
"type.cuisine.pasta" = "Testenine";
"type.cuisine.persian" = "Perzijska kuhinja";
"type.cuisine.peruvian" = "Perujska kuhinja";
"type.cuisine.pizza" = "Pica";
"type.cuisine.polish" = "Poljska kuhinja";
"type.cuisine.portuguese" = "Portugalska kuhinja";
"type.cuisine.russian" = "Ruska kuhinja";
"type.cuisine.sandwich" = "Sendvič";
"type.cuisine.sausage" = "Salama";
"type.cuisine.savory_pancakes" = "Slane palačinke";
"type.cuisine.seafood" = "Morska hrana";
"type.cuisine.soba" = "Soba (ajdovi rezanci)";
"type.cuisine.spanish" = "Španska kuhinja";
"type.cuisine.steak_house" = "Zrezkarnica";
"type.cuisine.sushi" = "Suši";
"type.cuisine.tea" = "Čaj";
"type.cuisine.turkish" = "Turška kuhinja";
"type.cuisine.vegan" = "Veganska kuhinja";
"type.cuisine.vegetarian" = "Vegetarijanska kuhinja";
"type.cuisine.vietnamese" = "Vietnamska kuhinja";
"type.emergency" = "V sili";
"type.emergency.access_point" = "Reševalno mesto";
"type.emergency.assembly_point" = "Zbirno mesto";
"type.emergency.life_ring" = "Reševalni obroč";
"type.emergency.defibrillator" = "Defibrilator";
"type.emergency.fire_hydrant" = "Požarni hidrant";
"type.emergency.phone" = "Telefon v sili";
"type.emergency.lifeguard" = "Reševalec";
"type.beacon.cardinal.east" = "Glavni usmerjevalni znak";
"type.beacon.cardinal.north" = "Glavni usmerjevalni znak";
"type.beacon.cardinal.south" = "Glavni usmerjevalni znak";
"type.beacon.cardinal.west" = "Glavni usmerjevalni znak";
"type.beacon.isolated_danger" = "Usmerjevalni znak ločene nevarnosti";
"type.cuisine.burger" = "Burger";
"type.craft.caterer" = "Ponudnik cateringa";
"type.cuisine.balkan" = "Balkanska kuhinja";
"type.cuisine.barbecue" = "Jedi na žaru";
"type.cuisine.bavarian" = "Bavarska kuhinja";
"type.cuisine.brazilian" = "Brazilska kuhinja";
"type.cuisine.buschenschank" = "Vinotoč (Buschenschank)";
"type.cuisine.deli" = "Delkatesa";
"type.cuisine.regional" = "Regionalna kuhinja";
"type.cuisine.tapas" = "Tapas (španski prigrizki)";
"type.cuisine.thai" = "Tajska kuhinja";
"type.beacon.lateral.port" = "Bočni usmerjevalni znak";
"type.beacon.lateral.starboard" = "Bočni usmerjevalni znak";
"type.beacon.safe_water" = "Znak varne plovne poti";
"type.beacon.special_purpose" = "Usmerjevalni znak posebnega namena";
"type.buoy.cardinal.east" = "Glavna boja";
"type.buoy.cardinal.north" = "Glavna boja";
"type.buoy.cardinal.south" = "Glavna boja";
"type.buoy.cardinal.west" = "Glavna boja";
"type.lateral.port" = "Pristanišče";
"type.cardinal.east" = "Vzhod";
"type.cardinal.north" = "Sever";
"type.cardinal.south" = "Jug";
"type.cardinal.west" = "Zahod";
"type.emergency.mountain_rescue" = "Postaja gorskih reševalcev";
"type.entrance" = "Vhod";
"type.entrance.main" = "Glavni vhod";
"type.entrance.house" = "Vhod hiše";
"type.entrance.garage" = "Vhod garaže";
"type.entrance.service" = "Servisni vhod";
"type.entrance.entry" = "Vstop (samo)";
"type.entrance.exit" = "Izhod (samo)";
"type.healthcare.laboratory" = "Zdravstveni laboratorij";
"type.healthcare.psychotherapist" = "Psihoterapevt";

View File

@@ -1101,3 +1101,4 @@
"offline_explanation_title" = "Çevrimdışı Haritalar";
"avoid_steps" = "Merdivenlerden kaçın";
"editor_place_doesnt_exist_description" = "OpeenStreetMap topluluğuna bir hata notu göndermek için şimdi mekanın nasıl gözüktüğünü tarif et";
"avoid_paved" = "Asfalt yollardan kaçın";

View File

@@ -1491,3 +1491,4 @@
"type.shop.lighting" = "Aydınlatma dükkanı";
"type.amenity.charging_station.motorcar.small" = "Araç Şarj Noktası";
"type.amenity.bench.backless" = "Sırtıık Bank";
"type.amenity.sailing_school" = "Denizcilik Okulu";

View File

@@ -2,7 +2,7 @@ Una aplicación de mapas gratuita y de código abierto, liderada por la comunida
‣ Simple y elegante: funciones esenciales, fáciles de usar y que simplemente funcionan.
‣ Funciona sin conexión: Planifica y navega tu viaje al extranjero sin necesidad de cobertura móvil, busca puntos de referencia durante una excursión, etc. Todas las funciones de la aplicación están diseñadas para funcionar sin conexión.
‣ Respeto a la privacidad: La aplicación está diseñada pensando en la privacidad: no identifica a las personas, no rastrea ni recopila información personal. Sin anuncios.
‣ Respeto a la privacidad: La aplicación está diseñada pensando en la privacidad, no identifica a las personas, no rastrea ni recopila información personal. Sin anuncios.
‣ Ahorra batería y espacio: No consume mucha batería como otras aplicaciones de navegación. Los mapas compactos ahorran el valioso espacio en tu teléfono.
‣ Gratuita y desarrollada por la comunidad: Personas como tú ayudaron a desarrollar la aplicación añadiendo lugares a OpenStreetMap, probando y compartiendo sus comentarios sobre las funciones, y aportando sus habilidades de desarrollo y su dinero.
‣ Toma de decisiones y finanzas abiertas y transparentes, sin fines de lucro y totalmente de código abierto.
@@ -25,4 +25,4 @@ Características principales:
• Compatibilidad con CarPlay
La libertad está aquí
¡Descubre tu camino y navega por el mundo priorizando la privacidad y la comunidad!
¡Descubre tu camino y navega por el mundo priorizando la privacidad y la comunidad!

View File

@@ -1 +1 @@
comaps,mapas,openstreetmap,osm,viajes,senderismo,bicicleta,conducción,sin conexión,privacidad,gps
comaps,mapas,openstreetmap,osm,viajes,senderismo,bicicleta,conducción,sin conexión,privacidad,gps

View File

@@ -1 +1 @@
https://comaps.app/es/
https://comaps.app/es/

View File

@@ -1 +1 @@
https://comaps.app/es/privacy
https://comaps.app/es/privacy

View File

@@ -1 +1 @@
Navega con privacidad
Navega con privacidad

View File

@@ -1 +1 @@
https://codeberg.org/comaps/comaps/issues
https://codeberg.org/comaps/comaps/issues

View File

@@ -81,7 +81,7 @@ public:
QPainter painter(device);
painter.fillRect(QRectF(0.0, 0.0, device->width(), device->height()), Qt::white);
auto const shapedText = m_mng->ShapeText(m_utf8, m_fontPixelSize, m_lang);
auto const shapedText = m_mng->ShapeText(m_utf8, m_fontPixelSize);
std::cout << "Total width: " << shapedText.m_lineWidthInPixels << '\n';
std::cout << "Max height: " << shapedText.m_maxLineHeightInPixels << '\n';

View File

@@ -5,6 +5,7 @@
#include "drape/harfbuzz_shaping.hpp"
#include "platform/platform.hpp"
#include "platform/preferred_languages.hpp"
#include "coding/hex.hpp"
#include "coding/reader.hpp"
@@ -328,6 +329,9 @@ FreetypeError constexpr g_FT_Errors[] =
TUniBlockIter m_lastUsedBlock;
std::vector<std::unique_ptr<Font>> m_fonts;
std::string const lang = languages::GetCurrentOrig();
hb_language_t const m_language = hb_language_from_string(lang.data(), static_cast<int>(lang.size()));
// Required to use std::string_view as a search key for std::unordered_map::find().
struct StringHash : public std::hash<std::string_view>
{
@@ -563,21 +567,8 @@ FreetypeError constexpr g_FT_Errors[] =
return m_impl->m_fonts[key.m_fontIndex]->GetGlyphImage(key.m_glyphId, pixelHeight, sdf);
}
namespace
{
hb_language_t OrganicMapsLanguageToHarfbuzzLanguage(int8_t lang)
{
// TODO(AB): can langs be converted faster?
auto const svLang = StringUtf8Multilang::GetLangByCode(lang);
auto const hbLanguage = hb_language_from_string(svLang.data(), static_cast<int>(svLang.size()));
if (hbLanguage == HB_LANGUAGE_INVALID)
return hb_language_get_default();
return hbLanguage;
}
} // namespace
// This method is NOT multithreading-safe.
text::TextMetrics GlyphManager::ShapeText(std::string_view utf8, int fontPixelHeight, int8_t lang)
text::TextMetrics GlyphManager::ShapeText(std::string_view utf8, int fontPixelHeight)
{
#ifdef DEBUG
static int const fontSize = fontPixelHeight;
@@ -591,9 +582,6 @@ FreetypeError constexpr g_FT_Errors[] =
auto const [text, segments] = harfbuzz_shaping::GetTextSegments(utf8);
// TODO(AB): Optimize language conversion.
hb_language_t const hbLanguage = OrganicMapsLanguageToHarfbuzzLanguage(lang);
text::TextMetrics allGlyphs;
// For SplitText it's enough to know if the last visual (first logical) segment is RTL.
allGlyphs.m_isRTL = segments.back().m_direction == HB_DIRECTION_RTL;
@@ -609,7 +597,8 @@ FreetypeError constexpr g_FT_Errors[] =
static_cast<int>(text.size()), substring.m_start, substring.m_length);
hb_buffer_set_direction(m_impl->m_harfbuzzBuffer, substring.m_direction);
hb_buffer_set_script(m_impl->m_harfbuzzBuffer, substring.m_script);
hb_buffer_set_language(m_impl->m_harfbuzzBuffer, hbLanguage);
// TODO: This property is static, is it possible to set it only once?
hb_buffer_set_language(m_impl->m_harfbuzzBuffer, m_impl->m_language);
auto u32CharacterIter{text.begin() + substring.m_start};
auto const end{u32CharacterIter + substring.m_length};
@@ -646,10 +635,4 @@ FreetypeError constexpr g_FT_Errors[] =
return allGlyphs;
}
text::TextMetrics GlyphManager::ShapeText(std::string_view utf8, int fontPixelHeight, char const * lang)
{
return ShapeText(utf8, fontPixelHeight, StringUtf8Multilang::GetLangIndex(lang));
}
} // namespace dp

View File

@@ -73,8 +73,7 @@ public:
int GetFontIndex(strings::UniChar unicodePoint);
int GetFontIndex(std::u16string_view sv);
text::TextMetrics ShapeText(std::string_view utf8, int fontPixelHeight, int8_t lang);
text::TextMetrics ShapeText(std::string_view utf8, int fontPixelHeight, char const * lang);
text::TextMetrics ShapeText(std::string_view utf8, int fontPixelHeight);
GlyphImage GetGlyphImage(GlyphFontAndId key, int pixelHeight, bool sdf) const;

View File

@@ -372,7 +372,7 @@ void TextureManager::Init(ref_ptr<dp::GraphicsContext> context, Params const & p
m_maxGlypsCount = static_cast<uint32_t>(ceil(kGlyphAreaCoverage * textureSquare / averageGlyphSquare));
std::string_view constexpr kSpace{" "};
m_spaceGlyph = m_glyphManager->ShapeText(kSpace, dp::kBaseFontSizePixels, "en").m_glyphs.front().m_key;
m_spaceGlyph = m_glyphManager->ShapeText(kSpace, dp::kBaseFontSizePixels).m_glyphs.front().m_key;
LOG(LDEBUG, ("Glyphs texture size =", kGlyphsTextureSize, "with max glyphs count =", m_maxGlypsCount));
@@ -467,8 +467,7 @@ text::TextMetrics TextureManager::ShapeSingleTextLine(float fontPixelHeight, std
// TODO(AB): Is this mutex too slow?
std::lock_guard lock(m_calcGlyphsMutex);
// TODO(AB): Fix hard-coded lang.
auto textMetrics = m_glyphManager->ShapeText(utf8, fontPixelHeight, "en");
auto textMetrics = m_glyphManager->ShapeText(utf8, fontPixelHeight);
auto const & glyphs = textMetrics.m_glyphs;

View File

@@ -65,6 +65,7 @@ static std::pair<UniString, UniString> const kPreprocessReplacements[] = {
{MakeUniString("ff. cc."), MakeUniString("ferrocarrís")},
{MakeUniString("f.ta"), MakeUniString("fondamenta")},
{MakeUniString("g.n.r."), MakeUniString("guarda nacional republicana")},
{MakeUniString("g-ral"), MakeUniString("general")},
{MakeUniString("g. v."), MakeUniString("gran vía")},
{MakeUniString("i.d."), MakeUniString("in der")},
{MakeUniString("k/s"), MakeUniString("khách sạn")},

View File

@@ -244,12 +244,12 @@ void NotificationManager::SetLengthUnits(measurement_utils::Units units)
switch (units)
{
case measurement_utils::Units::Metric:
m_settings.SetState(30 /* notificationTimeSeconds */, 400 /* minNotificationDistanceUnits */,
m_settings.SetState(30 /* notificationTimeSeconds */, 200 /* minNotificationDistanceUnits */,
2000 /* maxNotificationDistanceUnits */, GetSoundedDistMeters() /* soundedDistancesUnits */,
measurement_utils::Units::Metric /* lengthUnits */);
return;
case measurement_utils::Units::Imperial:
m_settings.SetState(30 /* notificationTimeSeconds */, 1000 /* minNotificationDistanceUnits */,
m_settings.SetState(30 /* notificationTimeSeconds */, 500 /* minNotificationDistanceUnits */,
5000 /* maxNotificationDistanceUnits */, GetSoundedDistFeet() /* soundedDistancesUnits */,
measurement_utils::Units::Imperial /* lengthUnits */);
return;

View File

@@ -93,11 +93,13 @@ public:
ForEachIndexImpl(intervals, scale, [&](uint32_t index)
{
fn(*GetFeature(index, ignoreEditedStatus));
std::unique_ptr<FeatureType> ft = GetFeature(index, ignoreEditedStatus);
if (ft)
fn(*ft);
});
}
// Returns false if feature was deleted by user.
// Returns empty unique_ptr if feature was deleted by user.
std::unique_ptr<FeatureType> GetFeature(uint32_t index, bool ignoreEditedStatus = false) const;
[[nodiscard]] inline bool GetCenter(uint32_t index, m2::PointD & center) { return m_centers.Get(index, center); }

View File

@@ -725,7 +725,7 @@ unordered_map<string, vector<string>> const kSynonyms = {
{"low", {"lower"}},
{"lp", {"loop"}},
{"lr", {"lower"}},
{"lt", {"lote", "lieutenant", "little"}},
{"lt", {"lote", "lieutenant", "little", "locotelent"}},
{"lug", {"lugar"}},
{"luit", {"luitenant"}},
{"lung", {"lungsod"}},
@@ -1111,6 +1111,7 @@ unordered_map<string, vector<string>> const kSynonyms = {
{"seventh", {"7th"}},
{"sexta", {"6", "6a"}},
{"sexto", {"6", "6o"}},
{"sf", {"sfântul", "sfânta", "sfinții"}},
{"sgda", {"sagrada"}},
{"sg", {"schottergrube", "sungai", "sandgrube"}},
{"sgt", {"sagrat", "sergeant"}},
@@ -1390,6 +1391,7 @@ unordered_map<string, vector<string>> const kSynonyms = {
{"б", {"большая", "большой"}},
{"бл", {"блок"}},
{"бол", {"большая", "большой"}},
{"буд", {"будинок"}},
{"бул", {"булевард", "бульвар"}},
{"вул", {"вулиця"}},
{"вх", {"вход"}},
@@ -1402,7 +1404,7 @@ unordered_map<string, vector<string>> const kSynonyms = {
{"кв", {"квартал"}},
{"мал", {"малый", "малая"}},
{"мит", {"митрополит"}},
{"м", {"малый", "малая"}},
{"м", {"малый", "малая", "місто"}},
{"наб", {"набережная", "набережна", "набярэжная"}},
{"нов", {"новый", "новая"}},
{"обл", {"область"}},
@@ -1416,6 +1418,7 @@ unordered_map<string, vector<string>> const kSynonyms = {
{"с", {"село"}},
{"стар", {"старая", "старый"}},
{"туп", {"тупик", "тупік"}},
{"узв", {"узвіз"}},
{"ул", {"улица"}},
{"ш", {"шаша", "шосе", "шоссе"}},
{"اثنان", {"2"}},