environment/lib/python2.7/site-packages/IPython/utils/path.py
def get_home_dir(require_writable=False):
    """Return the 'home' directory, as a unicode string.

    * First, check for frozen env in case of py2exe
    * Otherwise, defer to os.path.expanduser('~')
    
    See stdlib docs for how this is determined.
    $HOME is first priority on *ALL* platforms.
    
    Parameters
    ----------
    
    require_writable : bool [default: False]
        if True:
            guarantees the return value is a writable directory, otherwise
            raises HomeDirError
        if False:
            The path is resolved, but it is not guaranteed to exist or be writable.
    """

    # first, check py2exe distribution root directory for _ipython.
    # This overrides all. Normally does not exist.

    if hasattr(sys, "frozen"): #Is frozen by py2exe
        if '\\library.zip\\' in IPython.__file__.lower():#libraries compressed to zip-file
            root, rest = IPython.__file__.lower().split('library.zip')
        else:
            root=os.path.join(os.path.split(IPython.__file__)[0],"../../")
        root=os.path.abspath(root).rstrip('\\')
        if _writable_dir(os.path.join(root, '_ipython')):
            os.environ["IPYKITROOT"] = root
        return py3compat.cast_unicode(root, fs_encoding)
    
    homedir = os.path.expanduser('~')
    # Next line will make things work even when /home/ is a symlink to
    # /usr/home as it is on FreeBSD, for example
    homedir = os.path.realpath(homedir)
    
    if not _writable_dir(homedir) and os.name == 'nt':
        # expanduser failed, use the registry to get the 'My Documents' folder.
        try:
            import _winreg as wreg
            key = wreg.OpenKey(
                wreg.HKEY_CURRENT_USER,
                "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
            )
            homedir = wreg.QueryValueEx(key,'Personal')[0]
            key.Close()
        except:
            pass
    
    if (not require_writable) or _writable_dir(homedir):
        return py3compat.cast_unicode(homedir, fs_encoding)
    else:
        raise HomeDirError('%s is not a writable dir, '
                'set $HOME environment variable to override' % homedir)
def get_home_dir(require_writable=False):
    # first, check py2exe distribution root directory for _ipython.
    # This overrides all. Normally does not exist.

    if hasattr(sys, "frozen"): #Is frozen by py2exe
        if '\\library.zip\\' in IPython.__file__.lower():#libraries compressed to zip-file
            root, rest = IPython.__file__.lower().split('library.zip')
        else:
            root=os.path.join(os.path.split(IPython.__file__)[0],"../../")
        root=os.path.abspath(root).rstrip('\\')
        if _writable_dir(os.path.join(root, '_ipython')):
            os.environ["IPYKITROOT"] = root
        return py3compat.cast_unicode(root, fs_encoding)
    
    homedir = os.path.expanduser('~')
    # Next line will make things work even when /home/ is a symlink to
    # /usr/home as it is on FreeBSD, for example
    homedir = os.path.realpath(homedir)
    
    if not _writable_dir(homedir) and os.name == 'nt':
        # expanduser failed, use the registry to get the 'My Documents' folder.
        try:
            import _winreg as wreg
            key = wreg.OpenKey(
                wreg.HKEY_CURRENT_USER,
                "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
            )
            homedir = wreg.QueryValueEx(key,'Personal')[0]
            key.Close()
        except:
            pass
    
    if (not require_writable) or _writable_dir(homedir):
        return py3compat.cast_unicode(homedir, fs_encoding)
    else:
        raise HomeDirError('%s is not a writable dir, '
                'set $HOME environment variable to override' % homedir)
def get_home_dir ( require_writable = False ) : # first, check py2exe distribution root directory for _ipython. # This overrides all. Normally does not exist. if hasattr ( sys , "frozen" ) : #Is frozen by py2exe if '\\library.zip\\' in IPython . __file__ . lower ( ) : #libraries compressed to zip-file root , rest = IPython . __file__ . lower ( ) . split ( 'library.zip' ) else : root = os . path . join ( os . path . split ( IPython . __file__ ) [ 0 ] , "../../" ) root = os . path . abspath ( root ) . rstrip ( '\\' ) if _writable_dir ( os . path . join ( root , '_ipython' ) ) : os . environ [ "IPYKITROOT" ] = root return py3compat . cast_unicode ( root , fs_encoding ) homedir = os . path . expanduser ( '~' ) # Next line will make things work even when /home/ is a symlink to # /usr/home as it is on FreeBSD, for example homedir = os . path . realpath ( homedir ) if not _writable_dir ( homedir ) and os . name == 'nt' : # expanduser failed, use the registry to get the 'My Documents' folder. try : import _winreg as wreg key = wreg . OpenKey ( wreg . HKEY_CURRENT_USER , "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ) homedir = wreg . QueryValueEx ( key , 'Personal' ) [ 0 ] key . Close ( ) except : pass if ( not require_writable ) or _writable_dir ( homedir ) : return py3compat . cast_unicode ( homedir , fs_encoding ) else : raise HomeDirError ( '%s is not a writable dir, ' 'set $HOME environment variable to override' % homedir )
Return the 'home' directory, as a unicode string.

    * First, check for frozen env in case of py2exe
    * Otherwise, defer to os.path.expanduser('~')
    
    See stdlib docs for how this is determined.
    $HOME is first priority on *ALL* platforms.
    
    Parameters
    ----------
    
    require_writable : bool [default: False]
        if True:
            guarantees the return value is a writable directory, otherwise
            raises HomeDirError
        if False:
            The path is resolved, but it is not guaranteed to exist or be writable.
Return the home directory as a unicode string .