1 #!/usr/bin/env python 2 # Copyright (c) 2009 The Chromium Authors. All rights reserved. 3 # Use of this source code is governed by a BSD-style license that can be 4 # found in the LICENSE file. 5 6 # TODO: remove this script when GYP has for loops 7 8 import sys 9 import optparse 10 11 def main(argv): 12 13 parser = optparse.OptionParser() 14 usage = 'usage: %s [options ...] format_string locale_list' 15 parser.set_usage(usage.replace('%s', '%prog')) 16 parser.add_option('-d', dest='dash_to_underscore', action="store_true", 17 default=False, 18 help='map "en-US" to "en" and "-" to "_" in locales') 19 20 (options, arglist) = parser.parse_args(argv) 21 22 if len(arglist) < 3: 23 print 'ERROR: need string and list of locales' 24 return 1 25 26 str_template = arglist[1] 27 locales = arglist[2:] 28 29 results = [] 30 for locale in locales: 31 # For Cocoa to find the locale at runtime, it needs to use '_' instead 32 # of '-' (http://crbug.com/20441). Also, 'en-US' should be represented 33 # simply as 'en' (http://crbug.com/19165, http://crbug.com/25578). 34 if options.dash_to_underscore: 35 if locale == 'en-US': 36 locale = 'en' 37 locale = locale.replace('-', '_') 38 results.append(str_template.replace('ZZLOCALE', locale)) 39 40 # Quote each element so filename spaces don't mess up GYP's attempt to parse 41 # it into a list. 42 print ' '.join(["'%s'" % x for x in results]) 43 44 if __name__ == '__main__': 45 sys.exit(main(sys.argv)) 46