diff options
Diffstat (limited to 'locale/generate_locale.py')
-rw-r--r-- | locale/generate_locale.py | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/locale/generate_locale.py b/locale/generate_locale.py new file mode 100644 index 000000000..737ba7a85 --- /dev/null +++ b/locale/generate_locale.py @@ -0,0 +1,121 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +from os import walk, remove +from os.path import join +from subprocess import call + +###### Core + +EXCLUDE = ["BeautifulSoup.py", "module/gui", "web/locale", "web/ajax", "web/cnl", "web/pyload", "setup.py"] +print "Generate core.pot" + +f = open("includes.txt", "wb") +f.write("./pyLoadCore.py\n") + +for path, dir, filenames in walk("./module"): + if [True for x in EXCLUDE if x in path]: continue + for file in filenames: + if file.endswith(".py") and file not in EXCLUDE: + f.write(join(path, file) + "\n") + +f.close() + +call(["xgettext", "--files-from=includes.txt", "--default-domain=core", "--from-code=utf-8", + "--copyright-holder=pyLoad Team", "--package-name=pyLoad", "--package-version=0.4","--msgid-bugs-address='bugs@pyload.org'"]) + + +f = open("core.po", "rb") +content = f.read() +f.close() +remove("core.po") +content = content.replace("charset=CHARSET", "charset=UTF-8") + +f = open("locale/core.pot", "wb") +f.write(content) +f.close() + +########## GUI + +print "Generate gui.pot" + +EXCLUDE = [] + +f = open("includes.txt", "wb") +f.write("./pyLoadGui.py\n") + +for path, dir, filenames in walk("./module/gui"): + if [True for x in EXCLUDE if x in path]: continue + for file in filenames: + if file.endswith(".py") and file not in EXCLUDE: + f.write(join(path, file) + "\n") + +f.close() + +call(["xgettext", "--files-from=includes.txt", "--default-domain=gui", "--from-code=utf-8", + "--copyright-holder=pyLoad Team", "--package-name=pyLoad", "--package-version=0.4","--msgid-bugs-address='bugs@pyload.org'"]) + + +f = open("gui.po", "rb") +content = f.read() +f.close() +remove("gui.po") +content = content.replace("charset=CHARSET", "charset=UTF-8") + +f = open("locale/gui.pot", "wb") +f.write(content) +f.close() + + +###### CLI + +print "Generate cli.pot" + +f = open("includes.txt", "wb") +f.write("./pyLoadCli.py\n") +f.close() + +call(["xgettext", "--files-from=includes.txt", "--default-domain=cli", "--from-code=utf-8", + "--copyright-holder=pyLoad Team", "--package-name=pyLoad", "--package-version=0.4","--msgid-bugs-address='bugs@pyload.org'"]) + + +f = open("cli.po", "rb") +content = f.read() +f.close() +remove("cli.po") +content = content.replace("charset=CHARSET", "charset=UTF-8") + +f = open("locale/cli.pot", "wb") +f.write(content) +f.close() + +###### Setup + +print "Generate setup.pot" + +f = open("includes.txt", "wb") +f.write("./module/setup.py\n") +f.close() + +call(["xgettext", "--files-from=includes.txt", "--default-domain=setup", "--from-code=utf-8", + "--copyright-holder=pyLoad Team", "--package-name=pyLoad", "--package-version=0.4","--msgid-bugs-address='bugs@pyload.org'"]) + + +f = open("setup.po", "rb") +content = f.read() +f.close() +remove("setup.po") +content = content.replace("charset=CHARSET", "charset=UTF-8") + +f = open("locale/setup.pot", "wb") +f.write(content) +f.close() + +### Web + +print "TODO: Generate django.po with python manage.py makemessages --all --locale en" + +call(["mv", "./module/web/locale/en/LC_MESSAGES/django.po", "./locale/django.pot"]) + +print +print "All finished."
\ No newline at end of file |