abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:55 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2026. Na programu je celá řada zajímavých přednášek a workshopů. Vstup na konferenci je zcela zdarma, bez nutnosti registrace. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 1
    dnes 05:22 | Komunita

    Mozilla a společnost Mila oznámily strategické partnerství za účelem rozvoje open source a suverénní AI. Cílem je ukázat, že open source AI může konkurovat uzavřeným systémům. Obě organizace chtějí posílit technologickou suverenitu a snížit závislost na hrstce velkých technologických firem.

    Ladislav Hagara | Komentářů: 1
    dnes 04:00 | Humor

    Adam Rice předvedl, že pomocí DNS lze distribuovat a spustit kompletní hru DOOM. Rozdělil WAD soubory a binárky do téměř 2000 DNS záznamů v Cloudflare zóně (jeden TXT záznam v DNS může nést okolo 2000 znaků textu). Ty pak stáhl PowerShellem, dekomprimoval a spustil přímo v paměti počítače bez nutnosti zápisu na disk, což prakticky dokazuje, že DNS může sloužit jako distribuované úložiště dat a možný kanál pro načítání kódu. Repozitář projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 1
    včera 13:00 | Komunita

    Dnes a zítra probíhají Arduino Days 2026. Na programu je řada zajímavých přednášek. Sledovat je lze od 17:00 na YouTube. Zúčastnit se lze i lokálních akcí. Dnes v Poličce v městské knihovně a zítra v Praze na Matfyzu.

    Ladislav Hagara | Komentářů: 3
    včera 12:11 | Nová verze

    Byla vydána beta verze Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.04 LTS mělo vyjít 23. dubna 2026.

    Ladislav Hagara | Komentářů: 1
    včera 02:22 | Komunita Ladislav Hagara | Komentářů: 8
    26.3. 23:22 | Komunita

    Ubuntu plánuje v budoucích verzích nahradit tradiční nástroje pro synchronizaci času (chrony, linuxptp a gpsd) novým, v Rustu napsaným ntpd-rs, který nabídne vyšší bezpečnost a stabilitu.

    Ladislav Hagara | Komentářů: 3
    26.3. 22:33 | Nová verze

    Byla vydána nová verze 7.6 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Správce hesel KeePassXC byl nahrazen správcem hesel GNOME Secrets. Bitcoinová peněženka Electrum byla povýšena na verzi 4.7.0. Tor Browser byl povýšen na verzi 15.0.8. Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 1
    26.3. 11:33 | Zajímavý článek

    Chris Down v obsáhlém článku „vyvrací mýty o zswap a zram“, vysvětluje, co vlastně dělají a jaké jsou mezi nimi rozdíly. Doporučuje vyhýbat se zram na serveru a bez OOM.

    |🇵🇸 | Komentářů: 1
    26.3. 11:22 | IT novinky

    Porota v Los Angeles shledala firmy Google a Meta odpovědnými v přelomovém soudním sporu, který se týká závislosti na sociálních sítích; firmy musí zaplatit odškodné tři miliony dolarů (63,4 milionu Kč). Společnosti, které s verdiktem nesouhlasí, čelily obvinění, že své sociální sítě a platformy záměrně navrhly tak, aby si na nich děti vypěstovaly závislost. Porota došla k závěru, že technologické společnosti při navrhování a

    … více »
    Ladislav Hagara | Komentářů: 14
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1165 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: Python a gettext

    21.8.2005 17:19 trancelius | skóre: 22
    Python a gettext
    Přečteno: 199×
    Zdravím, Ve svým programu mám dejme tomu print _("Hello "+green("world")) a chtěl bych, aby v gettext katalogu bylo jen
    msgid "Hello world"
    msgstr "Nazdar světe"
    Je to nějak možný ? Takhle mám obarveno celkem dost stringů...

    Odpovědi

    21.8.2005 17:33 Pinky | skóre: 30
    Rozbalit Rozbalit vše Re: Python a gettext
    Myslím že to nejde. Musel by jsi z toho udělat jeden řetězec který by třeba obsahoval speciální řídící znaky které by ti text obarvyli (jestli tohle jde to nevím)
    21.8.2005 17:41 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Šlo by to nějak takhle:
    print _("Hello %s") %("world")
    ... ale pak by "world" nebylo lokalizovaný, pokud bych ho nedal do katalogu taky... budu muset udělat nějakej kompromis, něco jako obarvovat pouze příkazy, switche atd :)
    21.8.2005 17:44 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Oprava:
    print _("Hello %s") %(green("world"))
    21.8.2005 17:47 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Python a gettext
    Touto cestou se nevydávej, jen bys zadělával překladatelům (a sobě) na problémy.
    21.8.2005 17:46 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Python a gettext
    Ne, to nejde a navíc je tohle skládání stringů po kouskách přesně to, co se v manuálu gettextu důrazně nedoporučuje. Když bude v jiném jazyce zapotřebí jiný slovosled (tj. něco jako Světe, nazdar!), tak jsi vyrobil nepřeložitelnou hlášku. Kromě toho rozkouskování citelně zvyšuje počty řetězců, které jsou stejné v angličtině, ale musejí se překládat různě do jiných jazyků (světe vs. svět), takže vyžadují zjednoznačující prefixy, sgettext(), etc.

    Správný postup je používat nějaký markup:
    print _(colorize("Hello <green>world</green>"))
    takže překladatel pak má k překladu celou hlášku a markup zachová. Přičemž _(colorize(...)) může klidně být jedna funkce.
    21.8.2005 18:21 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Aha, takže něco jako
    def colorize(text):
    	return text.replace("<green>", "[zelená]").replace("</green>", "[/zelená]")
    
    kde to v těch [ ] jsou escape sekvence daných barev... ?
    Ku8aZ avatar 21.8.2005 18:43 Ku8aZ | skóre: 17
    Rozbalit Rozbalit vše Re: Python a gettext
    Řekl bych, že Yeti spíš myslel v řetězcích TAGy ponechávat a funkce colorize by provedla parsování těchto řetězců a podle tagů by volala příslušné funkce - čili asi něco jako HTML.
    Čeho se vlastně člověk bojí, když se bojí tmy...? jabber: ku8az AT jabbim.cz
    21.8.2005 18:52 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Nebo tak ... to už je detail. Mě připadá jednodušší udělat slovník, kterej pak parser nasází do stringu, něco jako barvy = { '<green>': '\escape sekvence zelené', ... atd }
    21.8.2005 19:47 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Python a gettext
    Takhle by to moc nefungovalo.
    print colorize(_("Hello <green>world</green>"))
    
    je lepší.

    colorize() může klidně vypadat jako jednoduché nahrazení <green> -> \e[32m, </green> -> \e[0m, etc. (raději ovšem podle termcapu).
    21.8.2005 20:59 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Tak... tohle je výplod mé fantazie a asi je to totální slátanina, ale nic lepšího mě nenapadá :D
    def colordict(text):
    	escapes = {
    	'<Cg>': '\x1b[32;01m',
    	'<Cy>': '\x1b[33;01m',
    	'<Cr>': '\x1b[31;01m',
    	'<Cb>': '\x1b[34;01m',
    	'<CB>': '\x1b[01m',
    	'<C/>': '\x1b[39;49;00m'
    	}
    	return escapes[text.group()]
    
    def outform(text):
    	p = re.compile(r'<C.>')
    	return p.sub(colordict, text)
    
    print outform("Něco <Cr>červenýho<C/>...")
    
    22.8.2005 09:40 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Python a gettext
    Ráno moudřejší večera, takhle je to hezčí...
    colortags = {
    '<Cg>': '\x1b[32m',
    '<Cy>': '\x1b[33;01m',
    '<Cr>': '\x1b[31;01m',
    '<Cb>': '\x1b[34;01m',
    '<CB>': '\x1b[01m',
    '<C/>': '\x1b[39;49;00m'
    }
    
    def style(text):
    	return re.compile('<C.>').sub(lambda text: colortags[text.group()], text)
    Slovník s tagy se definuje jen jednou a je to prakticky v jedné funkci :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.