[imp] improved i18n to scan all files

bzr revid: nicolas.vanhoren@openerp.com-20110817112828-tghtfms3zm3r0044
This commit is contained in:
niv-openerp 2011-08-17 13:28:28 +02:00
parent 6bf354e880
commit 4d12385eab
12 changed files with 604 additions and 27 deletions

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -30,3 +30,453 @@ msgstr ""
msgid "<em>   Create and Edit...</em>"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "x"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "#{title}"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "#{text}"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Powered by"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "openerp.com"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Loading..."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Create"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Drop"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Backup"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Restore"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Password"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Back to Login"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "CREATE DATABASE"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Master password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "New database name:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Load Demonstration data:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Default language:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Admin password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Confirm password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "DROP DATABASE"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Database:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Master Password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "BACKUP DATABASE"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "RESTORE DATABASE"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "File:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "CHANGE MASTER PASSWORD"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "New master password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Confirm new master password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "User:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Password:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Database"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Login"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Bad username or password"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ""
"We think that daily job activities can be more intuitive, efficient, "
"automated, .. and even fun."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "OpenERP's vision to be:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Full featured"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ""
"Today's enterprise challenges are multiple. We provide one module for "
"each need."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Open Source"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ""
"To Build a great product, we rely on the knowledge of thousands of "
"contributors."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "User Friendly"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "In order to be productive, people need clean and easy to use interface."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "-"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "rpc_session_id:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "1"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "LOGOUT"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "h3"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "<"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ">"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "</"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "h4"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Delete"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "First"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Last"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "♻"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "xml"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save & Edit"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Create & Edit"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "New"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "<<"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "0"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "/"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ">>"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Add"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Unhandled widget"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "?"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ":"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Open..."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Create..."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Search..."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "One2Many widget"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Uploading ..."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Select"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save As"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Clear"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Advanced Filter"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "-- Filters --"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "-- Actions --"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save Filter"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Manage Filters"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Filter Name:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "(Any existing filter with the same name will be replaced)"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "(?)"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Any of the following conditions must match"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "All the following conditions must match"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "None of the following conditions must match"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Add condition"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "and"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Cancel"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save & New"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save & Close"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Export"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid ""
"This wizard will export all data that matches the current search criteria"
" to a CSV file.\n"
" You can export all data or only the fields that can be "
"reimported after modification."
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Export Type:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Import Compatible Export"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Export all Data"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Export Format"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "CSV"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Excel"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Available fields"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Fields to export"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save fields list"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Remove"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Remove All"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Name"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "&nbsp;"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Save as:"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Ok"
msgstr ""
#: addons/base/static/src/xml/base.xml:0
msgid "Saved exports:"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,3 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
#: addons/base_calendar/static/src/xml/base_calendar.xml:0
msgid "&nbsp;"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,3 +17,31 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "Reset"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "Undo"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "Add Widget"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "Change layout"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "Choose dashboard layout"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "progress:"
msgstr ""
#: addons/base_dashboard/static/src/xml/base_dashboard.xml:0
msgid "%"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,3 +17,25 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
#: addons/base_default_home/static/src/xml/base_default_home.xml:0
msgid "Welcome to OpenERP"
msgstr ""
#: addons/base_default_home/static/src/xml/base_default_home.xml:0
msgid ""
"Don't forget to bookmark your application address to come back\n"
" later:"
msgstr ""
#: addons/base_default_home/static/src/xml/base_default_home.xml:0
msgid "URL:"
msgstr ""
#: addons/base_default_home/static/src/xml/base_default_home.xml:0
msgid "login:"
msgstr ""
#: addons/base_default_home/static/src/xml/base_default_home.xml:0
msgid "Install"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2011-08-16 15:47+0200\n"
"POT-Creation-Date: 2011-08-17 13:28+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,3 +17,55 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "OpenERP"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Home"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Database:"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Choose Database..."
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Login:"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Password:"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Login"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid ":"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Shortcuts"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Menu"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Options"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Logout"
msgstr ""
#: addons/web_mobile/static/src/xml/web_mobile.xml:0
msgid "Preferences"
msgstr ""

View File

@ -1,6 +1,8 @@
[extractors]
qweb = npybabel:extract_qweb
xmljs = npybabel:extract_xmljs
[javascript: static/src/js/**.js]
[qweb: static/src/xml/**.xml]
[xmljs: static/src/xml/**.xml]

View File

@ -5,15 +5,30 @@ import sys
from pkg_resources import load_entry_point
import re
import json
import xml.etree.ElementTree as elt
if __name__ == '__main__':
sys.exit(
load_entry_point('Babel==0.9.6', 'console_scripts', 'pybabel')()
)
QWEB_EXPR = re.compile(r"""(?:\< *t\-tr *\>(.*?)\< *\/t\-tr *\>)|(?:\_t *\( *((?:"(?:[^"\\]|\\.)*")|(?:'(?:[^'\\]|\\.)*')) *\))""")
XML_GROUP = 1
JS_GROUP = 2
XMLJS_EXPR = re.compile(r"""(?:\_t *\( *((?:"(?:[^"\\]|\\.)*")|(?:'(?:[^'\\]|\\.)*')) *\))""")
def extract_xmljs(fileobj, keywords, comment_tags, options):
content = fileobj.read()
found = XMLJS_EXPR.finditer(content)
result = []
index = 0
line_nbr = 0
for f in found:
mes = f.group(1)
mes = json.loads(mes)
while index < f.start():
if content[index] == "\n":
line_nbr += 1
index += 1
result.append((line_nbr, None, mes, ""))
return result
def extract_qweb(fileobj, keywords, comment_tags, options):
"""Extract messages from XXX files.
@ -28,19 +43,23 @@ def extract_qweb(fileobj, keywords, comment_tags, options):
tuples
:rtype: ``iterator``
"""
content = fileobj.read()
found = QWEB_EXPR.finditer(content)
result = []
index = 0
line_nbr = 0
for f in found:
group = XML_GROUP if f.group(XML_GROUP) else JS_GROUP
mes = f.group(group)
if group == JS_GROUP:
mes = json.loads(mes)
while index < f.start():
if content[index] == "\n":
line_nbr += 1
index += 1
result.append((line_nbr, None, mes, ""))
def handle_text(str):
str = (str or "").strip()
if not str:
return
result.append((0, None, str, ""))
def iter_elements(current_element):
for el in current_element:
if "t-js" not in el.attrib and \
not ("t-jquery" in el.attrib and "t-operation" not in el.attrib) and \
not ("t-trad" in el.attrib and el.attrib["t-trad"].strip() == "off"):
handle_text(el.text)
iter_elements(el)
handle_text(el.tail)
tree = elt.parse(fileobj)
iter_elements(tree.getroot())
return result