[python] unicode v prikazove radce Windows

Martin Lisiak4 na seznam.cz
Čtvrtek Srpen 30 16:33:54 CEST 2012


Dobrý den,

Chci se zeptat, bylo by fajn, kdybych uměl tisknout v příkazové řádce Windows některé unicode znaky. Jde něco takového? Jedná se mi o unicode znaky 1/4 a 3/4 výplně čtverce a celého čtverce (unicode: 2596, 2597, 2598, 259D, 2599, 259B, 259C, 259F, 2588) Možná bych použil i nějaké jiné znaky no tyhle bych potřeboval určitě. Zatím to mám vyřešené, že v příkazové řádce Windows každý znak zobrazuji pomocí kódovaní cp852 spojením dvou znaků. Pokud to nepude vyřešit v příkazové řádce (bez GUI), tak bych zůstal u současného řešení.

unicode znaky, které potřebuji zobrazit jsou například tady:

http://unicode.org/charts/PDF/U2580.pdf

Zatím vím, že v příkazové řádce pomocí: chcp 65001 si aktivuji unicode (kódovaní: utf_8). 65001 asi neumožnuje plnou podporu unicode.

Když mám tedy:

# -*- coding: utf_8 -*-

print u"\u2599".encode("utf_8")

dám skript do exe pomocí py2exe, spustím si příkazovou řádku Windows, kde zadám: chcp 65001, ve vlastnostech pro písmo vyberu LUCIDA CONSOLE a spustím si exe soubor, nezobrazí se mi správný znak. Dělám něco špatně? Popřípade nejde dosáhnout v príkazové řádce zobrazení daných znaků? Používám Python 2.7.2 a Windows Vistu. Na Python.org je již informace, že v Pythone 3.3 bude zavedeno nové kódovaní cp65001. Nevým jestli tohle bude řešit daný problém.

Lisiak4


Další informace o konferenci Python