Kaydet (Commit) b5197339 authored tarafından Caolán McNamara's avatar Caolán McNamara

use old translations for interim period

Change-Id: I81af71041d8d9d0074c9585ced510d7daab07c20
üst 8b11c3e8
#!/usr/bin/python
import binascii
import polib
from os import listdir, walk, remove
from os.path import isdir, join
import sys
if len(sys.argv) < 2:
print(" Syntax: interim-update-module-for-gettext path/to/dir/of/languages/language/module output.po")
sys.exit(2)
uiline = False
subpath = sys.argv[1]
print >> sys.stderr, "interim-update-for-gettext: processing ", subpath
messages = None
npos = 0
for dirpath, dirname, filenames in walk(subpath):
for filename in filenames:
ipath = join(dirpath, filename)
print >> sys.stderr, "interim-update-for-gettext: merging ", ipath
po = polib.pofile(ipath)
if len(po) != 0:
samplefile = po[0].occurrences[0][0]
if samplefile.endswith(".src") or samplefile.endswith(".ui"):
if npos == 0:
messages = po
else:
for entry in po:
messages.append(entry)
npos = npos + 1
if npos > 0:
middle = 0
for entry in messages:
if not len(entry.occurrences):
continue
location = entry.occurrences[0][0]
if location.endswith(".ui"):
uiline = True
else:
uiline = False
lines = entry.msgctxt.split('\n')
if uiline:
widgetid = lines[1]
typeid = lines[2]
entry.msgctxt = location[:-3] + "|" + widgetid
if typeid == "tooltip_text":
entry.msgctxt = entry.msgctxt + "|" + typeid
if entry.msgctxt == 'calloutpage|position' and entry.msgid == 'Middle':
middle = middle + 1
if middle == 2:
entry.msgid = "Center"
else:
ctxline = lines[1]
if (ctxline.endswith("+RID_SC_FUNC_DESCRIPTIONS_START")):
ctxline = ctxline[:-len("+RID_SC_FUNC_DESCRIPTIONS_START")]
elif (ctxline.endswith("+RID_GLOBSTR_OFFSET")):
ctxline = ctxline[:-len("+RID_GLOBSTR_OFFSET")]
entry.msgctxt = ctxline
comments = entry.comment.split('\n')
keyid = entry.msgctxt + '|' + entry.msgid
comments[-1] = polib.genKeyId(keyid.encode('utf-8'))
entry.comment = "\n".join(comments)
else:
messages = polib.POFile()
messages.metadata = {
'Project-Id-Version': '1.0',
'Report-Msgid-Bugs-To': 'you@example.com',
'POT-Creation-Date': '2007-10-18 14:00+0100',
'PO-Revision-Date': '2007-10-18 14:00+0100',
'Last-Translator': 'you <you@example.com>',
'Language-Team': 'English <yourteam@example.com>',
'MIME-Version': '1.0',
'Content-Type': 'text/plain; charset=utf-8',
'Content-Transfer-Encoding': '8bit',
}
messages.save(sys.argv[2])
File mode changed from 100644 to 100755
......@@ -32,15 +32,15 @@ $(call gb_MoTarget_get_clean_target,%) :
$(call gb_MoTarget_get_target,$*) \
$(call gb_MoTarget_get_install_target,$*))
#for the moment merge existing source and ui translations into a single .po,
#and minimize msgctxt
#eventually instead can do something like
#msgfmt $(gb_POLOCATION)/$(LANGUAGE)/$(LIBRARY)/messages.po -o $@)
$(call gb_MoTarget_get_target,%) : $(gb_Helper_MISCDUMMY)
$(call gb_Output_announce,$*,$(true),MO,2)
# after translate should look like this
# $(call gb_Helper_abbreviate_dirs,\
# mkdir -p $(dir $@) && \
# $(MSGUNIQ) $(gb_POLOCATION)/$(LANGUAGE)/$(POLOCATION)/messages.po | $(MSGFMT) - -o $@)
$(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $@) && \
if test -e $(gb_POLOCATION)/$(LANGUAGE)/$(POLOCATION)/messages.po; then $(MSGUNIQ) $(gb_POLOCATION)/$(LANGUAGE)/$(POLOCATION)/messages.po | $(MSGFMT) - -o $@; else touch $@; fi)
mkdir -p $(dir $@) && $(SRCDIR)/solenv/bin/interim-update-module-for-gettext $(gb_POLOCATION)/$(LANGUAGE)/$(POLOCATION) $@.po && \
$(MSGUNIQ) --force-po $@.po | $(MSGFMT) - -o $@)
#$(info $(call gb_MoTarget_get_target,$(1)))
define gb_MoTarget_MoTarget
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment