Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).
Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.
Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.
Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.
Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.
Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.
Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ciele:
Mnohé slobodné programy používajú na prekladanie rozhrania nástroje GNU gettext, ktoré celý preklad zjednodušujú na preklad hlášok v textových súboroch (s príponami .po/.pot). Tieto súbory sa dajú prekladať v ľubovoľnom textovom editore. Prácu prekladateľa však môžu veľmi uľahčiť grafické programy, ktoré zjednodušujú samotný preklad a výsledok dokážu jednoducho uložiť do výsledného binárneho súboru (s príponou .mo). Tento je už priamo využiteľný prekladaným programom (stačí preklad prekopírovať do príslušného adresára.
Rozhranie slobodných programov, ako sú napríklad dialógy alebo textové hlášky v príkazovom riadku, je najčastejšie v anglickom jazyku. Ak nie, je angličtina veľmi často prvý jazyk, do ktorého je daný program preložený. Ak chcete začať s prekladmi, odporúčam veľmi dobrú znalosť anglického jazyka.
Ak to stručne zhrnieme, tak internacionalizáciu riešia programátori a lokalizáciu prekladatelia.
Je nutné si uvedomiť, že internacionalizácia programu zďaleka neznamená iba preloženie textov v jeho rozhraní. Niektoré textové hlášky sú napísané priamo v skriptoch a iných častiach programu, ktoré nie sú priamo preložiteľné pomocou nástrojov GNU gettext. Skoro všetky programy majú možnosti a voľby, ako napríklad Y/N (Yes/No), ktoré tiež môžu byť preložené. Preložené môžu byť aj manuály a dokumentácia, ktorá je k programu priložená, čo je často samostatnou úlohou.
Všeobecne sa dá povedať, že lokalizácia rieši nasledovné oblasti:
Prácu prekladateľa dokážu výrazne zjednodušiť grafické nástroje umožňujúce pohodlnejšiu prácu s .po, .pot a prípadne aj .mo súbormi. Medzi pravdepodobne najznámejšie programy patria nasledujúce:
Ako ukážkový program som vybral kalkulačku Qalculate!. Program môžete stiahnuť priamo zo stránky, ale je veľká šanca, že už bude súčasťou Vašej distribúcie. V mojej aktuálnej distribúcií Ubuntu Dapper už bola distribuovaná verzia 0.9-2-1. Inštalácia bola tým pádom
relatívne jednoduchá: sudo aptitude install qalculate-gtk
(Pre rmp balík: rpm -U qalculate-gtk.rpm
). Po prvom spustení program vyzerá nasledovne:
Napriek tomu, že mám nastavené slovenské lokálne prostredie, program komunikuje po anglicky.
Najprv sa pozrieme, aké jazyky sú v aktuálnej verzii programu podporované. Zo stránky projektu stiahneme zdrojovú verziu programu a zistíme, že v adresári qalculate-gtk-0.9.4/po
existuje lokalizácia pre švédčinu - sv.po a nórčinu - nl.po.
Prázdna jazyková šablóna sk.po
sa generuje z .pot súboru, ktorý získame buď priamo z distribúcie, alebo môžeme požiadať autora projektu o vygenerovanie aktuálnej verzie .pot súboru.
Ďalej predpokladám, že súbor sk.po
máme, takže sa poďme pustiť do reálnej prekladateľskej práce. V ďalšom texte bude paralelne ukázaný postup najčastejšie vykonávaných činností v po editoroch GTranslator a KBabel.
Pri prvom otvorení prázdnej jazykovej šablóny nás GTranslator vyzve na doplnenie dát o preklade, ktoré doplníme nasledovne:
Aby sme vyskúšali, ako "hladko" funguje prekladanie a test výsledku, preložíme si texty priamo v úvodnom dialógu: "Keypad", "History" a text tooltipu "Convert units in result". Následne vygenerujeme výslednú - binárnu verziu prekladu. Preklad jedného z textov a generovanie binárneho súboru je znázornené tu:
A čo s novo vygenerovaným súborom qalculate-gtk.mo
? Stačí ho nakopírovať do adresára pre binárne verzie správ. Na Debian GNU/Linux systémoch je to adresár: /usr/share/locale/xx/LC_MESSAGES/
, kde xx je kód jazyka, pre slovenčinu "sk" a češtinu "cs".
To docielime príkazmi:
sudo cp qalculate-gtk.mo /usr/share/locale/sk/LC_MESSAGES/
#kópia do adresára pre slovenské preklady
qalculate-gtk
A výsledok je nasledujúci:
Je veľmi vhodné preklad overovať, či už priebežne, ak si nie sme istí správnym preložením konkrétnej hlášky, alebo až na konci prekladu, kde je overenie výsledného prekladu nutnosťou.
Preklad jednej správy v programe KBabel je znázornený na obrazovke nižšie:
Nezistil som ako sa v programe KBabel generuje výsledný binárny súbor; mám podozrenie, že to nepodporuje. Binárny preklad však jednoducho získame zo súboru sk.po
pomocou príkazu:
msgfmt -v -o ./qalculate-gtk.mo ./sk.po
Na záver krátka rekapitulácia jednotlivých krokov, ktoré budeme musieť spraviť, aby sme preložili konkrétny program a sprístupnili preklad ostatným používateľom:
LC_MESSAGES
pre váš jazyk a spustením aplikácie.V tejto časti sme sa zoznámili s problematikou prekladania slobodných programov a ukázali najpoužívanejšie programy na prekladanie. V nasledujúcej časti bude podrobnejší popis prekladaných súborov, používanie základných príkazov GNU gettext a pripojený je zoznam tipov a trikov na pomoc prekladateľom.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
A pokud je u textového řetězce tato možnost, pak se další tvary zapisují pomocí:
msgid "%i of %i node selected; %s. %s." msgid_plural "%i of %i nodes selected; %s. %s." msgstr[0] "Je vybrán %i z %i uzlu; %s. %s." msgstr[1] "Jsou vybrány %i z %i uzlů; %s. %s." msgstr[2] "Je vybráno %i z %i uzlů; %s. %s.Oba ukázkové kódy pochází z cs.po pro Inkscape. U nových verzí aplikací poEdit nebo gTranslator se. pokud je v hlavičce katalogu správný záznam a řetězec obsahuje předchozí kód. zobrazí v překladovém poli místa kam lze zapsat jednotlivé varianty(gTranslator to zobrazí jako samostatné okno).
Ad plural V tomto pripade veta obsahuje dve cislovky a rozhoduje se podle prvni. Je mozne se ridit podle druhe (nebo podle vsech)?
Cislo, podle ktereho se to urcuje je definovano v kodu programu:
printf ( ngettext ("Found %d file.", "Found %d files.", nbr_of_files), nbr_of_files );
Už chápem
Generovanie som preskočil a nechal do druhej časti. Nie je to úplne easy proces. V tejto časti som predpokladal získanie po súboru buď premenovaním pot šablóny (ak ide o nový preklad) alebo premenovaním z iného jazyka, čo nie je úplne kóšer prístup, ale funguje
Inak generovanie je možné spraviť priamo zo zdrojákov pomocou príkazov: xgettext -f ./po/POTFILES.in -o ./po/messages.po
a msginit
. Viac bude popísané v ďalšej časti alebo manuále gettextu.
`xgettext' creates a file named `DOMAINNAME.po'. You should then rename it to `DOMAINNAME.pot'. (Why doesn't `xgettext' create it under the name `DOMAINNAME.pot' right away? The answer is: for historical reasons. When `xgettext' was specified, the distinction between a PO file and PO file template was fuzzy, and the suffix `.pot' wasn't in use at that time.)Takze tam zadny syntakticky rozdil neni. Mimochodem kdyz dostanete novou verzi programu, tak v ni je obvykle stary prelozeny PO soubor a novy POT vygenerovany ze zdrojaku bez prekladu (vcetne nevyplnene hlavicky (msgid "")). Takze pouzitim msgmerge PO POT >new.po elegentane vytvorite novy PO, ktery si vezme to potrebne z obou souboru.
POEdit - multiplatformový po editor.