count lines of code for entire project

55 views (last 30 days)
Hi All,
I am looking into counting source code of lines for entire project. Is there a way to do it? I looked into sloc() somebdy posted but it counts only one file at a time. I want to count for the entire project so soemthign can go into the foler and look for each and every .m file

Accepted Answer

Geoff Hayes
Geoff Hayes on 6 Oct 2014
Neesha - try using David Roberts' FEX submission slocDir which calls the sloc function that you mention above.
  2 Comments
Neesha
Neesha on 6 Oct 2014
Ok,this worked. I have tried using slocdir, which did not work for me, but slocDir did. Thanks
Willingo
Willingo on 1 Apr 2022
If anyone in the future tries to call all the project file names such as
p = currentProject
fNames = [p.Files.Path]'
Be aware that fNames is a string array, which did not exist at the time of sloc, so you need to reconvert it into a character array. I make no promises that this works for all cases, but I used sloc in this manner
p = currentProject
filePaths = char([p.Files.Path]');
myCount = struct;
count0TF = [];
for i = 1:height(filePaths)
try
n = numel(myCount);
myCount(n+1).count = sloc(filePaths(i,:));
[~,fName] = fileparts(filePaths(i,:));
myCount(n+1).filename = fName;
catch
end
end
myProjectTable = struct2table(myCount)

Sign in to comment.

More Answers (1)

Demetrio Rodriguez Tereshkin
This is what you are looking for: https://github.com/AlDanial/cloc

Categories

Find more on File Operations in Help Center and File Exchange

Tags

No tags entered yet.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!