def get_user_config(project_path, use_cache=True):
if sys.platform == '<STR_LIT:win32>':<EOL><INDENT>user_config = os.path.expanduser(r'<STR_LIT>')<EOL><DEDENT>else:<EOL><INDENT>user_config = os.path.join(<EOL>os.getenv('<STR_LIT>') or os.path.expanduser('<STR_LIT>'),<EOL>'<STR_LIT>'<EOL>)<EOL><DEDENT>if os.path.exists(user_config):<EOL><INDENT>with open(user_config, '<STR_LIT:r>') as config_file:<EOL><INDENT>config = pytoml.load(config_file).get('<STR_LIT>', {})<EOL><DEDENT>config = merge_dict(get_default_config(), config)<EOL>config = process_extensions(config, project_path, use_cache=use_cache)<EOL>return config<EOL><DEDENT>return None<EOL>
Produces a TidyPy configuration that incorporates the configuration files
stored in the current user's home directory.

:param project_path: the path to the project that is going to be analyzed
:type project_path: str
:param use_cache:
    whether or not to use cached versions of any remote/referenced TidyPy
    configurations. If not specified, defaults to ``True``.
:type use_cache: bool
:rtype: dict