def compile(conf, domain, lang): path = os.path.join(os.environ.get('INSTANCE_HOME'), 'var/amberjack_i18n') path = os.path.normpath(path) if not os.path.isdir(path): os.makedirs(path) filename = '%s-%s' % (lang, os.path.basename(conf.name)) po = open(os.path.join(path, filename), 'w') po.write(conf.read()) po.close() po = open(po.name, 'r') _mo = Msgfmt(po, domain).getAsFile() mo = open(os.path.join(path, filename.replace('.po','.mo')), 'wb') mo.write(_mo.read()) mo.close() _mo.close() return str(mo.name)