def save(self):
        """
        Save the project configuration

        This method dumps the configuration for each project and the project
        paths (see the :attr:`all_projects` attribute) to the hard drive
        """
        project_paths = OrderedDict()
        for project, d in OrderedDict(self).items():
            if isinstance(d, dict):
                project_path = d['root']
                fname = osp.join(project_path, '.project', '.project.yml')
                if not osp.exists(osp.dirname(fname)):
                    os.makedirs(osp.dirname(fname))
                if osp.exists(fname):
                    os.rename(fname, fname + '~')
                d = self.rel_paths(copy.deepcopy(d))
                safe_dump(d, fname, default_flow_style=False)
                project_paths[project] = project_path
            else:
                project_paths = self.project_paths[project]
        self.project_paths = project_paths
        safe_dump(project_paths, self.all_projects, default_flow_style=False)
def save ( self ) : project_paths = OrderedDict ( ) for project , d in OrderedDict ( self ) . items ( ) : if isinstance ( d , dict ) : project_path = d [ 'root' ] fname = osp . join ( project_path , '.project' , '.project.yml' ) if not osp . exists ( osp . dirname ( fname ) ) : os . makedirs ( osp . dirname ( fname ) ) if osp . exists ( fname ) : os . rename ( fname , fname + '~' ) d = self . rel_paths ( copy . deepcopy ( d ) ) safe_dump ( d , fname , default_flow_style = False ) project_paths [ project ] = project_path else : project_paths = self . project_paths [ project ] self . project_paths = project_paths safe_dump ( project_paths , self . all_projects , default_flow_style = False )
Save the project configuration

        This method dumps the configuration for each project and the project
        paths (see the :attr:`all_projects` attribute) to the hard drive