i18n: pisti87's Hungarian, plus the compiled-in table I forgot to regenerate (#277)

pisti87 pointed at a commit of his (dc94f44) with 64 Hungarian rows, including
translations for the strings added over the last few releases.

He put them in src/ui-touch/i18n_builtin.h, which says "DO NOT EDIT" at the top
because it is GENERATED from deploy/apps/lang/*.lang. That turns out to be my
fault rather than his: yesterday I added 29 keys to the .lang files and never
ran gen-lang-builtin.py, so the compiled-in fallback still had the old table and
a device that has not downloaded a pack still showed English. Editing the
generated file was a reasonable guess at where the strings lived.

So: his rows are merged into deploy/apps/lang/hu.lang, the canonical source, and
the builtin is regenerated from it (13 languages, 12514 rows). Both paths agree
again.

Four of his rows would not have compiled - two used a tab where a comma belongs,
and two left the quotes inside the English unescaped, one of which had pasted
"Nincs válasz." into the middle of the English key. Reconstructed rather than
dropped; the intent was unambiguous in each.

A fifth pointed at something real: he translated "Battery life: geathering
data..." and no such key exists. Ours has no typo, but more importantly it was
never wrapped in TR() at all - a bare literal snprintf'd straight into a
user-visible buffer, which the unwrapped-literal scanner does not look at since
it only inspects LVGL setters. It is wrapped now, along with the one literal the
scanner did flag (the UI size dropdown), so the scan is at zero and both strings
are translatable for the first time.

Audit: 916 keys covered in all 13 languages. Published as language v13 and the
store is live.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Kaj Schittecat
2026-08-21 16:35:00 +02:00
co-authored by Claude Opus 5
parent 3499ae5b2e
commit 1c686553e7
29 changed files with 13808 additions and 110 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: bg
# ver: 12
# ver: 13
# name: Български
# base: bg
(device behind) (устройството изостава)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: de
# ver: 12
# ver: 13
# name: Deutsch
# base: de
(device behind) (Gerät geht nach)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: el
# ver: 12
# ver: 13
# name: Ελληνικά
# base: el
(device behind) (συσκευή πίσω)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: es
# ver: 12
# ver: 13
# name: Español
# base: es
(device behind) (dispositivo atrasado)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: fr
# ver: 12
# ver: 13
# name: Français
# base: fr
(device behind) (appareil en retard)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+64 -62
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: hu
# ver: 12
# ver: 13
# name: Magyar
# base: hu
(device behind) (készülék hátulján)
@@ -40,13 +40,13 @@ Add contact Névjegy hozzáadás
Added Hozzáadva
Added to contacts Hozzáadva a névjegyekhez
Added to favorites Hozzáadva a kedvencekhez
Admin Adminisztráció
Admin Admin
Advert Advert
Advert failed Advert sikertelen
Advert location Advert helye
Advert policy saved Advert szabályzat mentve
Advert sent Advert elküldve
All marked read Összes megjelölve olvasottnak
All marked read Össz. olvasottnak
Already exists Már létezik
Already exists or table full. Már létezik, vagy a tábla megtelt.
Already in contacts Már a névjegyek közt
@@ -72,10 +72,10 @@ Auto-Join Auto. csatlakozás
Auto-add Auto. hozzáad.
Auto-add contacts Névjegyek automatikus hozzáadása
Auto-add saved Auto. hozzáadás mentve
Auto-add settings Auto. hozzáadás beállításai
Auto-delete above hops Auto. törlés a fenti hops-ok felett
Auto-delete oldest Legrégebbi automatikus törlése
Auto-delete oldest makes room when full. Hops: 0 = keep all; nodes heard via more hops are removed. A legrégebbi automatikus törlése helyet szabadít fel, ha megtelik. Hops-ok: 0 = összes megtartása; a további hops-on keresztül hallott nodeok eltávolításra kerülnek.
Auto-add settings Auto. hozzáadás
Auto-delete above hops Auto. törlés hop felett
Auto-delete oldest Régebbi auto. törlése
Auto-delete oldest makes room when full. Hops: 0 = keep all; nodes heard via more hops are removed. Ha megtelik, a legrégebbi törlődik. Hops: 0 = összes; távolabbi node-ok törlődnek.
Auto-discover Auto. felismerés
Auto-discover off Auto. felismerés kikapcsolva
Auto-discover on Auto. felismerés bekapcsolva
@@ -89,7 +89,7 @@ BT BT
Back Vissza
Backups Mentés
Battery Akkumlátor
Battery & power history Akkumulátor és teljesítmény előzményei
Battery & power history Akku és teljesítmény előzményei
Battery (V) Akkumlátor (V)
Battery calibration reset to default Az akkumulátor kalibrálása visszaállt az alapértelmezett értékre
Battery read too low — charge fully first Az akkumulátor túl alacsony állapotban van először töltse fel teljesen
@@ -97,7 +97,7 @@ Battery saver (experimental) Akkumulátorkímélő (kísérleti)
Battery — last 24h Akkumulátor elmúlt 24 óra
Battery: Akkumlátor
Block Tiltás
Block list full A feketelista megtelt
Block list full A tiltólista megtelt
Blocked list Tiltólista
Blocked users Letiltott felhasználók
Blocked — their messages are hidden Blokkolt az üzeneteik rejtve vannak
@@ -153,7 +153,7 @@ Chat save fallback (failed tries) Csevegésmentés tartalék (hibás próbák)
Chats, contacts, settings and a mesh terminal - all in the browser. No reboot; the device keeps its normal screen. Csevegések, névjegyek, beállítások és mesh-terminál - mind a böngészőben. Nincs újraindítás; az eszköz képernyője változatlan marad.
Choose .wav from files .wav választása a fájlokból
Choose your name Válaszd ki a neved
Choose your region Válassza ki a régióját
Choose your region Válaszd ki a régiód
Clear Tisztít
Clear battery history? Törli az akkumulátorelőzményeket?
Clear history Előzmények törlése
@@ -218,7 +218,7 @@ Couldn't start the analyzer.\nTry again. Nem sikerült elindítani az analizáto
Crash export failed A Crash exportálása sikertelen volt
Create Létrehoz
Create QR QR készítése
Create a private channel Privát csatorna létrehozása
Create a private channel Privát létrehozása
Create failed Létrehozás sikertelen
Create private channel Privát csatorna létrehozása
Current tile transfer is busy - retry Az aktuális csempeátvitel folyamatban van próbáld újra később.
@@ -394,9 +394,9 @@ Invalid lat/lon Hosszúság/szélesség érvénytelen
Invalid max hops Érvénytelen maximális ugrásszám
Invalid radio values Érvénytelen rádióértékek
Join Csatlakozás
Join a hashtag channel Csatlakozás hashtag csatornához
Join a private channel Csatlakozás privát csatornához
Join hashtag channel Csatlakozz a hashtag csatornához
Join a hashtag channel Belépés # csatornához
Join a private channel Belépés priváthoz
Join hashtag channel Csatlakozz # csatornához
Join network Csatlakozás a hálózathoz
Join private channel Csatlakozz privát csatornához
Join the public channel Csatlakozás a nyilvános csatornához
@@ -622,7 +622,7 @@ Public key (64 hex chars) Nyilvános kulcs (64 hex karakter)
Public key: Nyilvános kulcs
Publish channel messages Csatornaüzenetek közzététele
Publish direct messages Közvetlen üzenetek közzététele
Purge Purge
Purge Törlés
Purge all discovered nodes? Törölje az összes felfedezett csomópontot?
Quick replies Gyors válaszok
Quick reply Gyors válasz
@@ -663,7 +663,7 @@ Remote terminal off Távoli terminál kikapcsolva
Remove Eltávolítás
Remove %s? Eltávolítod: %s?
Remove channel Csatorna eltávolítása
Remove channel "%s"?\nLeaves it on this device only. Eltávolítja a(z) %s csatornát?\nCsak ezen az eszközön hagyja.
Remove channel "%s"?\nLeaves it on this device only. Eltávolítja a(z) "%s" csatornát?\nCsak ezen az eszközön hagyja.
Removed Eltávolítva
Removed from favorites Eltávolítva a kedvencek közül
Rename Átnevezés
@@ -870,7 +870,7 @@ Today Ma
Toggle GPS GPS be-/kikapcs.
Too large to edit (>8 KB) Túl nagy a szerkesztéshez (>8 KB)
Topographic map Topográfiai térkép
Trace Trace
Trace Nyomkövetés
Trace SNR SNR nyomkövetés
Trace failed Nyomkövetés sikertelen
Trace route Útvonal nyomkövetése
@@ -975,7 +975,7 @@ now talking to %s most %s-szel beszélgetek
off ki
off = Enter adds a new line; tap Send to send ki = Az Enter új sort hoz létre; a küldéshez koppintson a Küldés gombra
on be
peak -- peak
peak -- peak --
pick accented letters as you type; off = plain typing ékezetes betűk kiválasztása gépelés közben; kikapcsolva = sima gépelés
press Volume Down to unlock Nyomja meg a hangerő csökkentését a feloldáshoz
push past a screen edge to scroll content Görgetéshez húzza végig az ujját a képernyő szélén
@@ -990,47 +990,49 @@ zoom %d zoom %d
~17 dB amp for quiet/remote areas; turn off in noisy spots. ~17 dB erősítővel csendes/távoli helyeken; zajos helyeken kapcsold ki.
© OpenStreetMap © OpenStreetMap
© OpenTopoMap © OpenTopoMap
Scope
another region
my region
Save FAIL x%u
Save migrating
Saved %s
Sort discovered
Sort by
Peers
Favorites
Has location
Direct (0-hop)
Heard %s
Traffic (since boot)\n Sent %u flood, %u direct\n Recv %u flood, %u direct
Overwrite oldest non-favorite
"%s" wants to send messages on the mesh.\n\nThey will be sent as %s and cannot be told apart from messages you typed.\n\nOnly allow this for an app you trust. "%s" wants to send messages on the mesh.\n\nThey will be sent as %s and cannot be told apart from messages you typed.\n\nOnly allow this for an app you trust.
%d of %d on map %d of %d on map
1-character messages will be ignored 1-character messages will be ignored
1-character messages will be shown 1-character messages will be shown
All All
Allow Allow
Apps that may send messages on the mesh. Anything they send goes out under your node name and cannot be told apart from a message you typed. Turn one off to take the permission back. Apps that may send messages on the mesh. Anything they send goes out under your node name and cannot be told apart from a message you typed. Turn one off to take the permission back.
Ignore 1-character messages Ignore 1-character messages
Join w/ password Join w/ password
Location no longer shared Location no longer shared
Location shared with anyone who asks Location shared with anyone who asks
Location shared with chosen contacts only Location shared with chosen contacts only
Location shared with this contact Location shared with this contact
Location sharing off Location sharing off
Max dots Max dots
Most mesh spam is a single character, because it is the cheapest message to send. Dropped silently: no chat entry, no notification, no sound. Most mesh spam is a single character, because it is the cheapest message to send. Dropped silently: no chat entry, no notification, no sound.
Never\nChosen contacts only\nAnyone who asks Never\nChosen contacts only\nAnyone who asks
No apps installed. No apps installed.
No reply. Path hash is %u bytes;\nolder repeaters drop those.\nTry 1 byte (Settings > Radio & Mesh) No reply. Path hash is %u bytes;\nolder repeaters drop those.\nTry 1 byte (Settings > Radio & Mesh)
Not supported on this board Not supported on this board
Read incoming messages Read incoming messages
Reconnected to %.40s Reconnected to %.40s
Send messages as me Send messages as me
Sent only when that contact asks, encrypted to them. Nothing is broadcast. Needs "Answer telemetry requests" on. Pick contacts in a contact's menu. Csak akkor küldi el, ha az adott névjegy kéri, és titkosítva, kizárólag neki küldi. Semmi nem kerül közzétételre. Az Telemetriai kérések megválaszolása engedélynek be kell lennie kapcsolva. A névjegyeket a névjegy menüjében választhatod ki.
Server has forgotten you.\nJoin with the room password. Server has forgotten you.\nJoin with the room password.
Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Scope Hatókör
another region másik régió
my region saját régió
Save FAIL x%u Mentési hiba x%u
Save migrating Mentés áthelyezése
Saved %s Mentve: %s
Sort discovered Felfedezettek rendezése
Sort by Rendezés szerint
Peers Partnerek
Favorites Kedvencek
Has location Van helyadata
Direct (0-hop) Közvetlen (0 ugrás)
Heard %s Észlelve: %s
Traffic (since boot)\n Sent %u flood, %u direct\n Recv %u flood, %u direct Forgalom (indítás óta)\n Küldve %u flood, %u közvetlen\n Fogadva %u flood, %u közvetlen
Overwrite oldest non-favorite Legrégebbi nem kedvenc felülírása
"%s" wants to send messages on the mesh.\n\nThey will be sent as %s and cannot be told apart from messages you typed.\n\nOnly allow this for an app you trust. "%s" üzeneteket szeretne küldeni a mesh hálózaton.\n\nAz üzeneteket %s néven küldi, és nem különböztethetők meg az általad beírt üzenetektől.\n\nCsak megbízható alkalmazásnak engedélyezd.
%d of %d on map %d / %d a térképen
1-character messages will be ignored Az 1 karakteres üzenetek figyelmen kívül lesznek hagyva
1-character messages will be shown Az 1 karakteres üzenetek megjelennek
All Összes
Allow Engedélyezés
Apps that may send messages on the mesh. Anything they send goes out under your node name and cannot be told apart from a message you typed. Turn one off to take the permission back. Azok az alkalmazások, amelyek üzeneteket küldhetnek a mesh hálózaton. Az általuk küldött üzenetek a csomópontod neve alatt jelennek meg, és nem különböztethetők meg az általad beírt üzenetektől. Kapcsold ki az engedélyt annak visszavonásához.
Ignore 1-character messages 1 karakteres üzenetek figyelmen kívül hagyása
Join w/ password Csatlakozás jelszóval
Location no longer shared A helyzetmegosztás megszűnt
Location shared with anyone who asks A helyzet megosztása bárkivel, aki kéri
Location shared with chosen contacts only A helyzet megosztása csak a kiválasztott névjegyekkel
Location shared with this contact A helyzet megosztása ezzel a névjeggyel
Location sharing off Helyzetmegosztás kikapcsolva
Max dots Max. pontok
Most mesh spam is a single character, because it is the cheapest message to send. Dropped silently: no chat entry, no notification, no sound. A legtöbb mesh spam jelenleg egyetlen karakterből áll, mert ez a legolcsóbban elküldhető üzenet. Csendben eldobva: nem jelenik meg a csevegésben, nincs értesítés és nincs hangjelzés.
Never\nChosen contacts only\nAnyone who asks Soha\nCsak a kiválasztott névjegyek\nBárki, aki kéri
No apps installed. Nincsenek telepített alkalmazások.
No reply. Path hash is %u bytes;\nolder repeaters drop those.\nTry 1 byte (Settings > Radio & Mesh) Nincs válasz. Az útvonal hash értéke %u bájt;\na régebbi átjátszók eldobhatják ezeket.\nPróbáld 1 bájttal (Beállítások > Rádió és Mesh)
Not supported on this board Ezen az eszközön nem támogatott.
Read incoming messages Beérkező üzenetek olvasása
Reconnected to %.40s Újracsatlakozva ehhez: %.40s
Send messages as me Üzenetek küldése a nevemben
Sent only when that contact asks, encrypted to them. Nothing is broadcast. Needs "Answer telemetry requests" on. Pick contacts in a contact's menu. Csak akkor küldi el, ha az adott névjegy kéri, és titkosítva, kizárólag neki küldi. Semmi nem kerül közzétételre. Az "Telemetriai kérések megválaszolása" engedélynek be kell lennie kapcsolva. A névjegyeket a névjegy menüjében választhatod ki.
Server has forgotten you.\nJoin with the room password. A szerver elfelejtett téged.\nCsatlakozz a szoba jelszavával.
Share my loc Helyzetem megosztása
Share my location when asked Helyzetem megosztása kérésre
Stop sharing loc Helyzetmegosztás leállítása
not asked yet Még nem kérték
Battery life: gathering data… Üzemidő: adatok gyűjtése…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: it
# ver: 12
# ver: 13
# name: Italiano
# base: it
(device behind) (dispositivo indietro)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: nl
# ver: 12
# ver: 13
# name: Nederlands
# base: nl
(device behind) (apparaat loopt achter)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: pt-br
# ver: 12
# ver: 13
# name: Português (BR)
# base: pt-br
(device behind) (dispositivo atrasado)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: ro
# ver: 12
# ver: 13
# name: Română
# base: ro
(device behind) (dispozitiv în urmă)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: ru
# ver: 12
# ver: 13
# name: Русский
# base: ru
(device behind) (устройство отстаёт)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: sr
# ver: 12
# ver: 13
# name: Српски
# base: sr
(device behind) (уређај касни)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+3 -1
View File
@@ -1,7 +1,7 @@
# wadamesh language file
# canonical source - translators: edit this file and PR it
# code: uk
# ver: 12
# ver: 13
# name: Українська
# base: uk
(device behind) (пристрій відстає)
@@ -1014,3 +1014,5 @@ Share my loc Share my loc
Share my location when asked Share my location when asked
Stop sharing loc Stop sharing loc
not asked yet not asked yet
Battery life: gathering data… Battery life: gathering data…
Small\nMedium\nLarge\nJumbo Small\nMedium\nLarge\nJumbo
+13 -13
View File
@@ -3,67 +3,67 @@
{
"code": "bg",
"name": "Български",
"ver": "12"
"ver": "13"
},
{
"code": "de",
"name": "Deutsch",
"ver": "12"
"ver": "13"
},
{
"code": "el",
"name": "Ελληνικά",
"ver": "12"
"ver": "13"
},
{
"code": "es",
"name": "Español",
"ver": "12"
"ver": "13"
},
{
"code": "fr",
"name": "Français",
"ver": "12"
"ver": "13"
},
{
"code": "hu",
"name": "Magyar",
"ver": "12"
"ver": "13"
},
{
"code": "it",
"name": "Italiano",
"ver": "12"
"ver": "13"
},
{
"code": "nl",
"name": "Nederlands",
"ver": "12"
"ver": "13"
},
{
"code": "pt-br",
"name": "Português (BR)",
"ver": "12"
"ver": "13"
},
{
"code": "ro",
"name": "Română",
"ver": "12"
"ver": "13"
},
{
"code": "ru",
"name": "Русский",
"ver": "12"
"ver": "13"
},
{
"code": "sr",
"name": "Српски",
"ver": "12"
"ver": "13"
},
{
"code": "uk",
"name": "Українська",
"ver": "12"
"ver": "13"
}
]
}
+2 -2
View File
@@ -12569,7 +12569,7 @@ static void buildDeviceSettings(int sec) {
y += settingsRowLabel(body, y, 0, TR("UI size (restart to apply)"), COLOR_SUB, &g_font_12, 0) + 2;
lv_obj_t* dd = lv_dropdown_create(body);
#if defined(TLORA_PAGER)
lv_dropdown_set_options(dd, "Small\nMedium\nLarge\nJumbo");
lv_dropdown_set_options(dd, TR("Small\nMedium\nLarge\nJumbo"));
#else
lv_dropdown_set_options(dd, TR("Normal (100%)\nLarge (150%)\nHuge (200%)"));
#endif
@@ -18151,7 +18151,7 @@ static void batteryEstimateText(const uint32_t* eps, const uint16_t* mvs, int n,
const double x = (double)(eps[i] - t0), y = (double)mvs[i];
sx += x; sy += y; sxx += x * x; sxy += x * y; ++m; last_v = mvs[i]; last_t = eps[i];
}
if (m < 3 || (last_t - t0) < 900) { snprintf(out, cap, "Battery life: gathering data\xe2\x80\xa6"); return; }
if (m < 3 || (last_t - t0) < 900) { snprintf(out, cap, "%s", TR("Battery life: gathering data\xe2\x80\xa6")); return; }
const double denom = (double)m * sxx - sx * sx;
if (denom <= 0) { snprintf(out, cap, "Battery life: \xe2\x80\x94"); return; }
const double slope = ((double)m * sxy - sx * sy) / denom; // mV/s (negative = discharging)
File diff suppressed because it is too large Load Diff