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 15:55 | Zajímavý projekt

Vyzkoušet si příkazy a vyřešit několik úkolů lze na stránkách Commandline Challenge (CMD Challenge). Úkoly lze řešit různými způsoby, důležitý je výsledek. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

Ladislav Hagara | Komentářů: 3
včera 17:35 | Bezpečnostní upozornění

Německá Bundesnetzagentur (obdoba českého ČTU) zakázala na německém území prodej panenky Cayla kvůli „špionáži“ dětí. Tato elektronická hračka obsahuje mikrofon, reproduktor a kameru a bezdrátové komunikační rozhraní, pomocí kterého se hračka připojuje na servery výrobce. Takovýmto způsobem může hračka pomocí umělé inteligence „odpovídat“ na dotazy dítěte. Hlavní problém bude ale asi někde jinde, podle prvotních zpráv může

… více »
Petr Tomášek | Komentářů: 24
17.2. 15:30 | Bezpečnostní upozornění

CSIRT.CZ upozorňuje, že bezpečnostní experti objevili nový typ malwaru, jenž cílí na open source e-commerce platformu Magento. Malware je zajímavý tím, že se jedná o první svého druhu, jehož kód zůstává skrytý v SQL databázi zasaženého e-shopu. Škodlivý kód je volán pomocí tzv. SQL trigerru, který je spouštěn při každém vytvoření objednávky v systému.

Ladislav Hagara | Komentářů: 1
17.2. 09:00 | Nová verze

Bylo vydáno Ubuntu 16.04.2 LTS, tj. druhé opravné vydání Ubuntu 16.04 LTS s kódovým názvem Xenial Xerus. Přehled novinek v poznámkách k vydání a v přehledu změn.

Ladislav Hagara | Komentářů: 42
17.2. 06:00 | Zajímavý článek

Pavel Tišnovský se v dvoudílném článku na MojeFedora.cz věnuje tvorbě pluginů (modulů) pro bitmapový grafický editor GIMP. Pomocí pluginů lze GIMP rozšiřovat o další funkce. Implementovat lze například nové filtry nebo pomocné utility pro tvorbu animací či poloautomatickou retuš snímků.

Ladislav Hagara | Komentářů: 6
16.2. 23:32 | Komunita

Do 30. března se lze přihlásit do dalšího kola programu Outreachy, jehož cílem je přitáhnout do světa svobodného a otevřeného softwaru lidi ze skupin, jež jsou ve světě svobodného a otevřeného softwaru málo zastoupeny. Za 3 měsíce práce, od 30. května do 30. srpna 2017, v participujících organizacích lze vydělat 5 500 USD. Jedná se již o 14. kolo tohoto programu.

Ladislav Hagara | Komentářů: 11
16.2. 23:13 | Nová verze

Byla vydána verze 0.92.1 svobodného multiplatformního vektorového grafického editoru Inkscape. Přehled novinek v poznámkách k vydání. Řešen je mimo jiné problém s verzí 0.92, jež rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Více v příspěvku na blogu Davida Revoye, autora open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu.

Ladislav Hagara | Komentářů: 0
16.2. 16:26 | Bezpečnostní upozornění

Byla vydána verze 1.1.0e kryptografické knihovny OpenSSL. Dle bezpečnostního upozornění 20170216 byla opravena závažná bezpečnostní chyba CVE-2017-3733.

Ladislav Hagara | Komentářů: 1
16.2. 13:03 | Pozvánky

GNOME hackaton proběhne v Brně na FIT VUT v Red Hat Labu (budova Q) v pondělí 20. února od 15:00. Registrace není nutná, ale pokud dáte na FaceBooku vědět, že plánujete dorazit, pomůže to s plánováním.

Ladislav Hagara | Komentářů: 0
16.2. 13:02 | Pozvánky

Únorový Prague Containers Meetup se koná 21. února v budově MSD. Můžete se těšit na přednášky o tom, proč a jak používat kontejnery a zároveň získat zajímavý pohled na historii a budoucnost kontejnerů.

little-drunk-jesus | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 656 hlasů
 Komentářů: 52, poslední 13.2. 12:45
Rozcestník
Reklama

Dotaz: Python a gettext

21.8.2005 17:19 trancelius | skóre: 22
Python a gettext
Přečteno: 118×
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.