
    Je                     4    d Z ddlZddlZddlmZ 	 ddZd Zy)z
Cookiecutter utilities.
    N)cookiecutterc                 j    d}	 t        | |d|d      }||fS # t        $ r}|}d}Y d}~||fS d}~ww xY w)z:
    Generate a cookicutter project programmatically.
    T)
output_diroverwrite_if_existsextra_contextno_inputFN)r   	Exception)cookiecutter_pathoutput_pathextra_contentstatusresulterrs         F/usr/lib/python3/dist-packages/spyder/plugins/projects/utils/cookie.pygenerate_cookiecutter_projectr      sY    
 F
" $'
 6>	  6>	s    	2-2c                 F   d}d}t         j                  j                  | d      }t         j                  j                  | dd      }t         j                  j                  |       rt         j                  j	                  |      r8t        |d      5 }t        j                  |j                               }ddd       t         j                  j	                  |      r)t        |d      5 }|j                         }ddd       ||fS ||fS # 1 sw Y   UxY w# 1 sw Y   ||fS xY w)z9
    Load a cookicutter options and pre-hook script.
    Nzcookiecutter.jsonhookszpre_gen_project.pyr)	ospathjoinisdirisfileopenjsonloadsread)project_pathoptionspre_gen_code
cookiepathpre_gen_pathfhs         r   load_cookiecutter_projectr$   &   s     GLl,?@J77<<g7KLL	ww}}\"77>>*%j#& 0"**RWWY/0 77>>,'lC( )B!wwy) L  7L  0 0) L  s   $D'DDD )N)__doc__r   r   cookiecutter.mainr   r   r$        r   <module>r)      s$     	 * 15*!r(   