parameters: (argv)
return_statement: return 0
docstring: Main function of this vcproj prettifier.
docstring_summary: Main function of this vcproj prettifier.
docstring_tokens: Main function of this vcproj prettifier .
function: def main(argv):
    """Main function of this vcproj prettifier."""
    global ARGUMENTS
    ARGUMENTS = argv
  
    # check if we have exactly 1 parameter.
    if len(argv) < 2:
      print ('Usage: %s "c:\\path\\to\\vcproj.vcproj" [key1=value1] '
             '[key2=value2]' % argv[0])
      return 1
  
    # Parse the keys
    for i in range(2, len(argv)):
      (key, value) = argv[i].split('=')
      REPLACEMENTS[key] = value
  
    # Open the vcproj and parse the xml.
    dom = parse(argv[1])
  
    # First thing we need to do is find the Configuration Node and merge them
    # with the vsprops they include.
    for configuration_node in GetConfiguationNodes(dom.documentElement):
      # Get the property sheets associated with this configuration.
      vsprops = configuration_node.getAttribute('InheritedPropertySheets')
  
      # Fix the filenames to be absolute.
      vsprops_list = FixFilenames(vsprops.strip().split(';'),
                                  os.path.dirname(argv[1]))
  
      # Extend the list of vsprops with all vsprops contained in the current
      # vsprops.
      for current_vsprops in vsprops_list:
        vsprops_list.extend(GetChildrenVsprops(current_vsprops))
  
      # Now that we have all the vsprops, we need to merge them.
      for current_vsprops in vsprops_list:
        MergeProperties(configuration_node,
                        parse(current_vsprops).documentElement)
  
    # Now that everything is merged, we need to cleanup the xml.
    CleanupVcproj(dom.documentElement)
  
    # Finally, we use the prett xml function to print the vcproj back to the
    # user.
    #print dom.toprettyxml(newl="\n")
    PrettyPrintNode(dom.documentElement)
    return 0
function_tokens: def main ( argv ) : global ARGUMENTS ARGUMENTS = argv # check if we have exactly 1 parameter. if len ( argv ) < 2 : print ( 'Usage: %s "c:\\path\\to\\vcproj.vcproj" [key1=value1] ' '[key2=value2]' % argv [ 0 ] ) return 1 # Parse the keys for i in range ( 2 , len ( argv ) ) : ( key , value ) = argv [ i ] . split ( '=' ) REPLACEMENTS [ key ] = value # Open the vcproj and parse the xml. dom = parse ( argv [ 1 ] ) # First thing we need to do is find the Configuration Node and merge them # with the vsprops they include. for configuration_node in GetConfiguationNodes ( dom . documentElement ) : # Get the property sheets associated with this configuration. vsprops = configuration_node . getAttribute ( 'InheritedPropertySheets' ) # Fix the filenames to be absolute. vsprops_list = FixFilenames ( vsprops . strip ( ) . split ( ';' ) , os . path . dirname ( argv [ 1 ] ) ) # Extend the list of vsprops with all vsprops contained in the current # vsprops. for current_vsprops in vsprops_list : vsprops_list . extend ( GetChildrenVsprops ( current_vsprops ) ) # Now that we have all the vsprops, we need to merge them. for current_vsprops in vsprops_list : MergeProperties ( configuration_node , parse ( current_vsprops ) . documentElement ) # Now that everything is merged, we need to cleanup the xml. CleanupVcproj ( dom . documentElement ) # Finally, we use the prett xml function to print the vcproj back to the # user. #print dom.toprettyxml(newl="\n") PrettyPrintNode ( dom . documentElement ) return 0