Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.
Byla vydána nová verze 3.38 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.10 souvisejícího programovacího jazyka Dart (Wikipedie).
Organizace Apache Software Foundation (ASF) vydala verzi 28 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byl vydán Debian 13.2, tj. druhá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Google představil platformu Code Wiki pro rychlejší porozumění existujícímu kódu. Code Wiki pomocí AI Gemini udržuje průběžně aktualizovanou strukturovanou wiki pro softwarové repozitáře. Zatím jenom pro veřejné. V plánu je rozšíření Gemini CLI také pro soukromé a interní repozitáře.
V přihlašovací obrazovce LightDM KDE (lightdm-kde-greeter) byla nalezena a již opravena eskalace práv (CVE-2025-62876). Detaily v příspěvku na blogu SUSE Security.
Byla vydána nová verze 7.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 15.0.1. Další novinky v příslušném seznamu.
Česká národní banka (ČNB) nakoupila digitální aktiva založená na blockchainu za milion dolarů (20,9 milionu korun). Na vytvořeném testovacím portfoliu, jehož součástí jsou bitcoin, stablecoiny navázané na dolar a tokenizované depozitum, chce získat praktickou zkušenost s držením digitálních aktiv. Portfolio nebude součástí devizových rezerv, uvedla dnes ČNB v tiskové zprávě.
Apple představil iPhone Pocket pro stylové přenášení iPhonu. iPhone Pocket vzešel ze spolupráce značky ISSEY MIYAKE a Applu a jeho tělo tvoří jednolitý 3D úplet, který uschová všechny modely iPhonu. iPhone Pocket s krátkým popruhem se prodává za 149,95 dolarů (USA) a s dlouhým popruhem za 229,95 dolarů (USA).
Byla vydána nová stabilní verze 7.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 142. Přehled novinek i s náhledy v příspěvku na blogu.
Zdravím,
potřeboval bych poradit s gettextem. V anglickém zdrojáku se mi například vyskytuje slovo "to" to ale můžu přeložit do češtiny jako "do" nebo "k". Další podobné problémy nastávají se skloňováním. Jak se dá tohle vyřešit?
Problém je, že v textu jsou proměnné, takže se vše rozpadá opravdu jenom na jedno nebo dvouslovné kousky vět, které se pokaždé musí přeložit trochu jinak. Takže řešení, které nabízí manuál gettextu je pro mě nepoužitelné.
Díky,
Vláďa
Máš pravdu, asi jsem si to chtěl až příliš zjednodušit, ale ono je to složitější. Asi by to opravdu chtělo mít vždy celé věty. Ale jak na to?
Dejme tomu, že mám proměnnou "filename" a můj aktuální string v programu je _("File")+" "+filename+" "+_("was not found.")
Překlad druhé části je "nebyl nalezen". Ale v jiném místě programu bude stejný anglický řetězec, ale překlad by měl být "nebyla nalezena". Takto jsem to myslel s tím skloňováním. No každopádně bych nějak potřeboval dostat celou větu do jednoho řetězce pro gettext. Jak na to? Používám Python.
Asi by to opravdu chtělo mít vždy celé věty. Ale jak na to?Jak bylo řečeno výše - použít nějakou
sprintf funkce. Nevím, jak je to v Pythonu, ale např. v PHP bych to napsal takhle:
$msg = sprintf(_("File %s was not found"), $filename);
17:41:47: s:\programy\portable_pygtk\_filmsynth/open_media.py:360: warning: 'msgid' format string with unnamed arguments cannot be properly localized:
17:41:47: The translator cannot reorder the arguments.
17:41:47: Please consider using a format string with named arguments,
17:41:47: and a mapping instead of a tuple for the arguments.
text = _('%(retazec)s : %(dalsiRetazec)s [%(cislo)i]\n') % {'retazec': 'XXX', 'dalsiRetazec': 'YYY', 'cislo': 125}(a prekladatelia potom, v prípade potreby, môžu tie parametre presúvať)
Tiskni
Sdílej: