[build/translate] now translate will work on demand
This commit is contained in:
parent
6a77bc4f51
commit
4e5a988702
3 changed files with 20 additions and 10 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
|
@ -2,6 +2,5 @@
|
||||||
*.py~
|
*.py~
|
||||||
*.comp.js
|
*.comp.js
|
||||||
*.DS_Store
|
*.DS_Store
|
||||||
user_files
|
locale
|
||||||
logs
|
.wnf-lang-status
|
||||||
defs.py
|
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ def check_public():
|
||||||
make()
|
make()
|
||||||
|
|
||||||
def check_lang():
|
def check_lang():
|
||||||
from webnotes.tranlate import update_translations
|
from webnotes.translate import update_translations
|
||||||
update_translations()
|
update_translations()
|
||||||
|
|
||||||
class Bundle:
|
class Bundle:
|
||||||
|
|
|
||||||
|
|
@ -42,22 +42,22 @@ def translate(lang=None):
|
||||||
if lang=="all" or lang==None:
|
if lang=="all" or lang==None:
|
||||||
languages = get_all_languages()
|
languages = get_all_languages()
|
||||||
|
|
||||||
print "Extracting messages..."
|
print "Extracting / updating translatable strings..."
|
||||||
build_message_files()
|
build_message_files()
|
||||||
|
|
||||||
|
print "Compiling messages in one file..."
|
||||||
export_messages(lang, '_lang_tmp.csv')
|
export_messages(lang, '_lang_tmp.csv')
|
||||||
|
|
||||||
for lang in languages:
|
for lang in languages:
|
||||||
if lang != "en":
|
if lang != "en":
|
||||||
filename = 'app/translations/'+lang+'.csv'
|
filename = 'app/translations/'+lang+'.csv'
|
||||||
print "For " + lang + ":"
|
print "For " + lang + ":"
|
||||||
print "Compiling messages in one file..."
|
|
||||||
print "Translating via Google Translate..."
|
print "Translating via Google Translate..."
|
||||||
google_translate(lang, '_lang_tmp.csv', filename)
|
google_translate(lang, '_lang_tmp.csv', filename)
|
||||||
print "Updating language files..."
|
print "Updating language files..."
|
||||||
import_messages(lang, filename)
|
import_messages(lang, filename)
|
||||||
print "Deleting temp files..."
|
|
||||||
|
|
||||||
|
print "Deleting temp file..."
|
||||||
os.remove('_lang_tmp.csv')
|
os.remove('_lang_tmp.csv')
|
||||||
|
|
||||||
def get_all_languages():
|
def get_all_languages():
|
||||||
|
|
@ -70,22 +70,33 @@ def update_translations():
|
||||||
"""
|
"""
|
||||||
langstatus = {}
|
langstatus = {}
|
||||||
languages = get_all_languages()
|
languages = get_all_languages()
|
||||||
if os.path.exists(".wnf-lang-status"):
|
message_updated = False
|
||||||
with open(".erpnext-lang-status", "r") as langstatusfile:
|
status_file_path = "app/.wnf-lang-status"
|
||||||
|
|
||||||
|
if os.path.exists(status_file_path):
|
||||||
|
with open(status_file_path, "r") as langstatusfile:
|
||||||
langstatus = eval(langstatusfile.read())
|
langstatus = eval(langstatusfile.read())
|
||||||
|
|
||||||
for lang in languages:
|
for lang in languages:
|
||||||
filename = 'app/translations/'+lang+'.csv'
|
filename = 'app/translations/'+lang+'.csv'
|
||||||
if langstatus.get(lang, None)!=os.path.getmtime(filename):
|
if langstatus.get(lang, None)!=os.path.getmtime(filename):
|
||||||
print "Setting up lang files for " + lang + "..."
|
print "Setting up lang files for " + lang + "..."
|
||||||
|
if not message_updated:
|
||||||
|
print "Extracting / updating translatable strings..."
|
||||||
|
build_message_files()
|
||||||
|
message_updated = True
|
||||||
|
print "Writing translations..."
|
||||||
import_messages(lang, filename)
|
import_messages(lang, filename)
|
||||||
langstatus[lang] = os.path.getmtime(filename)
|
langstatus[lang] = os.path.getmtime(filename)
|
||||||
|
|
||||||
with open(".wnf-lang-status", "w") as langstatusfile:
|
with open(status_file_path, "w") as langstatusfile:
|
||||||
langstatus = langstatusfile.write(str(langstatus))
|
langstatus = langstatusfile.write(str(langstatus))
|
||||||
|
|
||||||
def build_message_files():
|
def build_message_files():
|
||||||
"""build from doctypes, pages, database and framework"""
|
"""build from doctypes, pages, database and framework"""
|
||||||
|
if not webnotes.conn:
|
||||||
|
webnotes.connect()
|
||||||
|
|
||||||
build_for_pages('lib/core')
|
build_for_pages('lib/core')
|
||||||
build_for_pages('app')
|
build_for_pages('app')
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue