Forum » Programiranje » [Python] Locaklizacija
[Python] Locaklizacija
drola ::
Imam en hud problem z uporabo gettexta v Pythonu. Izdelal sem eno aplikacijo, ki na Linuxu brez težav dostopa do prevedenih nizov v .mo datotekah. V Windows okolju pa vse ostane v angleščini. Potem sem odprl še Python terminal in poskusil neposredno s funkcijo gettext.find preveriti ali najde .mo datoteko. Tole je izspis iz Linuxa:
drola@matjaz:~/py/pyslovar$ python
Python 2.4.1 (#1, Apr 10 2005, 22:30:36)
[GCC 3.3.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gettext
>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')
'sl_SI'
>>> gettext.find('python')
>>> gettext.find('pyslovar', './share/locale/')
'./share/locale/sl_SI/LC_MESSAGES/pyslovar.mo'
>>>
Na Windows XP SP2 pa enaki ukazi te datoteke ne najdejo (gettext.find(...) je ne izpiše). Tam tudi že vrstica 'locale.setlocale(locale.LC_ALL, '')' vrne 'Slovenian_Slovenia.cp1250'.
Podobne probleme sem zasledil že na drugih mailing listah, vendar pa nikjer odgovora. Kaj naj storim?
drola@matjaz:~/py/pyslovar$ python
Python 2.4.1 (#1, Apr 10 2005, 22:30:36)
[GCC 3.3.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gettext
>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')
'sl_SI'
>>> gettext.find('python')
>>> gettext.find('pyslovar', './share/locale/')
'./share/locale/sl_SI/LC_MESSAGES/pyslovar.mo'
>>>
Na Windows XP SP2 pa enaki ukazi te datoteke ne najdejo (gettext.find(...) je ne izpiše). Tam tudi že vrstica 'locale.setlocale(locale.LC_ALL, '')' vrne 'Slovenian_Slovenia.cp1250'.
Podobne probleme sem zasledil že na drugih mailing listah, vendar pa nikjer odgovora. Kaj naj storim?
https://drola.si
krho ::
Nažalost boš moral za polkna nekoliko potolovaditi. M$ je nekaj posebnega kot vedno...
MSDN link
CountryName: array[0..4] of char;
LanguageName: array[0..4] of char;
works: boolean;
begin
// The return value of GetLocaleInfo is compared with 3 = 2 characters and a zero
works := 3 = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SISO639LANGNAME, LanguageName, SizeOf(LanguageName));
works := works and (3 = GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SISO3166CTRYNAME, CountryName,
SizeOf(CountryName)));
if works then begin
// Windows 98, Me, NT4, 2000, XP and newer
LangCode := PChar(@LanguageName[0]);
if lowercase(LangCode)='no' then LangCode:='nb';
LangCode:=LangCode + '_' + PChar(@CountryName[0]);
end;
MSDN link
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
krho ::
Poglej Python Win32 Extensions, če ne boš moral nekoga prositi, da ti napiše modul v Cju.
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | Java - sortiranjeOddelek: Programiranje | 1288 (1074) | rrejc |
| » | [Linux] Sprememba oznake valuteOddelek: Operacijski sistemi | 1328 (1208) | root |
| » | šumniki v konzoli v gentoo linuxOddelek: Operacijski sistemi | 3364 (3005) | Juventus |
| » | digest verification failed in gentooOddelek: Operacijski sistemi | 1191 (1119) | Senzacionale |
| » | Funkcija za zapret programOddelek: Programiranje | 1446 (1202) | StratOS |