parameters: ()
docstring: The main function.
docstring_summary: The main function.
docstring_tokens: The main function .
function: def main():
    """The main function."""
    options = ParseOptions()
    if options.version_file is None:
      logging.error('--version_file is not specified.')
      sys.exit(-1)
    if options.output is None:
      logging.error('--output is not specified.')
      sys.exit(-1)
    if options.input is None:
      logging.error('--input is not specified.')
      sys.exit(-1)
    if options.branding is None:
      logging.error('--branding is not specified.')
      sys.exit(-1)
  
    version = mozc_version.MozcVersion(options.version_file)
  
    copyright_message = u'© %d Google Inc.' % _COPYRIGHT_YEAR
    long_version = version.GetVersionString()
    short_version = version.GetVersionInFormat('@MAJOR@.@MINOR@.@BUILD@')
  
    if options.branding == 'GoogleJapaneseInput':
      domain_prefix = 'com.google'
      product_name = 'Google Japanese Input'
      breakpad_product = 'Google_Japanese_IME_Mac'
      breakpad_url = 'https://clients2.google.com/cr/report'
    else:
      domain_prefix = 'org.mozc'
      product_name = 'Mozc'
      breakpad_product = 'Mozc'
      # Reports are generated under $TMPDIR, but not sent to a server.
      breakpad_url = 'file:///dev/null'
  
    variables = {
        'GOOGLE_VERSIONINFO_LONG': long_version,
        'GOOGLE_VERSIONINFO_SHORT': short_version,
        'GOOGLE_VERSIONINFO_ABOUT': copyright_message,
        'GOOGLE_VERSIONINFO_FINDER':
            '%s %s, %s' % (product_name, long_version, copyright_message),
        'BRANDING':
            options.branding,
        'DOMAIN_PREFIX':
            domain_prefix,
        'BREAKPAD_PRODUCT':
            breakpad_product,
        'BREAKPAD_URL':
            breakpad_url,
    }
  
    codecs.open(options.output, 'w', encoding='utf-8').write(
        tweak_data.ReplaceVariables(open(options.input).read(), variables))
function_tokens: def main ( ) : options = ParseOptions ( ) if options . version_file is None : logging . error ( '--version_file is not specified.' ) sys . exit ( - 1 ) if options . output is None : logging . error ( '--output is not specified.' ) sys . exit ( - 1 ) if options . input is None : logging . error ( '--input is not specified.' ) sys . exit ( - 1 ) if options . branding is None : logging . error ( '--branding is not specified.' ) sys . exit ( - 1 ) version = mozc_version . MozcVersion ( options . version_file ) copyright_message = u'© %d Google Inc.'  COPYRIGHT_YEAR long_version = version . GetVersionString ( ) short_version = version . GetVersionInFormat ( '@MAJOR@.@MINOR@.@BUILD@' ) if options . branding == 'GoogleJapaneseInput' : domain_prefix = 'com.google' product_name = 'Google Japanese Input' breakpad_product = 'Google_Japanese_IME_Mac' breakpad_url = 'https://clients2.google.com/cr/report' else : domain_prefix = 'org.mozc' product_name = 'Mozc' breakpad_product = 'Mozc' # Reports are generated under $TMPDIR, but not sent to a server. breakpad_url = 'file:///dev/null' variables = { 'GOOGLE_VERSIONINFO_LONG' : long_version , 'GOOGLE_VERSIONINFO_SHORT' : short_version , 'GOOGLE_VERSIONINFO_ABOUT' : copyright_message , 'GOOGLE_VERSIONINFO_FINDER' : '%s %s, %s' % ( product_name , long_version , copyright_message ) , 'BRANDING' : options . branding , 'DOMAIN_PREFIX' : domain_prefix , 'BREAKPAD_PRODUCT' : breakpad_product , 'BREAKPAD_URL' : breakpad_url , } codecs . open ( options . output , 'w' , encoding = 'utf-8' ) . write ( tweak_data . ReplaceVariables ( open ( options . input ) . read ( ) , variables ) )