File: apply_locales.py

package info (click to toggle)
thunderbird 1%3A91.13.0-1~deb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 2,953,400 kB
  • sloc: cpp: 6,084,049; javascript: 4,790,441; ansic: 3,341,496; python: 862,958; asm: 366,542; xml: 204,277; java: 152,477; sh: 111,436; makefile: 21,388; perl: 15,312; yacc: 4,583; objc: 3,026; lex: 1,720; exp: 762; pascal: 635; awk: 564; sql: 453; php: 436; lisp: 432; ruby: 99; sed: 69; csh: 45
file content (45 lines) | stat: -rwxr-xr-x 1,455 bytes parent folder | download | duplicates (39)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/env python
# Copyright (c) 2009 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# TODO: remove this script when GYP has for loops

import sys
import optparse

def main(argv):

  parser = optparse.OptionParser()
  usage = 'usage: %s [options ...] format_string locale_list'
  parser.set_usage(usage.replace('%s', '%prog'))
  parser.add_option('-d', dest='dash_to_underscore', action="store_true",
                    default=False,
                    help='map "en-US" to "en" and "-" to "_" in locales')

  (options, arglist) = parser.parse_args(argv)

  if len(arglist) < 3:
    print 'ERROR: need string and list of locales'
    return 1

  str_template = arglist[1]
  locales = arglist[2:]

  results = []
  for locale in locales:
    # For Cocoa to find the locale at runtime, it needs to use '_' instead
    # of '-' (http://crbug.com/20441).  Also, 'en-US' should be represented
    # simply as 'en' (http://crbug.com/19165, http://crbug.com/25578).
    if options.dash_to_underscore:
      if locale == 'en-US':
        locale = 'en'
      locale = locale.replace('-', '_')
    results.append(str_template.replace('ZZLOCALE', locale))

  # Quote each element so filename spaces don't mess up GYP's attempt to parse
  # it into a list.
  print ' '.join(["'%s'" % x for x in results])

if __name__ == '__main__':
  sys.exit(main(sys.argv))