Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Spanish translation and fix hardcoded string #59

Merged
merged 1 commit into from
Aug 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ android {
resourceConfigurations.addAll(
listOf(
"en",
"es",
"fr",
"hr",
"vi",
Expand Down
1 change: 1 addition & 0 deletions app/src/main/java/com/davidtakac/bura/common/Locale.kt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import java.util.Locale
private val fallbackLocale = Locale.US
private val supportedLocales = listOf(
fallbackLocale,
Locale.forLanguageTag("es"),
Locale.forLanguageTag("fr"),
Locale.forLanguageTag("hr"),
Locale.forLanguageTag("vi"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,10 @@ fun Bottom(future: FuturePrecipitation) {
formatter.format(future.onDay)
)

is FuturePrecipitation.None -> "None expected in next ${future.inDays}d."
is FuturePrecipitation.None -> stringResource (
R.string.precip_value_none_in_next_days,
future.inDays
)
}
)
}
Expand Down
225 changes: 225 additions & 0 deletions app/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,225 @@
<!--
~ Copyright 2024 David Takač
~
~ This file is part of Bura.
~
~ Bura is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
~
~ Bura is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License along with Bura. If not, see <https://www.gnu.org/licenses/>.
-->

<!DOCTYPE resources [
<!ENTITY nbsp "&#160;"> <!-- non-breaking space, U+00A0 -->
]>

<resources>
<string name="app_name">Bura</string>
<string name="general_error_failed_to_download">Falló la descarga del pronóstico. Conéctate a Internet e inténtalo de nuevo.</string>
<string name="general_error_outdated">Tus datos de pronóstico han expirado. Conéctate a Internet e inténtalo de nuevo.</string>
<string name="general_error_no_selected_place">No se ha seleccionado ningún lugar.</string>
<string name="general_btn_try_again">Intentar de nuevo</string>
<string name="general_btn_select_place">Seleccionar lugar</string>
<string name="general_btn_dialog_confirm">Aceptar</string>
<string name="general_btn_dialog_cancel">Cancelar</string>

<string name="credit_weather">Datos metereológicos por Open-Meteo.com</string>
<string name="credit_geocoding">Datos de geocodificación por Open-Meteo.com</string>

<string name="place_picker_hint_search">Buscar lugares…</string>
<string name="place_picker_title_saved_places">Lugares guardados</string>
<string name="place_picker_title_search_results">Resultados de búsqueda</string>
<string name="place_picker_error_no_internet">Parece que no tienes conexión. Conéctate a Internet e inténtalo de nuevo.</string>
<string name="place_picker_error_value_no_results_for">No hay resultados para \"%s\".</string>
<string name="place_picker_error_no_saved_places">No hay lugares guardados.</string>
<string name="delete_place_value">¿Eliminar %s?</string>
<string name="delete_place_description">Hacer esto eliminará también los datos de pronóstico almacenados en caché.</string>

<string name="cond_screen_title">Condiciones meteorológicas</string>
<string name="cond_screen_pop">Probabilidad de precipitación</string>
<string name="cond_screen_precip">Precipitación acumulada</string>
<string name="cond_screen_temp_unit_celsius">Celsius (°C)</string>
<string name="cond_screen_temp_unit_fahrenheit">Fahrenheit (°F)</string>
<string name="cond_screen_precip_value_in_last_hours">Últimas %s horas</string>
<string name="cond_screen_precip_value_in_next_hours">Próximas %s horas</string>

<string name="settings_screen_title">Ajustes</string>
<string name="settings_screen_title_units">Unidades</string>
<string name="settings_screen_title_temp_unit">Temperatura</string>
<string name="settings_screen_label_temp_unit_celsius">Grados Celsius</string>
<string name="settings_screen_label_temp_unit_fahrenheit">Grados Fahrenheit</string>
<string name="settings_screen_title_wind_unit">Viento</string>
<string name="settings_screen_label_wind_unit_mps">Metros por segundo</string>
<string name="settings_screen_label_wind_unit_kph">Kilómetros por hora</string>
<string name="settings_screen_label_wind_unit_mph">Millas por hora</string>
<string name="settings_screen_label_wind_unit_kn">Nudos</string>
<string name="settings_screen_title_precip_unit">Precipitación</string>
<string name="settings_screen_title_rain_unit">Lluvia</string>
<string name="settings_screen_title_showers_unit">Chubascos</string>
<string name="settings_screen_title_snow_unit">Nieve</string>
<string name="settings_screen_label_precip_unit_mm">Milímetros</string>
<string name="settings_screen_label_precip_unit_cm">Centímetros</string>
<string name="settings_screen_label_precip_unit_in">Pulgadas</string>
<string name="settings_screen_title_pressure_unit">Presión</string>
<string name="settings_screen_label_pressure_unit_hpa">Hectopascales</string>
<string name="settings_screen_label_pressure_unit_inhg">Pulgadas de mercurio</string>
<string name="settings_screen_label_pressure_unit_mmhg">Milímetros de mercurio</string>
<string name="settings_screen_title_vis_unit">Visibilidad</string>
<string name="settings_screen_label_vis_unit_km">Kilómetros</string>
<string name="settings_screen_label_vis_unit_mi">Millas</string>
<string name="settings_screen_label_vis_unit_m">Metros</string>
<string name="settings_screen_label_vis_unit_ft">Pies</string>
<string name="settings_screen_title_appearance">Apariencia</string>
<string name="settings_screen_title_theme">Tema</string>
<string name="settings_screen_label_dark">Oscuro</string>
<string name="settings_screen_label_light">Claro</string>
<string name="settings_screen_label_follow_system">Usar el del sistema</string>

<string name="date_time_now">Ahora</string>
<string name="date_time_today">Hoy</string>
<string name="date_time_pattern_hour">HH</string>
<string name="date_time_pattern_hour_minute">HH:mm</string>
<string name="date_time_pattern_dow">E</string>
<string name="date_time_pattern_dow_hour_minute">E, HH:mm</string>

<string name="precip_mixed">Precipitación</string>
<string name="precip_rain">Lluvia</string>
<string name="precip_showers">Chubascos</string>
<string name="precip_snow">Nieve</string>
<string name="precip_value_in_last_hours">En las últimas %s&nbsp;h</string>
<string name="precip_value_showers_in_next_hours">Se esperan %1$s de chubascos en las próximas %2$s&nbsp;h.</string>
<string name="precip_value_rain_in_next_hours">%1$s de lluvia previstos para las próximas %2$s&nbsp;h.</string>
<string name="precip_value_snow_in_next_hours">%1$s de nieve previstos para las próximas %2$s&nbsp;h.</string>
<string name="precip_value_mixed_in_next_hours">%1$s previstos para las próximas %2$s&nbsp;h.</string>
<string name="precip_value_showers_on_day">Lo siguiente a esperar son %1$s de chubascos el %2$s.</string>
<string name="precip_value_rain_on_day">Lo siguiente a esperar son %1$s de lluvia el %2$s.</string>
<string name="precip_value_snow_on_day">Lo siguiente a esperar son %1$s de nieve el %2$s.</string>
<string name="precip_value_mixed_on_day">Lo siguiente a esperar son %1$s el %2$s.</string>
<string name="precip_value_none_in_next_days">Ninguna prevista en los próximos %s&nbsp;d.</string>
<string name="precip_unit_mm">mm</string>
<string name="precip_value_mm">%s&nbsp;mm</string>
<string name="precip_unit_cm">cm</string>
<string name="precip_value_cm">%s&nbsp;cm</string>
<string name="precip_unit_in">″</string>
<string name="precip_value_in">%s″</string>

<string name="pop_value_percent">%s%%</string>

<string name="pressure">Presión</string>
<string name="pressure_trend_falling">Disminuyendo</string>
<string name="pressure_trend_steady">Estable</string>
<string name="pressure_trend_rising">Aumentando</string>
<string name="pressure_value_average">Promedio: %s</string>
<string name="pressure_unit_hpa">hPa</string>
<string name="pressure_value_hpa">%s&nbsp;hPa</string>
<string name="pressure_unit_inhg">inHg</string>
<string name="pressure_value_inhg">%s&nbsp;inHg</string>
<string name="pressure_unit_mmhg">mmHg</string>
<string name="pressure_value_mmhg">%s&nbsp;mmHg</string>

<string name="humidity">Humedad</string>
<string name="humidity_value_percent">%s&nbsp;%%</string>

<string name="sunrise">Amanecer</string>
<string name="sunset">Atardecer</string>
<string name="sunrise_value">Amanecer: %s</string>
<string name="sunset_value">Atardecer: %s</string>
<string name="sunrise_not_today">No amanece hoy.</string>
<string name="sunset_not_today">No atardece hoy.</string>
<string name="sunrise_value_more_than_days_away">&gt; %s&nbsp;d</string>
<string name="sunrise_value_more_than_hours_away">&gt; %s&nbsp;h</string>
<string name="sunset_value_more_than_days_away">&gt; %s&nbsp;d</string>
<string name="sunset_value_more_than_hours_away">&gt; %s&nbsp;h</string>

<string name="temp_value_degree">%s°</string>
<string name="dew_point_value_right_now">El punto de rocío es de %s ahorma mismo.</string>
<string name="feels_like">Sensación térmica</string>
<string name="feels_like_value">Sensación térmica de %s</string>
<string name="feels_like_value_actual">%s reales</string>
<string name="feels_like_cooler_than_actual">El viento da sensación de frescor.</string>
<string name="feels_like_colder_than_actual">El viento da sensación de frío.</string>
<string name="feels_like_warmer_than_actual">La humedad da sensación de calidez.</string>
<string name="feels_like_hotter_than_actual">La humedad da sensación de calor.</string>
<string name="feels_like_similar_to_actual">Similar a la temperatura real.</string>

<string name="uv_index">Índice UV</string>
<string name="uv_index_risk_low">Bajo</string>
<string name="uv_index_risk_moderate">Moderado</string>
<string name="uv_index_risk_high">Alto</string>
<string name="uv_index_risk_very_high">Muy alto</string>
<string name="uv_index_risk_extreme">Extremo</string>
<string name="uv_index_protection_value_from_until">Usa protección solar de %1$s a %2$s.</string>
<string name="uv_index_protection_value_from">Usa protección solar desde las %s.</string>
<string name="uv_index_protection_value_until">Usa protección solar hasta las %s.</string>
<string name="uv_index_protection_value_until_end_of_day">Usa protección solar el resto del día.</string>
<string name="uv_index_protection_value_none">Bajo por el resto del día.</string>

<string name="vis">Visibilidad</string>
<string name="vis_unit_m">m</string>
<string name="vis_value_m">%s&nbsp;m</string>
<string name="vis_unit_ft">ft</string>
<string name="vis_value_ft">%s&nbsp;ft</string>
<string name="vis_unit_km">km</string>
<string name="vis_value_km">%s&nbsp;km</string>
<string name="vis_unit_mi">mi</string>
<string name="vis_value_mi">%s&nbsp;mi</string>
<string name="vis_description_perfect">Vista perfectamente clara.</string>
<string name="vis_description_clear">Vista clara.</string>
<string name="vis_description_fair">Vista bastante clara.</string>
<string name="vis_description_low">Vista obstruída.</string>
<string name="vis_description_very_low">Vista muy obstruída.</string>

<string name="wind_label">Viento</string>
<string name="wind_bft_0">En calma</string>
<string name="wind_bft_1">Ventolina</string>
<string name="wind_bft_2">Brisa muy débil</string>
<string name="wind_bft_3">Brisa ligera</string>
<string name="wind_bft_4">Brisa moderada</string>
<string name="wind_bft_5">Brisa fresca</string>
<string name="wind_bft_6">Brisa fuerte</string>
<string name="wind_bft_7">Viento fuerte</string>
<string name="wind_bft_8">Temporal</string>
<string name="wind_bft_9">Temporal fuerte</string>
<string name="wind_bft_10">Temporal duro</string>
<string name="wind_bft_11">Temporal muy duro</string>
<string name="wind_bft_12">Temporal huracanado</string>
<string name="wind_value_gusts_at">Ráfagas de %s.</string>
<string name="wind_unit_mps">m/s</string>
<string name="wind_value_mps">%s&nbsp;m/s</string>
<string name="wind_unit_kph">km/h</string>
<string name="wind_value_kph">%s&nbsp;km/h</string>
<string name="wind_unit_kn">kn</string>
<string name="wind_value_kn">%s&nbsp;kn</string>
<string name="wind_unit_mph">mi/h</string>
<string name="wind_value_mph">%s&nbsp;mi/h</string>

<string name="wmo_0">Despejado</string>
<string name="wmo_1">Mayormente despejado</string>
<string name="wmo_2">Parcialmente nublado</string>
<string name="wmo_3">Cubierto</string>
<string name="wmo_45">Niebla</string>
<string name="wmo_48">Niebla que deposita cencellada</string>
<string name="wmo_51">Llovizna débil</string>
<string name="wmo_53">Llovizna</string>
<string name="wmo_55">Llovizna densa</string>
<string name="wmo_56">Llovizna débil y helada</string>
<string name="wmo_57">Llovizna densa y helada</string>
<string name="wmo_61">Lluvia débil</string>
<string name="wmo_63">Lluvia</string>
<string name="wmo_65">Lluvia fuerte</string>
<string name="wmo_66">Lluvia débil y helada</string>
<string name="wmo_67">Lluvia fuerte y helada</string>
<string name="wmo_71">Nevada débil</string>
<string name="wmo_73">Nieve</string>
<string name="wmo_75">Nevada fuerte</string>
<string name="wmo_77">Gránulos de nieve</string>
<string name="wmo_80">Chubascos débiles</string>
<string name="wmo_81">Chubascos</string>
<string name="wmo_82">Chubascos violentos</string>
<string name="wmo_85">Chubascos de nieve débiles</string>
<string name="wmo_86">Chubascos de nieve fuertes</string>
<string name="wmo_95">Tormenta</string>
<string name="wmo_96">Tormenta con granizo</string>
<string name="wmo_99">Tormenta fuerte con granizo</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/xml/locales_config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

<locale-config xmlns:android="http://schemas.android.com/apk/res/android">
<locale android:name="en"/>
<locale android:name="es"/>
<locale android:name="fr"/>
<locale android:name="hr"/>
<locale android:name="vi"/>
Expand Down