|
86 |
Icons: umc/icons |
86 |
Icons: umc/icons |
87 |
""" |
87 |
""" |
88 |
|
88 |
|
|
|
89 |
|
90 |
class UMC_Build_Error(Exception): |
91 |
pass |
92 |
|
93 |
|
89 |
class UMC_Module( dict ): |
94 |
class UMC_Module( dict ): |
90 |
def __init__( self, *args ): |
95 |
def __init__( self, *args ): |
91 |
dict.__init__( self, *args ) |
96 |
dict.__init__( self, *args ) |
Lines 244-254
def module_xml2po( module, po_file, language ):
|
Link Here
|
---|
|
244 |
|
249 |
|
245 |
po.save( message_po ) |
250 |
po.save( message_po ) |
246 |
if os.path.isfile( po_file ): |
251 |
if os.path.isfile( po_file ): |
247 |
dh_ucs.doIt( 'msgmerge', '--update', '--sort-output', po_file, message_po ) |
252 |
if dh_ucs.doIt('msgmerge', '--update', '--sort-output', po_file, message_po): |
|
|
253 |
raise UMC_Build_Error("Error updating translation '%s'" % (po_file,)) |
248 |
if os.path.isfile( message_po ): |
254 |
if os.path.isfile( message_po ): |
249 |
os.unlink( message_po ) |
255 |
os.unlink( message_po ) |
250 |
else: |
256 |
else: |
251 |
dh_ucs.doIt( 'mv', message_po, po_file ) |
257 |
if dh_ucs.doIt('mv', message_po, po_file): |
|
|
258 |
raise UMC_Build_Error("Error moving translation '%s'" % (po_file,)) |
252 |
|
259 |
|
253 |
def create_po_file( po_file, package, files, language = 'python' ): |
260 |
def create_po_file( po_file, package, files, language = 'python' ): |
254 |
"""Create a PO file for a defined set of files""" |
261 |
"""Create a PO file for a defined set of files""" |
Lines 258-277
def create_po_file( po_file, package, files, language = 'python' ):
|
Link Here
|
---|
|
258 |
os.unlink( message_po ) |
265 |
os.unlink( message_po ) |
259 |
if isinstance( files, basestring ): |
266 |
if isinstance( files, basestring ): |
260 |
files = [ files ] |
267 |
files = [ files ] |
261 |
dh_ucs.doIt( 'xgettext', '--force-po', '--from-code=UTF-8', '--sort-output', '--package-name=%s' % package, '--msgid-bugs-address=packages@univention.de', '--copyright-holder=Univention GmbH', '--language', language, '-o', message_po, *files ) |
268 |
if dh_ucs.doIt('xgettext', '--force-po', '--from-code=UTF-8', '--sort-output', '--package-name=%s' % package, '--msgid-bugs-address=packages@univention.de', '--copyright-holder=Univention GmbH', '--language', language, '-o', message_po, *files): |
|
|
269 |
raise UMC_Build_Error("Error extracting translations '%s'" % (message_po,)) |
262 |
po = polib.pofile( message_po ) |
270 |
po = polib.pofile( message_po ) |
263 |
po.header = PO_HEADER |
271 |
po.header = PO_HEADER |
264 |
po.metadata[ 'Content-Type' ] = 'text/plain; charset=UTF-8' |
272 |
po.metadata[ 'Content-Type' ] = 'text/plain; charset=UTF-8' |
265 |
po.save() |
273 |
po.save() |
266 |
if os.path.isfile( po_file ): |
274 |
if os.path.isfile( po_file ): |
267 |
dh_ucs.doIt( 'msgmerge', '--update', '--sort-output', po_file, message_po ) |
275 |
if dh_ucs.doIt('msgmerge', '--update', '--sort-output', po_file, message_po): |
|
|
276 |
raise UMC_Build_Error("Error updating translation '%s'" % (po_file,)) |
268 |
if os.path.isfile( message_po ): |
277 |
if os.path.isfile( message_po ): |
269 |
os.unlink( message_po ) |
278 |
os.unlink( message_po ) |
270 |
else: |
279 |
else: |
271 |
dh_ucs.doIt( 'mv', message_po, po_file ) |
280 |
if dh_ucs.doIt('mv', message_po, po_file): |
|
|
281 |
raise UMC_Build_Error("Error moving translation '%s'" % (po_file,)) |
272 |
|
282 |
|
273 |
def create_mo_file( po_file ): |
283 |
def create_mo_file( po_file ): |
274 |
dh_ucs.doIt( 'msgfmt', '--check', '--output-file', po_file.replace( '.po', '.mo' ), po_file ) |
284 |
if dh_ucs.doIt('msgfmt', '--check', '--output-file', po_file.replace('.po', '.mo'), po_file): |
|
|
285 |
raise UMC_Build_Error("Error compiling translations '%s'" % (po_file,)) |
275 |
|
286 |
|
276 |
def create_json_file( po_file ): |
287 |
def create_json_file( po_file ): |
277 |
json_file = po_file.replace( '.po', '.json' ) |
288 |
json_file = po_file.replace( '.po', '.json' ) |
Lines 283-286
def create_json_file( po_file ):
|
Link Here
|
---|
|
283 |
|
294 |
|
284 |
json_fd.write( json.dumps( data ) ) |
295 |
json_fd.write( json.dumps( data ) ) |
285 |
json_fd.close() |
296 |
json_fd.close() |
286 |
|
|
|