original_docstring:  Returns a dict of used packages and their root dir paths.
      e.g. {ROOT:/path/to/cmt/installed/ROOT/vXrY}
      
docstring: Returns a dict of used packages and their root dir paths.
docstring_tokens: Returns a dict of used packages and their root dir paths .
code: def parse_uses():
      """ Returns a dict of used packages and their root dir paths.
      e.g. {ROOT:/path/to/cmt/installed/ROOT/vXrY}
      """
      check_dir()
      check_requirements()
      proc = subprocess.Popen(['cmt', 'show', 'uses'],
                              stdout=subprocess.PIPE)
  
      use_dict = init_use_dict()
      for line in iter(proc.stdout.readline, ''):
          tokens = line.split()
          # ignore lines that start with '#'
          if line[0] != '#' and tokens[1] not in IGNORES:
              basepath = tokens[-1].strip('()')
              # highland and psyche do not strictly follow CMT path
              # organization. They have subpackages within a master, so
              # we need to take that into account
              relpath_list = [master for master in tokens[3:-1]]
              relpath_list.extend([tokens[1], tokens[2]])
              use_dict[tokens[1]] = os.path.join(basepath, *relpath_list)
  
      return use_dict
code_tokens: def parse_uses ( ) : check_dir ( ) check_requirements ( ) proc = subprocess . Popen ( [ 'cmt' , 'show' , 'uses' ] , stdout = subprocess . PIPE ) use_dict = init_use_dict ( ) for line in iter ( proc . stdout . readline , '' ) : tokens = line . split ( ) if line [ 0 ] != '#' and tokens [ 1 ] not in IGNORES : basepath = tokens [ - 1 ] . strip ( '()' ) relpath_list = [ master for master in tokens [ 3 : - 1 ] ] relpath_list . extend ( [ tokens [ 1 ] , tokens [ 2 ] ] ) use_dict [ tokens [ 1 ] ] = os . path . join ( basepath , * relpath_list ) return use_dict
short_docstring: Returns a dict of used packages and their root dir paths.
short_docstring_tokens: Returns a dict of used packages and their root dir paths .
comment: """ Returns a dict of used packages and their root dir paths.
      e.g. {ROOT:/path/to/cmt/installed/ROOT/vXrY}
      """$SEP$# ignore lines that start with '#'$SEP$# highland and psyche do not strictly follow CMT path$SEP$# organization. They have subpackages within a master, so$SEP$# we need to take that into account