diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d33dcfd..6713338 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,6 +40,7 @@ jobs: build-locale: - en - fr + - fi env: METEO_BUILD_LOCALE: ${{ matrix.build-locale }} diff --git a/README.md b/README.md index f799fdc..b04b5b8 100644 --- a/README.md +++ b/README.md @@ -110,6 +110,7 @@ configuration in `weewx.conf`: - English (default) - French +- Finnish ### Language Selection diff --git a/messages/fi.json b/messages/fi.json new file mode 100644 index 0000000..6e95880 --- /dev/null +++ b/messages/fi.json @@ -0,0 +1,45 @@ +{ + "Global": { + "DataLoadErrorTitle": "Säätietoja ei voida ladata.", + "DataLoadUnexpectedErrorMessage": "Odottamaton virhe tapahtui säätietoja ladattaessa." + }, + "Labels": { + "Average": "keskiarvo", + "Sum": "yhteensä" + }, + "CardinalPoints": { + "North": "P", + "NorthEast": "PI", + "East": "I", + "SouthEast": "KA", + "South": "E", + "SouthWest": "LO", + "West": "L", + "NorthWest": "LU" + }, + "Current": { + "PageTitle": "Nykyiset Olot", + "PageFootnote": "Kaaviot ja muut tilastotiedot perustuvat viimeiseen 24 tuntiin.", + "EmptyGraphMessage": "Ei tietoja viimeisten 24 tunnin ajalta." + }, + "WeekToDate": { + "PageTitle": "Viikko tähän asti", + "PageSubtitleSince": "Alkaen" + }, + "MonthToDate": { + "PageTitle": "Kuukausi tähän asti", + "PageSubtitleSince": "Alkaen" + }, + "Day": { + "PageTitle": "Päivän Yhteenveto", + "NoData": "Valitulle päivälle ei ole tietoja. Valitse toinen päivä." + }, + "Month": { + "PageTitle": "Kuukauden Yhteenveto", + "NoData": "Valitulle kuukaudelle ei ole tietoja. Valitse toinen kuukausi." + }, + "Year": { + "PageTitle": "Vuoden Yhteenveto", + "NoData": "Valitulle vuodelle ei ole tietoja. Valitse toinen vuosi." + } +} diff --git a/src/contexts/MUILocalizationProvider.tsx b/src/contexts/MUILocalizationProvider.tsx index 371ce66..73e79bb 100644 --- a/src/contexts/MUILocalizationProvider.tsx +++ b/src/contexts/MUILocalizationProvider.tsx @@ -21,6 +21,7 @@ along with this program. If not, see . import { LocalizationProvider } from '@mui/x-date-pickers'; import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'; import 'dayjs/locale/en'; +import 'dayjs/locale/fi'; import 'dayjs/locale/fr'; interface MUILocalizationProviderProps { diff --git a/weewx/skins/me.teo/lang/fi.lang b/weewx/skins/me.teo/lang/fi.lang new file mode 100644 index 0000000..5220578 --- /dev/null +++ b/weewx/skins/me.teo/lang/fi.lang @@ -0,0 +1,126 @@ +# weewx-me.teo +# Copyright (C) 2024 Pascal Bourque +# Finnish language by iiseppi 1.12.2024 +# +# 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 . + +unit_system = metricwx + +[Units] + + [[Labels]] + + # These are singular, plural + meter = " metri", " metriä" + day = " päivä", " päivää" + hour = " tunti", " tuntia" + minute = " minuutti", " minuuttia" + second = " sekuntti", " sekunttia" + + [[Ordinates]] + + # Ordinal directions. The last one should be for no wind direction + directions = P, NNE, PI, ENE, I, IK, KE, SSE, E, EL, SW, LO, E, LL, PL, LP, N/A + +[Labels] + + # Set to hemisphere abbreviations suitable for your location: + hemispheres = P, L, I, E + + # Generic labels, keyed by an observation type. + + [[Generic]] + altimeter = Korkeus # QNH + altimeterRate = Korkeuden Muutos + appTemp = Tuntuu Kuin + appTemp1 = Tuntuu Kuin + barometer = Ilmanpaine # QFF + barometerRate = Ilmanpaineen muutos + cloudbase = Pilvien Taso + dateTime = Aika + dewpoint = Kastepiste + ET = Haihtuvuus + extraHumid1 = Kosteus1 + extraHumid2 = Kosteus2 + extraHumid3 = Kosteus3 + extraHumid4 = Kosteus4 + extraHumid5 = Kosteus5 + extraHumid6 = Kosteus6 + extraHumid7 = Kosteus7 + extraHumid8 = Kosteus8 + extraTemp1 = Järjestelmän lämpötila + extraTemp2 = Lämpötila2 + extraTemp3 = Lämpötila3 + extraTemp4 = Lämpötila4 + extraTemp5 = Lämpötila5 + extraTemp6 = Lämpötila6 + extraTemp7 = Lämpötila7 + extraTemp8 = Lämpötila8 + heatindex = Lämpöindeksi + inDewpoint = Sisätilan Kastepiste + inHumidity = Sisätilan Kosteus + inTemp = Sisälämpötila + interval = Aikaväli + leafTemp1 = Lehtilämpötila1 + leafTemp2 = Lehtilämpötila2 + leafWet1 = Lehtikosteus1 + leafWet2 = Lehtikosteus2 + lightning_distance = Salaman Etäisyys + lightning_strike_count = Salamoita + luminosity = Valoisuus + outHumidity = Kosteus + outTemp = Lämpötila + pressure = Ilmanpaine # QFE + pressureRate = Ilmanpaineen Muutos + radiation = Säteily + rain = Sade + rainRate = Sateen Määrä + soilMoist1 = Maaperän Kosteus1 + soilMoist2 = Maaperän Kosteus2 + soilMoist3 = Maaperän Kosteus3 + soilMoist4 = Maaperän Kosteus4 + soilTemp1 = Maaperän Lämpötila1 + +# Sensor status indicators + consBatteryVoltage = Konsolin Paristo + heatingVoltage = Lämmityksen Paristo + inTempBatteryStatus = Sisälämpötilän Paristo + outTempBatteryStatus = Ulkolämpötilän Paristo + rainBatteryStatus = Sademittarin Paristo + referenceVoltage = Referenssi Jännite + rxCheckPercent = Signaalin Laatu + supplyVoltage = Syöttöjännite + txBatteryStatus = Lähttimen Paristo + windBatteryStatus = Tuuliyksikön Paristo + batteryStatus1 = Paristo1 + batteryStatus2 = Paristo2 + batteryStatus3 = Paristo3 + batteryStatus4 = Paristo4 + batteryStatus5 = Paristo5 + batteryStatus6 = Paristo6 + batteryStatus7 = Paristo7 + batteryStatus8 = Paristo8 + signal1 = Signaali1 + signal2 = Signaali2 + signal3 = Signaali3 + signal4 = Signaali4 + signal5 = Signaali5 + signal6 = Signaali6 + signal7 = Signaali7 + signal8 = Signaali8 + +[Texts] + "steady" = "vakaa" + "mainly" = "pääasiassa" + "variable" = "vaihteleva" diff --git a/weewx/skins/me.teo/skin.conf b/weewx/skins/me.teo/skin.conf index 99fd780..1d029b1 100644 --- a/weewx/skins/me.teo/skin.conf +++ b/weewx/skins/me.teo/skin.conf @@ -71,7 +71,7 @@ SKIN_VERSION = ##SKIN_VERSION## template = data/year-%Y.json.tmpl [CopyGenerator] - copy_once = en, fr + copy_once = en, fr, fi [Generators] generator_list = weewx.cheetahgenerator.CheetahGenerator, weewx.reportengine.CopyGenerator, user.meteo.NextJsBasePathGenerator