UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.3. Současně oznámila, že nadcházející větší vydání 24.04-2.0 bude mít modernější webový prohlížeč.
Ploopy po DIY trackballech či sluchátkách představuje nový externí DIY trackpoint se čtyřmi tlačítky Bean. Obsahuje snímač Texas Instruments TMAG5273, spínače Omron D2LS-21 a řadič RP2040, používá firmware QMK. Schémata jsou na GitHubu; sadu lze předobjednat za 69 kanadských dolarů (bez dopravy a DPH).
Mozilla před dvěma týdny na svém blogu oznámila, že díky Claude Mythos Preview bylo ve Firefoxu nalezeno a opraveno 271 bezpečnostních chyb. Včera vyšel na Mozilla Hacks článek s podrobnějšími informacemi. Z 271 bezpečnostních chyb mělo 180 chyb vysokou závažnost, 80 chyb střední závažnost a 11 chyb nízkou závažnost. Celkově bylo v dubnu ve Firefoxu opraveno 423 bezpečnostních chyb. Čísla CVE nemusí být přiřazována jednotlivým chybám. CVE-2026-6784 například představuje 154 bezpečnostních chyb.
Před týdnem zranitelnost Copy Fail. Dnes zranitelnost Dirty Frag. Běžný uživatel může na Linuxu získat práva roota (lokální eskalaci práv). Na většině linuxových distribucí vydaných od roku 2017. Aktuálně bez oficiální záplaty a CVE čísla [oss-security mailing list].
Ačkoli je papež Lev XIV. hlavou katolické církve a stojí v čele více než miliardy věřících po celém světě, také on někdy řeší všední potíže. A kdo v životě neměl problémy se zákaznickou linkou? Krátce poté, co nastoupil do úřadu, musel papež se svou bankou řešit změnu údajů. Operátorka ale nechtěla uvěřit, s kým mluví, a Svatému otci zavěsila.
Incus, komunitní fork nástroje pro správu kontejnerů LXD, byl vydán ve verzi 7.0 LTS (YouTube). Stejně tak související LXC a LXCFS.
Google Chrome 148 byl prohlášen za stabilní. Nejnovější stabilní verze 148.0.7778.96 přináší řadu novinek z hlediska uživatelů i vývojářů. Vypíchnout lze Prompt API (demo) pro přímý přístup k AI v zařízení. Podrobný přehled v poznámkách k vydání. Opraveno bylo 127 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Richard Hughes oznámil, že po společnostech Red Hat a Framework a organizacích OSFF a Linux Foundation, službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzorují také společnosti Dell a Lenovo. Do dnešního dne bylo díky LVFS provedeno více než 145 milionů aktualizací firmwarů od více než 100 různých výrobců na milionech linuxových zařízení.
Americké technologické společnosti Microsoft, Google a xAI souhlasily, že vládě Spojených států poskytnou přístup k novým modelům umělé inteligence (AI) před jejich uvedením na trh. Oznámila to americká vláda, která tak bude moci prověřit, zda modely nepředstavují hrozbu pro národní bezpečnost. Oznámení podtrhuje rostoucí obavy Washingtonu z rizik spojených s výkonnými AI systémy. Americké úřady chtějí v rámci předběžného přístupu
… více »Společnost Valve zveřejnila (GitLab) nákresy ovladače Steam Controller a puku. Pro všechny, kdo by jej chtěli hacknout nebo modifikovat, případně pro ně navrhnout nějaké příslušenství. Pod licencí Creative Commons (CC BY-NC-SA 4.0).
#include <stdio.h>
#include <wchar.h>
#include <locale.h>
int main() {
setlocale(LC_ALL,"");
wchar_t myChar1 = L'Ω';
wchar_t myChar2 = 0x2126; // hexadecimal encoding of char Ω using UTF-16
wchar_t myChar3 = L'\xe2\x84\xa6';
wprintf(L"%lc \n", myChar1);
wprintf(L"%lc \n", myChar2);
wprintf(L"%lc \n", myChar3);
return 0;
}
Zdroják je na disku uložen v souboru jako UTF-8, tj. znak 'Ω' je v něm jako 0xe2 0x84 0xa6. Ovšem pokud ho chci zapsat v C jako posloupnost bytů tak musím přes UTF-16 (\u2126), já bych ho chtěl ale zapsat jako UTF-8, jako posloupnost těch 3 bytů myChar3.
Z mého pohledu se hodnota u myChar1 a myChar3 zdá stejná (jen trochu jinak zapsaná), ale ve výsledku není, poslední wprintf vypíše znak '¦', tj. \u00a6 neboli UTF-8 0xC2 0xA6.
No jsem z toho nějakej zblblej, používám gcc version 4.6.1 20110908 a glibc-2.14-5.x86_64 :D
Když si v bashi dám echo -e "\xe2\x84\xa6\u2126", tak to na obrazovku normálně vypíše ΩΩ.
wchar_t není UTF-8.
UTF-8 je representace znaků Unicode pomocí různě dlouhých sekvencí bajtů.
wchar_t je nějaký blíže nespecifikovaný platformově závislý vícebytový typ v C. Na MS Windows 16bitový integer (representující UCS-2), na Unixu spíš 32bitový integer (representující UCS-4), taky to ale klidně může být něco ještě podivnějšího, a Unicode Consortium nedoporučuje to používat kvůli přenositelnosti.
Takže běžnější (alespoň na Uninxu; na MS Windows platformová závislost málokoho trápí, když jejich veškerá platforma je MS Windows) je represntovat Unicode řetězce pomocí char v UTF-8, přičemž potom samozřejmě je rozdíl mezi znaky a bajty, protože znak může být více bajtů. Tvoje oblíbená knihovna/framework určitě má funkce pro práci s UTF-8 kódovanými řetězci, tudíž zapisuješ zdroják přímo v UTF-8 (vyžaduje, aby 8bitové znaky bral kompilátor, dnes už nebývá problém) a používáš příslušné UTF-8 (ne wide-char!) funkce.
mbsrtowcs() a wcsrtombs(), v C++ se přiřadí locale I/O streamu (metoda imbue()).
char * v UTF-8 – tak jak to dostaneš, tak to vypíšeš.
Řešit to musíš až v okamžiku, kdy tě zajímá, kolik místa to zabere na obrazovce (strlen() nestačí) nebo pokud chceš seřadit seznam (strcmp() nestačí), případně zkracovat řetězce (abys nerozpůlil znak).
Tiskni
Sdílej: