On Wed, 22 Mar 2006 17:41:14 +0100 "francois schnell" <[EMAIL PROTECTED]> wrote:
> Hello all, > > I wish to translate a Python script from English to French. I've read the > offical documentation (python.org doc) but I must admit that I'm lost now > ... > I've found some simple explanations here but I can't make it work: > http://karrigell.sourceforge.net/en/internationalization.htm > > Here's where I'm stuck: > > Let's imagine my app is: myapp.py > -- > import gettext > _ = gettext.gettext > > print _("hello friends") > print _("Bye Bye") > --- > > Here are my folders on a windows box: > > C:\myappfolder\ > -----------------------\Translations\francais\LC_MESSAGES > > My myapp.py is in myappfolder > > In this folder I've used pygettext.py to produce a messages.pot file => I > add the translation in it => I have a messages.po file. > I then used msgfmt.py to produce messages.mo file. > > I then copied messages.po and messages.mo in LC_MESSAGES folder > C:\myappfolder\ > -----------------------\Translations\francais\LC_MESSAGES > > I now come back to myapp.py and add two lines: > > --- > import gettext > _ = gettext.gettext > > t=gettext.translation("messages","c:\myappfolder\Translations","francais") > t.install() > > print _("hello friends") > print _("Bye Bye") > --- > > When I do that Python anwers: > > >>> > Traceback (most recent call last): > File "C:\myappfolder\myapp.py", line 4, in ? > t=gettext.translation > ("messages","c:\myappfolder\Translations","francais") > File "C:\Python24\lib\gettext.py", line 456, in translation > raise IOError(ENOENT, 'No translation file found for domain', domain) > IOError: [Errno 2] No translation file found for domain: 'messages' > >>> > Hi Francois, not sure if it is different on windows, on linux I simply do: import gettext gettext.install(domain, localedir) to install _() into my application's global namespace, where localedir in your case was "c:\myappfolder\Translations". The path that contains the french translation should be "..\fr\LC_MESSAGES" instead of "..\francais\LC_MESSAGES" I think (at least that is true on linux). I hope this helps Michael _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor