From 4846d11251bb07c989625b109b4ae49fec723f74 Mon Sep 17 00:00:00 2001 From: Ottr-arch Date: Mon, 15 Apr 2024 22:15:07 +0300 Subject: [PATCH 1/6] added estonian language --- platformio/include/config.h | 1 + platformio/src/locales/locale_ee_EE.inc | 426 ++++++++++++++++++++++++ 2 files changed, 427 insertions(+) create mode 100644 platformio/src/locales/locale_ee_EE.inc diff --git a/platformio/include/config.h b/platformio/include/config.h index 1c9934f44..8a1797b3b 100644 --- a/platformio/include/config.h +++ b/platformio/include/config.h @@ -60,6 +60,7 @@ // French (France) fr_FR // Dutch (Belgium) nl_BE // Portuguese (Brazil) pt_BR +// Estonian (Estonia) ee_EE #define LOCALE en_US // UNITS diff --git a/platformio/src/locales/locale_ee_EE.inc b/platformio/src/locales/locale_ee_EE.inc new file mode 100644 index 000000000..d0cd6021f --- /dev/null +++ b/platformio/src/locales/locale_ee_EE.inc @@ -0,0 +1,426 @@ +/* American English locale data for esp32-weather-epd. + * Copyright (C) 2022-2024 Luke Marzen + * + * This program 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. + * + * This program 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 this program. If not, see . + */ + +#include +#include +#include "_locale.h" + +// LC_TIME +// locale-based information, +// see https://man7.org/linux/man-pages/man3/nl_langinfo.3.html for more info. +// Note to Translators: +// The LC_TIME definitions are included in the localedata/locales directory of +// the glibc source tree, in files named after the locale codes and encoding +// schemes. For example, the en_US locale data is stored in the +// localedata/locales/en_US file, which contains the definitions for date and +// time formats, month and day names, and other time-related settings for the +// LC_TIME category. +// https://www.gnu.org/software/libc/sources.html +// D_T_FMT string for formatting date and time +const char *LC_D_T_FMT = "%a %d %b %Y %r %Z"; +// LC_D_FMT date format string +const char *LC_D_FMT = "%m/%d/%y"; +// T_FMT time format string +const char *LC_T_FMT = "%r"; +// T_FMT_AMPM a.m. or p.m. time format string +const char *LC_T_FMT_AMPM = "%I:%M:%S %p"; +// AM_STR Ante Meridian affix +const char *LC_AM_STR = "AM"; +// PM_STR Post Meridian affix +const char *LC_PM_STR = "PM"; +// DAY_{1-7} name of the n-th day of the week +const char *LC_DAY[7] = {"P\xFC""hap\xE4""ev", "Esmasp\xE4""ev", "Teisip\xE4""ev", "Kolmap\xE4""ev", + "Neljap\xE4""ev", "Reede", "Laup\xE4""ev"}; +// ABDAY_{1-7} abbreviated name of the n-th day of the week +const char *LC_ABDAY[7] = {"P", "E", "T", "K", "N", "R", "L"}; +// MON_{1-12} name of the n-th month of the year +const char *LC_MON[12] = {"Jaanuar", "Veebruar", "M\xE4rts", "Aprill", + "Mai", "Juuni", "Juuli", "August", + "September", "Oktoober", "November", "Detsember"}; +// ABMON_{1-12} abbreviated name of the n-th month of the year +const char *LC_ABMON[12] = {"Jaan", "Veebr", "M\xE4rts", "Apr", "Mai", "Juuni", + "Juuli", "Aug", "Sept", "Okt", "Nov", "Dets"}; +// ERA era description segments +const char *LC_ERA = ""; +// ERA_D_FMT era date format string +const char *LC_ERA_D_FMT = ""; +// ERA_D_T_FMT era date and time format string +const char *LC_ERA_D_T_FMT = ""; +// ERA_T_FMT era time format string +const char *LC_ERA_T_FMT = ""; + +// OWM LANGUAGE +// For full list of languages, see +// https://openweathermap.org/api/one-call-api#multi +// Note: "[only] The contents of the 'description' field will be translated." +const String OWM_LANG = "en"; + +// CURRENT CONDITIONS +const char *TXT_FEELS_LIKE = "Tunnetuslik"; +const char *TXT_SUNRISE = "P\xE4ikeset\xF5us"; +const char *TXT_SUNSET = "Loojang"; +const char *TXT_WIND = "Tuul"; +const char *TXT_HUMIDITY = "\xD5huniiskus"; +const char *TXT_UV_INDEX = "UV Indeks"; +const char *TXT_PRESSURE = "R\xF5hk"; +const char *TXT_AIR_QUALITY_INDEX = "\xD5hu kvaliteet"; +const char *TXT_VISIBILITY = "N\xE4htavus"; +const char *TXT_INDOOR_TEMPERATURE = "Temperatuur"; +const char *TXT_INDOOR_HUMIDITY = "\xD5huniiskus"; + +// UV INDEX +const char *TXT_UV_LOW = "Madal"; +const char *TXT_UV_MODERATE = "Keskmine"; +const char *TXT_UV_HIGH = "K\xF5rge"; +const char *TXT_UV_VERY_HIGH = "V\xE4ga k\xF5rge"; +const char *TXT_UV_EXTREME = "\xDClik\xF5rge"; + +// WIFI +const char *TXT_WIFI_EXCELLENT = "Super"; +const char *TXT_WIFI_GOOD = "Hea"; +const char *TXT_WIFI_FAIR = "Piisav"; +const char *TXT_WIFI_WEAK = "N\xF5rk"; +const char *TXT_WIFI_NO_CONNECTION = "Puudub"; + +// UNIT SYMBOLS - TEMPERATURE +const char *TXT_UNITS_TEMP_KELVIN = "K"; +const char *TXT_UNITS_TEMP_CELSIUS = "\260C"; +const char *TXT_UNITS_TEMP_FAHRENHEIT = "\260F"; +// UNIT SYMBOLS - WIND SPEED +const char *TXT_UNITS_SPEED_METERSPERSECOND = "m/s"; +const char *TXT_UNITS_SPEED_FEETPERSECOND = "ft/s"; +const char *TXT_UNITS_SPEED_KILOMETERSPERHOUR = "km/h"; +const char *TXT_UNITS_SPEED_MILESPERHOUR = "mph"; +const char *TXT_UNITS_SPEED_KNOTS = "kt"; +const char *TXT_UNITS_SPEED_BEAUFORT = ""; +// UNIT SYMBOLS - PRESSURE +const char *TXT_UNITS_PRES_HECTOPASCALS = "hPa"; +const char *TXT_UNITS_PRES_PASCALS = "Pa"; +const char *TXT_UNITS_PRES_MILLIMETERSOFMERCURY = "mmHg"; +const char *TXT_UNITS_PRES_INCHESOFMERCURY = "inHg"; +const char *TXT_UNITS_PRES_MILLIBARS = "mbar"; +const char *TXT_UNITS_PRES_ATMOSPHERES = "atm"; +const char *TXT_UNITS_PRES_GRAMSPERSQUARECENTIMETER = "g/cm\262"; +const char *TXT_UNITS_PRES_POUNDSPERSQUAREINCH = "lb/in\262"; +// UNITS - VISIBILITY DISTANCE +const char *TXT_UNITS_DIST_KILOMETERS = "km"; +const char *TXT_UNITS_DIST_MILES = "mi"; + +// MISCELLANEOUS MESSAGES +// Title Case +const char *TXT_LOW_BATTERY = "Aku t\xFChi"; +const char *TXT_NETWORK_NOT_AVAILABLE = "Internet pole saadaval"; +const char *TXT_TIME_SYNCHRONIZATION_FAILED = "Aja k\xFCsimine eba\xF5nnestus"; +const char *TXT_WIFI_CONNECTION_FAILED = "WiFi \xFChendus puudub"; +// First Word Capitalized +const char *TXT_ATTEMPTING_HTTP_REQ = "Attempting HTTP request"; +const char *TXT_AWAKE_FOR = "Awake for"; +const char *TXT_BATTERY_VOLTAGE = "Battery voltage"; +const char *TXT_CONNECTING_TO = "Connecting to"; +const char *TXT_COULD_NOT_CONNECT_TO = "Could not connect to"; +const char *TXT_ENTERING_DEEP_SLEEP_FOR = "Entering deep sleep for"; +const char *TXT_READING_FROM = "Reading from"; +const char *TXT_FAILED = "Failed"; +const char *TXT_SUCCESS = "Success"; +const char *TXT_UNKNOWN = "Unknown"; +// All Lowercase +const char *TXT_NOT_FOUND = "not found"; +const char *TXT_READ_FAILED = "read failed"; +// Complete Sentences +const char *TXT_FAILED_TO_GET_TIME = "Failed to get the time!"; +const char *TXT_HIBERNATING_INDEFINITELY_NOTICE = "Hibernating without wake time!"; +const char *TXT_REFERENCING_OLDER_TIME_NOTICE = "Failed to synchronize time before deep-sleep, referencing older time."; +const char *TXT_WAITING_FOR_SNTP = "Waiting for SNTP synchronization."; +const char *TXT_LOW_BATTERY_VOLTAGE = "Low battery voltage!"; +const char *TXT_VERY_LOW_BATTERY_VOLTAGE = "Very low battery voltage!"; +const char *TXT_CRIT_LOW_BATTERY_VOLTAGE = "Critically low battery voltage!"; + +// ALERTS +// The display can show up to 2 alerts, but alerts can be unpredictable in +// severity and number. If more than 2 alerts are active, the esp32 will attempt +// to interpret the urgency of each alert and prefer to display the most urgent +// and recently issued alerts of each event type. Depending on your region +// different keywords are used to convey the level of urgency. +// +// A vector array is used to store these keywords. Urgency is ranked from low to +// high where the first index of the vector is the least urgent keyword and the +// last index is the most urgent keyword. Expected as all lowercase. +// +// Note to Translators: +// OpenWeatherMap returns alerts in English regardless of the OWM LANGUAGE +// option or territory. For this reason it is preferred that you do not +// translate text related to Alerts. Understandably, it may be undesirable to +// see English alerts in territories where English is uncommon. To satisfy +// this, users should set the DISPLAY_ALERTS macro to 0 in config.h. +// +// Here are a few examples, uncomment the array for your region (or create your +// own). +const std::vector ALERT_URGENCY = {"statement", "watch", "advisory", "warning", "emergency"}; // US National Weather Service +// const std::vector ALERT_URGENCY = {"yellow", "amber", "red"}; // United Kingdom's national weather service (MET Office) +// const std::vector ALERT_URGENCY = {"minor", "moderate", "severe", "extreme"}; // METEO +// const std::vector ALERT_URGENCY = {}; // Disable urgency interpretation (algorithm will fallback to only prefer the most recently issued alerts) + +// ALERT TERMINOLOGY +// Weather terminology associated with each alert icon +const std::vector TERM_SMOG = + {"smog"}; +const std::vector TERM_SMOKE = + {"smoke"}; +const std::vector TERM_FOG = + {"fog", "haar"}; +const std::vector TERM_METEOR = + {"meteor", "asteroid"}; +const std::vector TERM_NUCLEAR = + {"nuclear", "ionizing radiation"}; +const std::vector TERM_BIOHAZARD = + {"biohazard", "biological hazard"}; +const std::vector TERM_EARTHQUAKE = + {"earthquake"}; +const std::vector TERM_TSUNAMI = + {"tsunami"}; +const std::vector TERM_FIRE = + {"fire", "red flag"}; +const std::vector TERM_HEAT = + {"heat"}; +const std::vector TERM_WINTER = + {"blizzard", "winter", "ice", "snow", "sleet", "cold", "freezing rain", + "wind chill", "freeze", "frost", "hail"}; +const std::vector TERM_LIGHTNING = + {"thunderstorm", "storm cell", "pulse storm", "squall line", "supercell", + "lightning"}; +const std::vector TERM_SANDSTORM = + {"sandstorm", "blowing dust", "dust storm"}; +const std::vector TERM_FLOOD = + {"flood", "storm surge", "seiche", "swell", "high seas", "high tides", + "tidal surge"}; +const std::vector TERM_VOLCANO = + {"volcanic", "ash", "volcano", "eruption"}; +const std::vector TERM_AIR_QUALITY = + {"air", "stagnation", "pollution"}; +const std::vector TERM_TORNADO = + {"tornado"}; +const std::vector TERM_SMALL_CRAFT_ADVISORY = + {"small craft", "wind advisory"}; +const std::vector TERM_GALE_WARNING = + {"gale"}; +const std::vector TERM_STORM_WARNING = + {"storm warning"}; +const std::vector TERM_HURRICANE_WARNING = + {"hurricane force wind", "extreme wind", "high wind"}; +const std::vector TERM_HURRICANE = + {"hurricane", "tropical storm", "typhoon", "cyclone"}; +const std::vector TERM_DUST = + {"dust", "sand"}; +const std::vector TERM_STRONG_WIND = + {"wind"}; + +// AIR QUALITY INDEX +extern "C" { +const char *AUSTRALIA_AQI_TXT[6] = +{ + "Very Good", + "Good", + "Fair", + "Poor", + "Very Poor", + "Hazardous", +}; +const char *CANADA_AQHI_TXT[4] = +{ + "Low", + "Moderate", + "High", + "Very High", +}; +const char *EUROPE_CAQI_TXT[5] = +{ + "V\xE4ga hea", + "Hea", + "Keskmine", + "Halb", + "V\xE4ga halb", +}; +const char *HONG_KONG_AQHI_TXT[5] = +{ + "Low", + "Moderate", + "High", + "Very High", + "Hazardous", +}; +const char *INDIA_AQI_TXT[6] = +{ + "Good", + "Satisfactory", + "Moderate", + "Poor", + "Very Poor", + "Severe", +}; +const char *MAINLAND_CHINA_AQI_TXT[6] = +{ + "Excellent", + "Good", + "Lightly Polluted", + "Moderately Polluted", + "Heavily Polluted", + "Severely Polluted", +}; +const char *SINGAPORE_PSI_TXT[5] = +{ + "Good", + "Moderate", + "Unhealthy", + "Very Unhealthy", + "Hazardous", +}; +const char *SOUTH_KOREA_CAI_TXT[4] = +{ + "Good", + "Medium", + "Unhealthy", + "Very Unhealthy", +}; +const char *UNITED_KINGDOM_DAQI_TXT[4] = +{ + "Low", + "Moderate", + "High", + "Very High", +}; +const char *UNITED_STATES_AQI_TXT[6] = +{ + "Good", + "Moderate", + "Unhealthy for Sensitive Groups", + "Unhealthy", + "Very Unhealthy", + "Hazardous", +}; +} // end extern "C" + +// COMPASS POINT +const char *COMPASS_POINT_NOTATION[32] = { +// 0° 11.25° 22.5° 33.75° 45° 56.25° 67.5° 78.75° + "N", "NbE", "NNE", "NEbN", "NE", "NEbE", "ENE", "EbN", +// 90° 101.25° 112.5° 123.75° 135° 146.25° 157.5° 168.75° + "E", "EbS", "ESE", "SEbE", "SE", "SEbS", "SSE", "SbE", +// 180° 191.25° 202.5° 213.75° 225° 236.25° 247.5° 258.75° + "S", "SbW", "SSW", "SWbS", "SW", "SWbW", "WSW", "WbS", +// 270° 281.25° 292.5° 303.75° 315° 326.25° 337.5° 348.75° + "W", "WbN", "WNW", "NWbW", "NW", "NWbN", "NNW", "NbW", +}; + +// HTTP CLIENT ERRORS +const char *TXT_HTTPC_ERROR_CONNECTION_REFUSED = "Connection Refused"; +const char *TXT_HTTPC_ERROR_SEND_HEADER_FAILED = "Send Header Failed"; +const char *TXT_HTTPC_ERROR_SEND_PAYLOAD_FAILED = "Send Payload Failed"; +const char *TXT_HTTPC_ERROR_NOT_CONNECTED = "Not Connected"; +const char *TXT_HTTPC_ERROR_CONNECTION_LOST = "Connection Lost"; +const char *TXT_HTTPC_ERROR_NO_STREAM = "No Stream"; +const char *TXT_HTTPC_ERROR_NO_HTTP_SERVER = "No HTTP Server"; +const char *TXT_HTTPC_ERROR_TOO_LESS_RAM = "Too Less Ram"; +const char *TXT_HTTPC_ERROR_ENCODING = "Transfer-Encoding Not Supported"; +const char *TXT_HTTPC_ERROR_STREAM_WRITE = "Stream Write Error"; +const char *TXT_HTTPC_ERROR_READ_TIMEOUT = "Read Timeout"; + +// HTTP RESPONSE STATUS CODES +// 1xx - Informational Responses +const char *TXT_HTTP_RESPONSE_100 = "Continue"; +const char *TXT_HTTP_RESPONSE_101 = "Switching Protocols"; +const char *TXT_HTTP_RESPONSE_102 = "Processing"; +const char *TXT_HTTP_RESPONSE_103 = "Early Hints"; +// 2xx - Successful Responses +const char *TXT_HTTP_RESPONSE_200 = "OK"; +const char *TXT_HTTP_RESPONSE_201 = "Created"; +const char *TXT_HTTP_RESPONSE_202 = "Accepted"; +const char *TXT_HTTP_RESPONSE_203 = "Non-Authoritative Information"; +const char *TXT_HTTP_RESPONSE_204 = "No Content"; +const char *TXT_HTTP_RESPONSE_205 = "Reset Content"; +const char *TXT_HTTP_RESPONSE_206 = "Partial Content"; +const char *TXT_HTTP_RESPONSE_207 = "Multi-Status"; +const char *TXT_HTTP_RESPONSE_208 = "Already Reported"; +const char *TXT_HTTP_RESPONSE_226 = "IM Used"; +// 3xx - Redirection Responses +const char *TXT_HTTP_RESPONSE_300 = "Multiple Choices"; +const char *TXT_HTTP_RESPONSE_301 = "Moved Permanently"; +const char *TXT_HTTP_RESPONSE_302 = "Found"; +const char *TXT_HTTP_RESPONSE_303 = "See Other"; +const char *TXT_HTTP_RESPONSE_304 = "Not Modified"; +const char *TXT_HTTP_RESPONSE_305 = "Use Proxy"; +const char *TXT_HTTP_RESPONSE_307 = "Temporary Redirect"; +const char *TXT_HTTP_RESPONSE_308 = "Permanent Redirect"; +// 4xx - Client Error Responses +const char *TXT_HTTP_RESPONSE_400 = "Bad Request"; +const char *TXT_HTTP_RESPONSE_401 = "Unauthorized"; +const char *TXT_HTTP_RESPONSE_402 = "Payment Required"; +const char *TXT_HTTP_RESPONSE_403 = "Forbidden"; +const char *TXT_HTTP_RESPONSE_404 = "Not Found"; +const char *TXT_HTTP_RESPONSE_405 = "Method Not Allowed"; +const char *TXT_HTTP_RESPONSE_406 = "Not Acceptable"; +const char *TXT_HTTP_RESPONSE_407 = "Proxy Authentication Required"; +const char *TXT_HTTP_RESPONSE_408 = "Request Timeout"; +const char *TXT_HTTP_RESPONSE_409 = "Conflict"; +const char *TXT_HTTP_RESPONSE_410 = "Gone"; +const char *TXT_HTTP_RESPONSE_411 = "Length Required"; +const char *TXT_HTTP_RESPONSE_412 = "Precondition Failed"; +const char *TXT_HTTP_RESPONSE_413 = "Content Too Large"; +const char *TXT_HTTP_RESPONSE_414 = "URI Too Long"; +const char *TXT_HTTP_RESPONSE_415 = "Unsupported Media Type"; +const char *TXT_HTTP_RESPONSE_416 = "Range Not Satisfiable"; +const char *TXT_HTTP_RESPONSE_417 = "Expectation Failed"; +const char *TXT_HTTP_RESPONSE_418 = "I'm a teapot"; +const char *TXT_HTTP_RESPONSE_421 = "Misdirected Request"; +const char *TXT_HTTP_RESPONSE_422 = "Unprocessable Content"; +const char *TXT_HTTP_RESPONSE_423 = "Locked"; +const char *TXT_HTTP_RESPONSE_424 = "Failed Dependency"; +const char *TXT_HTTP_RESPONSE_425 = "Too Early"; +const char *TXT_HTTP_RESPONSE_426 = "Upgrade Required"; +const char *TXT_HTTP_RESPONSE_428 = "Precondition Required"; +const char *TXT_HTTP_RESPONSE_429 = "Too Many Requests"; +const char *TXT_HTTP_RESPONSE_431 = "Request Header Fields Too Large"; +const char *TXT_HTTP_RESPONSE_451 = "Unavailable For Legal Reasons"; +// 5xx - Server Error Responses +const char *TXT_HTTP_RESPONSE_500 = "Internal Server Error"; +const char *TXT_HTTP_RESPONSE_501 = "Not Implemented"; +const char *TXT_HTTP_RESPONSE_502 = "Bad Gateway"; +const char *TXT_HTTP_RESPONSE_503 = "Service Unavailable"; +const char *TXT_HTTP_RESPONSE_504 = "Gateway Timeout"; +const char *TXT_HTTP_RESPONSE_505 = "HTTP Version Not Supported"; +const char *TXT_HTTP_RESPONSE_506 = "Variant Also Negotiates"; +const char *TXT_HTTP_RESPONSE_507 = "Insufficient Storage"; +const char *TXT_HTTP_RESPONSE_508 = "Loop Detected"; +const char *TXT_HTTP_RESPONSE_510 = "Not Extended"; +const char *TXT_HTTP_RESPONSE_511 = "Network Authentication Required"; + +// ARDUINOJSON DESERIALIZATION ERROR CODES +const char *TXT_DESERIALIZATION_ERROR_OK = "Deserialization OK"; +const char *TXT_DESERIALIZATION_ERROR_EMPTY_INPUT = "Deserialization Empty Input"; +const char *TXT_DESERIALIZATION_ERROR_INCOMPLETE_INPUT = "Deserialization Incomplete Input"; +const char *TXT_DESERIALIZATION_ERROR_INVALID_INPUT = "Deserialization Invalid Input"; +const char *TXT_DESERIALIZATION_ERROR_NO_MEMORY = "Deserialization No Memory"; +const char *TXT_DESERIALIZATION_ERROR_TOO_DEEP = "Deserialization Too Deep"; + +// WIFI STATUS +const char *TXT_WL_NO_SHIELD = "No Shield"; +const char *TXT_WL_IDLE_STATUS = "Idle"; +const char *TXT_WL_NO_SSID_AVAIL = "No SSID Available"; +const char *TXT_WL_SCAN_COMPLETED = "Scan Complete"; +const char *TXT_WL_CONNECTED = "Connected"; +const char *TXT_WL_CONNECT_FAILED = "Connection Failed"; +const char *TXT_WL_CONNECTION_LOST = "Connection Lost"; +const char *TXT_WL_DISCONNECTED = "Disconnected"; From 7f9f8dc7e7bf3039f80126de9adee13736f9a338 Mon Sep 17 00:00:00 2001 From: Luke Marzen <98473324+lmarzen@users.noreply.github.com> Date: Mon, 15 Apr 2024 17:06:59 -0500 Subject: [PATCH 2/6] Corrected language-territory code (ee_EE -> et_EE) --- platformio/include/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio/include/config.h b/platformio/include/config.h index 8a1797b3b..987bd0abd 100644 --- a/platformio/include/config.h +++ b/platformio/include/config.h @@ -60,7 +60,7 @@ // French (France) fr_FR // Dutch (Belgium) nl_BE // Portuguese (Brazil) pt_BR -// Estonian (Estonia) ee_EE +// Estonian (Estonia) et_EE #define LOCALE en_US // UNITS From 22be4ce668eb900b067edadbbae40bbf433dcdeb Mon Sep 17 00:00:00 2001 From: Luke Marzen <98473324+lmarzen@users.noreply.github.com> Date: Mon, 15 Apr 2024 17:12:20 -0500 Subject: [PATCH 3/6] Corrected language-territory code (ee_EE -> et_EE) --- .../locales/{locale_ee_EE.inc => locale_et_EE.inc} | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) rename platformio/src/locales/{locale_ee_EE.inc => locale_et_EE.inc} (98%) diff --git a/platformio/src/locales/locale_ee_EE.inc b/platformio/src/locales/locale_et_EE.inc similarity index 98% rename from platformio/src/locales/locale_ee_EE.inc rename to platformio/src/locales/locale_et_EE.inc index d0cd6021f..ebea22062 100644 --- a/platformio/src/locales/locale_ee_EE.inc +++ b/platformio/src/locales/locale_et_EE.inc @@ -1,4 +1,4 @@ -/* American English locale data for esp32-weather-epd. +/* Estonian Estonian locale data for esp32-weather-epd. * Copyright (C) 2022-2024 Luke Marzen * * This program is free software: you can redistribute it and/or modify @@ -31,11 +31,11 @@ // LC_TIME category. // https://www.gnu.org/software/libc/sources.html // D_T_FMT string for formatting date and time -const char *LC_D_T_FMT = "%a %d %b %Y %r %Z"; +const char *LC_D_T_FMT = "%a %d %b %Y %T"; // LC_D_FMT date format string -const char *LC_D_FMT = "%m/%d/%y"; +const char *LC_D_FMT = "%d.%m.%Y"; // T_FMT time format string -const char *LC_T_FMT = "%r"; +const char *LC_T_FMT = "%T"; // T_FMT_AMPM a.m. or p.m. time format string const char *LC_T_FMT_AMPM = "%I:%M:%S %p"; // AM_STR Ante Meridian affix @@ -48,9 +48,9 @@ const char *LC_DAY[7] = {"P\xFC""hap\xE4""ev", "Esmasp\xE4""ev", "Teisip\xE // ABDAY_{1-7} abbreviated name of the n-th day of the week const char *LC_ABDAY[7] = {"P", "E", "T", "K", "N", "R", "L"}; // MON_{1-12} name of the n-th month of the year -const char *LC_MON[12] = {"Jaanuar", "Veebruar", "M\xE4rts", "Aprill", - "Mai", "Juuni", "Juuli", "August", - "September", "Oktoober", "November", "Detsember"}; +const char *LC_MON[12] = {"Jaanuar", "Veebruar", "M\xE4rts", "Aprill", + "Mai", "Juuni", "Juuli", "August", + "September", "Oktoober", "November", "Detsember"}; // ABMON_{1-12} abbreviated name of the n-th month of the year const char *LC_ABMON[12] = {"Jaan", "Veebr", "M\xE4rts", "Apr", "Mai", "Juuni", "Juuli", "Aug", "Sept", "Okt", "Nov", "Dets"}; From 2eedc1df96fe4bb57e94372414e4526873b88e59 Mon Sep 17 00:00:00 2001 From: Luke Marzen <98473324+lmarzen@users.noreply.github.com> Date: Wed, 17 Apr 2024 00:32:09 -0500 Subject: [PATCH 4/6] Update config.h --- platformio/include/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio/include/config.h b/platformio/include/config.h index 987bd0abd..5cc5a6e82 100644 --- a/platformio/include/config.h +++ b/platformio/include/config.h @@ -57,10 +57,10 @@ // German (Germany) de_DE // English (United Kingdom) en_GB // English (United States) en_US +// Estonian (Estonia) et_EE // French (France) fr_FR // Dutch (Belgium) nl_BE // Portuguese (Brazil) pt_BR -// Estonian (Estonia) et_EE #define LOCALE en_US // UNITS From f27a432ff1b5f755eaa531cbb945e2db150f8c11 Mon Sep 17 00:00:00 2001 From: Luke Marzen <98473324+lmarzen@users.noreply.github.com> Date: Wed, 17 Apr 2024 00:40:29 -0500 Subject: [PATCH 5/6] Update locale_et_EE.inc --- platformio/src/locales/locale_et_EE.inc | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/platformio/src/locales/locale_et_EE.inc b/platformio/src/locales/locale_et_EE.inc index ebea22062..74d43e0b5 100644 --- a/platformio/src/locales/locale_et_EE.inc +++ b/platformio/src/locales/locale_et_EE.inc @@ -1,4 +1,4 @@ -/* Estonian Estonian locale data for esp32-weather-epd. +/* Estonian locale data for esp32-weather-epd. * Copyright (C) 2022-2024 Luke Marzen * * This program is free software: you can redistribute it and/or modify @@ -77,7 +77,8 @@ const char *TXT_WIND = "Tuul"; const char *TXT_HUMIDITY = "\xD5huniiskus"; const char *TXT_UV_INDEX = "UV Indeks"; const char *TXT_PRESSURE = "R\xF5hk"; -const char *TXT_AIR_QUALITY_INDEX = "\xD5hu kvaliteet"; +const char *TXT_AIR_QUALITY = "\xD5hu Kvaliteet"; +const char *TXT_AIR_POLLUTION = "\xD5husaaste"; const char *TXT_VISIBILITY = "N\xE4htavus"; const char *TXT_INDOOR_TEMPERATURE = "Temperatuur"; const char *TXT_INDOOR_HUMIDITY = "\xD5huniiskus"; @@ -230,6 +231,17 @@ const std::vector TERM_STRONG_WIND = // AIR QUALITY INDEX extern "C" { +// Seemingly every country uses a different scale for Air Quality Index (AQI). +// I have written a library to calculate many of the most popular AQI scales. +// Feel free to request the addition of a new AQI scale by opening an Issue. +// https://github.com/lmarzen/pollutant-concentration-to-aqi +// Please choose this region's preferred AQI scale. +// AUSTRALIA_AQI CANADA_AQHI EUROPEAN_UNION_CAQI +// HONG_KONG_AQHI INDIA_AQI CHINA_AQI +// SINGAPORE_PSI SOUTH_KOREA_CAI UNITED_KINGDOM_DAQI +// UNITED_STATES_AQI +const aqi_scale_t AQI_SCALE = EUROPEAN_UNION_CAQI; + const char *AUSTRALIA_AQI_TXT[6] = { "Very Good", @@ -246,7 +258,7 @@ const char *CANADA_AQHI_TXT[4] = "High", "Very High", }; -const char *EUROPE_CAQI_TXT[5] = +const char *EUROPEAN_UNION_CAQI_TXT[5] = { "V\xE4ga hea", "Hea", @@ -271,7 +283,7 @@ const char *INDIA_AQI_TXT[6] = "Very Poor", "Severe", }; -const char *MAINLAND_CHINA_AQI_TXT[6] = +const char *CHINA_AQI_TXT[6] = { "Excellent", "Good", From 4802b97cea8898ff3c4b4b2ba1451e3537dfa336 Mon Sep 17 00:00:00 2001 From: Ottr-arch Date: Thu, 18 Apr 2024 22:18:19 +0300 Subject: [PATCH 6/6] updated estonian CAQI translations --- platformio/src/locales/locale_et_EE.inc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/platformio/src/locales/locale_et_EE.inc b/platformio/src/locales/locale_et_EE.inc index 74d43e0b5..f94bd68c5 100644 --- a/platformio/src/locales/locale_et_EE.inc +++ b/platformio/src/locales/locale_et_EE.inc @@ -260,11 +260,11 @@ const char *CANADA_AQHI_TXT[4] = }; const char *EUROPEAN_UNION_CAQI_TXT[5] = { - "V\xE4ga hea", - "Hea", + "V\xE4ga madal", + "Madal", "Keskmine", - "Halb", - "V\xE4ga halb", + "K\xF5rge", + "V\xE4ga k\xF5rge", }; const char *HONG_KONG_AQHI_TXT[5] = {