Guest User

Untitled

a guest
May 26th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. #! /bin/env python
  2. import os
  3. import sys
  4. from subprocess import Popen
  5. from tempfile import TemporaryFile
  6.  
  7. from translate.tools import phppo2pypo
  8.  
  9. # How can we access settings.STANDALONE_DOMAINS from here?
  10. standalone_domains = ['firefoxcup']
  11.  
  12. def copypos(dir):
  13. if not os.path.isdir(dir):
  14. sys.exit("Can't find (%s)" % dir)
  15. os.chdir(dir)
  16. for locale in os.listdir('.'):
  17. if not os.path.isdir(locale) or locale.startswith('.'):
  18. continue
  19. print "Creating z-messages for %s..." % locale
  20.  
  21. r_messages = open(os.path.join(os.path.abspath(locale), 'LC_MESSAGES',
  22. 'messages.po'))
  23. r_messages_python = TemporaryFile('w+t')
  24. if not phppo2pypo.convertphp2py(r_messages, r_messages_python):
  25. sys.exit("Something is broken in (%s)" % r_messages)
  26. r_messages.close()
  27. r_messages_python.seek(0)
  28.  
  29. standalone_messages = []
  30. for domain in standalone_domains:
  31. standalone_messages.append(os.path.join(os.path.abspath(locale),
  32. 'LC_MESSAGES',
  33. 'z-%s.po' % domain))
  34.  
  35. z_messages = open(os.path.join(os.path.abspath(locale), 'LC_MESSAGES',
  36. 'z-messages.po'), 'w+t')
  37. command = ["msgcat", "--use-first", "-"]
  38. command.extend(standalone_messages)
  39. p1 = Popen(command, stdin=r_messages_python, stdout=z_messages)
  40. p1.communicate()
  41. z_messages.close()
  42.  
  43. if __name__ == "__main__":
  44. if len(sys.argv) != 2:
  45. sys.exit("Usage: ./copy-to-zamboni.sh <localedir>")
  46. copypos(sys.argv[1])
Add Comment
Please, Sign In to add comment