view +mpm/status.m @ 37:01e81c77bca1

Add checks to avoid errors when calling commands outside of a project folder
author Jonatan Werpers <jonatan@werpers.com>
date Fri, 02 Nov 2018 14:43:27 +0100
parents 1fe5080cac46
children
line wrap: on
line source

function status(projectFolder)
    if ~exist('projectFolder', 'var') || isempty(projectFolder)
        projectFolder = pwd;
    end

    m = mpm.MatlabPathManager();

    fprintf('Project:\n')
    if m.isProject(projectFolder)
        printProjectStatus(m, projectFolder)
    else
        fprintf('\t(No project in folder)\n')
    end
    fprintf('\n')
    
    fprintf('Loaded subpaths:\n')
    loaded = m.loadedSubpaths();
    if length(loaded) > 0
        for i = 1:length(loaded);
            fprintf('\t%s\n', loaded{i});
        end
    else
        fprintf('\t(none)\n')
    end

    fprintf('\n')
end

function printProjectStatus(m, projectFolder)
    project = m.projectSubpaths(projectFolder);

    for i = 1:length(project)
        fprintf('\t%s ', project{i});

        if m.subpathIsActive(fullfile(projectFolder,project{i}), split(path, pathsep))
            fprintf('(active)');
        else
            fprintf('(inactive)');
        end

        fprintf('\n')
    end
end