Maurits van Rees a écrit :
Hi,

zope/app/locales/TRANSLATE.txt says:

  ...
  After that, you need to merge those changes to all existing
  translations.  You can do that by executing the ``i18nmergeall.py``
  script from the ``utilities`` directory of your Zope 3 checkout:

    $ python utilities/i18nmergeall.py -l src/zope/app/locales

So I tried that and found that in the 13 po files that are present,
over 80 thousand lines were changed (counting all lines in an svn
diff).  Since the files combined have about 100 thousand lines, this
could be called a fairly big change. :)

So: is there a reason this merging is not regularly done anymore?  Or
can I just go ahead and submit those 80 thousand lines?

It seems too big, that's weird.
I think merging is not really done, and there are several changes to do for 
i18n:

- split the "zope" gettext domain into all the separate namespaces. Maybe only zope.app.* packages can be kept under the "zope.app" domain.

- find a way to generate the .pot and .mo files at build. They should not be stored in the svn. We should only have the translated .po files, and the merging and compiling should be done during build. Maybe the .pot file could be also stored but this is not really necessary.

- add an automatic test in each package to check whether the .po files have been merged by the developer. If a po file is not in sync with the code, the test fails. This would allow all the .po files to be always up to date.

Christophe



Perhaps the zope.pot file should also be updated.  I get an error when
trying that though.  This is in a checkout of
svn.zope.org/repos/main/Zope3/trunk, with 'make' and 'make inplace'
executed as they seemed necessary and with the Zope3/src/ dir on my
PYTHONPATH:

[EMAIL PROTECTED]:~/svn/Zope3 $ python2.4 utilities/i18nextract.py -d zope -p 
src/zope -o app/locales
base path: '/home/maurits/svn/Zope3/'
search path: /home/maurits/svn/Zope3/src/zope
'site.zcml' location: None
exclude dirs: []
domain: 'zope'
include default domain: True
output file: '/home/maurits/svn/Zope3/src/zope/app/locales/zope.pot'
Python only: False
Traceback (most recent call last):
  File "utilities/i18nextract.py", line 175, in ?
    main()
  File "utilities/i18nextract.py", line 163, in main
    maker.add(zcml_strings(path, domain, site_zcml), base_dir)
  File "/home/maurits/svn/Zope3/src/zope/app/locales/extract.py", line 441, in 
zcml_strings
    context = config(site_zcml, features=("devmode",), execute=False)
  File "/home/maurits/svn/Zope3/src/zope/app/appsetup/appsetup.py", line 111, 
in config
    context = xmlconfig.file(file, context=context, execute=execute)
  File "/home/maurits/svn/Zope3/src/zope/configuration/xmlconfig.py", line 610, 
in file
    include(context, name, package)
  File "/home/maurits/svn/Zope3/src/zope/configuration/xmlconfig.py", line 539, 
in include
    f = openInOrPlain(path)
  File "/home/maurits/svn/Zope3/src/zope/configuration/xmlconfig.py", line 427, 
in openInOrPlain
    fp = open(filename)
IOError: [Errno 2] No such file or directory: 
'/home/maurits/svn/Zope3/configure.zcml'


Ah, pointing the script at site.zcml helps:

[EMAIL PROTECTED]:~/svn/Zope3 $ python2.4 utilities/i18nextract.py -s site.zcml 
-d zope -p src/zope -o app/locales

Then about a thousand lines are changed in the zope.pot file.  So
apparently this is also not done every day. :-) Is it okay to commit
those changes as well (and merge those changes to the po files of
course)?

Should i18nextract.py be run with Zope3 trunk or with branches/3.4?
It may very well be that the number of changes are far less big when
run inside that branch.

Internationally yours,


_______________________________________________
Zope-Dev maillist  -  Zope-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )

Reply via email to