Compare commits

...
Sign in to create a new pull request.

5 commits

Author SHA1 Message Date
Viktor Govako
f55bb42a97 [planet] New data from 241122.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2024-11-26 14:42:24 -03:00
Viktor Govako
02775eea67 [strings] Regenerated.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2024-11-26 14:29:05 -03:00
Viktor Govako
fdeeb1d04d Minor code fixes.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2024-11-26 14:28:13 -03:00
Viktor Govako
6660b120bc Fix to parse "used" strings in Core.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2024-11-26 14:27:33 -03:00
Viktor Govako
16726c6cbf [search] Updated fi categories according to the type_strings.
Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
2024-11-26 14:10:35 -03:00
10 changed files with 2362 additions and 2367 deletions

View file

@ -1020,7 +1020,7 @@
<!-- A weather shelter by the public transport stop. -->
<string name="type.amenity.shelter.public_transport">Katos</string>
<!-- Compared to wilderness_hut its smaller and simpler, without a fireplace. -->
<string name="type.amenity.shelter.basic_hut">Bivouac-mökki</string>
<string name="type.amenity.shelter.basic_hut">Kota</string>
<string name="type.amenity.public_bath">Julkinen kylpylä</string>
<string name="type.amenity.shower">Suihku</string>
<string name="type.amenity.stripclub">Stripclub</string>
@ -1277,8 +1277,8 @@
<string name="type.highway.path.difficult">Vaikea tai huonosti näkyvä reitti</string>
<!-- Hiking trail tagged as sac_scale=alpine_hiking (4+ of 6) or trail_visibility=horrible or more extreme. -->
<string name="type.highway.path.expert">Erittäin vaikea tai erottamaton jälki</string>
<string name="type.highway.path.bicycle">Pyörä- ja jalkatie</string>
<string name="type.highway.footway.bicycle">Pyörä- ja jalkatie</string>
<string name="type.highway.path.bicycle">Kevyen liikenteen väylä</string>
<string name="type.highway.footway.bicycle">Kevyen liikenteen väylä</string>
<!-- These translations are used for all type.highway.*.bridge. -->
<string name="type.highway.path.bridge">Silta</string>
<string name="type.highway.path.horse">Ratsastuspolku</string>
@ -1401,7 +1401,7 @@
<string name="type.historic.cannon">Tykki</string>
<string name="type.historic.castle">Linna</string>
<string name="type.historic.castle.castrum">Roomalaisleiri</string>
<string name="type.historic.castle.defensive">Linnake</string>
<string name="type.historic.castle.defensive">Linnoitus</string>
<string name="type.historic.castle.fortified_church">Linnoitettu kirkko</string>
<string name="type.historic.castle.fortress">Linnoitus</string>
<string name="type.historic.castle.hillfort">Linnavuori</string>
@ -1514,14 +1514,14 @@
<string name="type.military.bunker">Bunkkeri</string>
<string name="type.natural">Luonto</string>
<!-- A rocky land cover. -->
<string name="type.natural.bare_rock">Paljas kallio</string>
<string name="type.natural.bare_rock">Avokallio</string>
<!-- A land cover consisting of rounded rock fragments (pebbles) on a beach or riverbed. -->
<string name="type.natural.shingle">Pebbles</string>
<!-- A loose surface consisting of angular, sharp stones. Usually on a mountain slope and prone to landslides. -->
<string name="type.natural.scree">Kivinen rapakivi</string>
<string name="type.natural.bay">Lahti</string>
<string name="type.natural.beach">Ranta</string>
<string name="type.natural.beach.sand">Hiekkainen ranta</string>
<string name="type.natural.beach.sand">Hiekkaranta</string>
<string name="type.natural.beach.gravel">Soraranta</string>
<string name="type.natural.cape">Niemeke</string>
<string name="type.natural.cave_entrance">Luola</string>
@ -1555,13 +1555,13 @@
<string name="type.natural.vineyard">Viinitila</string>
<string name="type.natural.volcano">Tulivuori</string>
<string name="type.natural.water">Vesimuodostuma</string>
<string name="type.natural.wetland">Suoperäinen seutu</string>
<string name="type.natural.wetland">Soistuva maa</string>
<string name="type.natural.wetland.bog">Suo</string>
<string name="type.natural.wetland.marsh">Marsh</string>
<string name="type.office">Toimisto</string>
<string name="type.office.company">Yhtiön toimisto</string>
<string name="type.office.estate_agent">Kiinteistönvälittäjä</string>
<string name="type.office.government">Viranomaistoimito</string>
<string name="type.office.government">Viranomaisen toimisto</string>
<string name="type.office.insurance">Vakuutuslaitos</string>
<string name="type.office.lawyer">Lakitoimisto</string>
<string name="type.office.ngo">Valtioista riippumattoman järjestön toimisto</string>
@ -1871,6 +1871,7 @@
<string name="type.railway.subway_entrance.yerevan">Metron sisäänkäynti</string>
<string name="type.railway.subway_entrance.yokohama">Metron sisäänkäynti</string>
<string name="type.railway.tram_stop">Raitiovaunupysäkki</string>
<string name="type.route.ferry">Lauttareitti</string>
<string name="type.shop">Kauppa</string>
<string name="type.shop.alcohol">Alkoholikauppa</string>
<string name="type.shop.bakery">Leipomo</string>
@ -2046,14 +2047,14 @@
<string name="type.tourism.caravan_site">Asuntovaunupaikka</string>
<!-- A rentable countryside vacation house. -->
<string name="type.tourism.chalet">Lomamökki</string>
<string name="type.tourism.gallery">Nähtävyydet</string>
<string name="type.tourism.gallery">Taidegalleria</string>
<string name="type.tourism.guest_house">Majatalo</string>
<string name="type.tourism.hostel">Hostelli</string>
<string name="type.tourism.hotel">Hotelli</string>
<string name="type.tourism.information">Turisti-informaatio</string>
<string name="type.tourism.information.board">Informaatio</string>
<string name="type.tourism.information.board">Opastaulu</string>
<string name="type.tourism.information.guidepost">Tienviitta</string>
<string name="type.tourism.information.map">Turistikartta</string>
<string name="type.tourism.information.map">Opaskartta</string>
<string name="type.tourism.information.office">Turistitoimisto</string>
<string name="type.tourism.information.visitor_centre">Vierailijakeskus</string>
<string name="type.tourism.motel">Motelli</string>

View file

@ -256,8 +256,6 @@
<!-- Button in the main menu -->
<string name="donate">Doar</string>
<!-- Button in the main Help dialog -->
<string name="how_to_support_us">Apoie o projeto</string>
<!-- Button in the main Help dialog -->
<string name="copyright">Direitos autorais</string>
<!-- Text in menu + Button in the main Help dialog -->
<string name="report_a_bug">Relatar um problema</string>

Binary file not shown.

Binary file not shown.

View file

@ -6862,7 +6862,7 @@ es-MX:Cabaña Vivac
et:Bivouac-Küünla
eu:Bivouac Borda
fa:کلبه بیواک
fi:Bivouac-mökki
fi:Kota|Bivouac-mökki
fr:Cabane de Bivouac
he:בקתת לינה|בקתה
hi:द्विवार्षिक झोपड़ी
@ -13593,7 +13593,7 @@ ar:لوحة معلومات
cs:Nástěnka
da:Informationstavle
nl:Informatiebord
fi:Informaatio
fi:Opastaulu|Informaatio
fr:Panneau d'informations
de:Informationstafel
hu:Tájékoztató tábla
@ -13629,7 +13629,7 @@ ar:خريطة سياحية
cs:Turistická mapa
da:Turistkort
nl:Toeristische kaart|toeristenkaart
fi:Turistikartta
fi:Opaskartta|Turistikartta
fr:Carte touristique|Plan
de:Touristenkarte
hu:Turistatérkép
@ -15471,6 +15471,7 @@ de:4Kunstgalerie|3Galerie|Museum|Kunstausstellung
es:3Galería de arte|museo
et:3Galerii|muuseum
eu:3Arte galeria|museoa
fi:Taidegalleria
fr:3Galerie d'art|musée d'art
hi:आर्ट गैलरी
ko:갤러리|박물관

File diff suppressed because it is too large Load diff

View file

@ -1705,7 +1705,7 @@
"type.amenity.shelter.public_transport" = "Katos";
/* Compared to wilderness_hut its smaller and simpler, without a fireplace. */
"type.amenity.shelter.basic_hut" = "Bivouac-mökki";
"type.amenity.shelter.basic_hut" = "Kota";
/* A traditional 3-walled shelter (one side open), suitable for overnight camping. */
"type.amenity.shelter.lean_to" = "Lean-to Shelter";
@ -2214,9 +2214,9 @@
/* Hiking trail tagged as sac_scale=alpine_hiking (4+ of 6) or trail_visibility=horrible or more extreme. */
"type.highway.path.expert" = "Erittäin vaikea tai erottamaton jälki";
"type.highway.path.bicycle" = "Pyörä- ja jalkatie";
"type.highway.path.bicycle" = "Kevyen liikenteen väylä";
"type.highway.footway.bicycle" = "Pyörä- ja jalkatie";
"type.highway.footway.bicycle" = "Kevyen liikenteen väylä";
/* These translations are used for all type.highway.*.bridge. */
"type.highway.path.bridge" = "Silta";
@ -2432,7 +2432,7 @@
"type.historic.castle.castrum" = "Roomalaisleiri";
"type.historic.castle.defensive" = "Linnake";
"type.historic.castle.defensive" = "Linnoitus";
"type.historic.castle.fortified_church" = "Linnoitettu kirkko";
@ -2739,7 +2739,7 @@
"type.natural" = "Luonto";
/* A rocky land cover. */
"type.natural.bare_rock" = "Paljas kallio";
"type.natural.bare_rock" = "Avokallio";
/* A land cover consisting of rounded rock fragments (pebbles) on a beach or riverbed. */
"type.natural.shingle" = "Pebbles";
@ -2751,7 +2751,7 @@
"type.natural.beach" = "Ranta";
"type.natural.beach.sand" = "Hiekkainen ranta";
"type.natural.beach.sand" = "Hiekkaranta";
"type.natural.beach.gravel" = "Soraranta";
@ -2819,7 +2819,7 @@
"type.natural.water" = "Vesimuodostuma";
"type.natural.wetland" = "Suoperäinen seutu";
"type.natural.wetland" = "Soistuva maa";
"type.natural.wetland.bog" = "Suo";
@ -2833,7 +2833,7 @@
"type.office.estate_agent" = "Kiinteistönvälittäjä";
"type.office.government" = "Viranomaistoimito";
"type.office.government" = "Viranomaisen toimisto";
"type.office.insurance" = "Vakuutuslaitos";
@ -3536,7 +3536,7 @@
"type.route" = "Route";
"type.route.ferry" = "Ferry";
"type.route.ferry" = "Lauttareitti";
"type.route.shuttle_train" = "route-shuttle_train";
@ -3890,7 +3890,7 @@
/* A rentable countryside vacation house. */
"type.tourism.chalet" = "Lomamökki";
"type.tourism.gallery" = "Nähtävyydet";
"type.tourism.gallery" = "Taidegalleria";
"type.tourism.guest_house" = "Majatalo";
@ -3900,11 +3900,11 @@
"type.tourism.information" = "Turisti-informaatio";
"type.tourism.information.board" = "Informaatio";
"type.tourism.information.board" = "Opastaulu";
"type.tourism.information.guidepost" = "Tienviitta";
"type.tourism.information.map" = "Turistikartta";
"type.tourism.information.map" = "Opaskartta";
"type.tourism.information.office" = "Turistitoimisto";

View file

@ -300,11 +300,11 @@
/* Tex label above the Donate button */
"donate_description" = "Doe para criarmos juntos os melhores mapas!";
"already_donated" = "Já doado";
"already_donated" = "Já doei";
"remind_me_later" = "Lembrar mais tarde";
"remind_me_later" = "Lembre-me mais tarde";
"support_organic_maps" = "Apoiar Organic Maps";
"support_organic_maps" = "Apoie o Organic Maps";
/* Button in the main Help dialog */
"copyright" = "Direitos autorais";

View file

@ -300,11 +300,11 @@
/* Tex label above the Donate button */
"donate_description" = "Faz um donativo para construirmos juntos os melhores mapas!";
"already_donated" = "Já doado";
"already_donated" = "Já doei";
"remind_me_later" = "Lembrar mais tarde";
"remind_me_later" = "Lembre-me mais tarde";
"support_organic_maps" = "Apoiar Organic Maps";
"support_organic_maps" = "Apoie o Organic Maps";
/* Button in the main Help dialog */
"copyright" = "Direitos de autor";

View file

@ -1,11 +1,13 @@
#include "duration.hpp"
#include "base/stl_helpers.hpp"
/// @todo(KK): move the formatting code from the platform namespace
namespace platform
{
namespace
{
using std::chrono::duration_cast, std::chrono::seconds, std::chrono::minutes, std::chrono::hours, std::chrono::days;
using namespace std::chrono;
static constexpr std::string_view kNoSpace = "";
@ -37,7 +39,7 @@ std::string_view GetUnitSeparator(Locale const & locale)
{
"en", "de", "fr", "he", "fa", "ja", "ko", "mr", "th", "tr", "vi", "zh"
};
bool const isEmptySeparator = std::find(std::begin(kEmptyNumberUnitSeparatorLocales), std::end(kEmptyNumberUnitSeparatorLocales), locale.m_language) != std::end(kEmptyNumberUnitSeparatorLocales);
bool const isEmptySeparator = base::IsExist(kEmptyNumberUnitSeparatorLocales, locale.m_language);
return isEmptySeparator ? kNoSpace : kNarrowNonBreakingSpace;
}
@ -47,22 +49,15 @@ std::string_view GetUnitsGroupingSeparator(Locale const & locale)
{
"ja", "zh"
};
bool const isEmptySeparator = std::find(std::begin(kEmptyGroupingSeparatorLocales), std::end(kEmptyGroupingSeparatorLocales), locale.m_language) != std::end(kEmptyGroupingSeparatorLocales);
bool const isEmptySeparator = base::IsExist(kEmptyGroupingSeparatorLocales, locale.m_language);
return isEmptySeparator ? kNoSpace : kNonBreakingSpace;
}
constexpr bool IsUnitsOrderValid(std::initializer_list<Duration::Units> units) {
auto it = units.begin();
auto prev = *it;
++it;
for (; it != units.end(); ++it) {
if (static_cast<int>(*it) <= static_cast<int>(prev))
return false;
prev = *it;
}
return true;
}
bool IsUnitsOrderValid(std::initializer_list<Duration::Units> units)
{
return base::IsSortedAndUnique(units.begin(), units.end());
}
} // namespace
Duration::Duration(unsigned long seconds) : m_seconds(seconds)
{}
@ -74,12 +69,16 @@ std::string Duration::GetLocalizedString(std::initializer_list<Units> units, Loc
std::string Duration::GetPlatformLocalizedString() const
{
static auto const kCurrentUnitSeparator = GetUnitSeparator(GetCurrentLocale());
static auto const kCurrentGroupingSeparator = GetUnitsGroupingSeparator(GetCurrentLocale());
// I'm pretty sure that better to traverse 10-elements array than lock a "static" mutex (2 times).
auto const & loc = GetCurrentLocale();
auto const kCurrentUnitSeparator = GetUnitSeparator(loc);
auto const kCurrentGroupingSeparator = GetUnitsGroupingSeparator(loc);
return GetString({Units::Days, Units::Hours, Units::Minutes}, kCurrentUnitSeparator, kCurrentGroupingSeparator);
}
std::string Duration::GetString(std::initializer_list<Units> units, std::string_view unitSeparator, std::string_view groupingSeparator) const
std::string Duration::GetString(std::initializer_list<Units> units, std::string_view unitSeparator,
std::string_view groupingSeparator) const
{
ASSERT(units.size(), ());
ASSERT(IsUnitsOrderValid(units), ());
@ -106,15 +105,11 @@ std::string Duration::GetString(std::initializer_list<Units> units, std::string_
std::string Duration::GetUnitsString(Units unit)
{
constexpr std::string_view kStringsMinute = "minute";
constexpr std::string_view kStringsHour = "hour";
constexpr std::string_view kStringsDay = "day";
switch (unit)
{
case Units::Minutes: return platform::GetLocalizedString(std::string(kStringsMinute));
case Units::Hours: return platform::GetLocalizedString(std::string(kStringsHour));
case Units::Days: return platform::GetLocalizedString(std::string(kStringsDay));
case Units::Minutes: return platform::GetLocalizedString("minute");
case Units::Hours: return platform::GetLocalizedString("hour");
case Units::Days: return platform::GetLocalizedString("day");
default: UNREACHABLE();
}
}