问题标签 [cloc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
368 浏览

batch-file - 如何制作批处理文件以一键运行相同的 cloc 命令?

要运行命令:

显然,我不想每次想进行行计数时都进入 DOS。

0 投票
5 回答
1674 浏览

c++ - 在 C++ 中计算代码中的特定事物

任何人都可以帮助我使这个更通用和更专业吗?

0 投票
4 回答
1078 浏览

objective-c - 识别 iOS 项目中每个文件的 LOC - 基于 ObjectiveC 的应用程序开发

是否有工具可以为我提供有关项目中每个文件/类的数字行的详细报告?

我试过 CLOC。我得到的只是项目级别,这是很好的开始。我想详细了解每节课。我们是否有任何开源工具可以为我做到这一点?

0 投票
2 回答
146 浏览

cloc - 在verilog中执行总是阻塞

这里我有verilog代码:

该程序在第 14 行显示错误。当“clk”和“en”都为高电平时,我想执行“always block”。但它不工作。

有什么建议么。

0 投票
2 回答
2032 浏览

diff - 如何计算代码行数并比较一个命令中的 LOC 差异?

我正在使用 cloc 1.60 。

我想知道是否可以在一个“cloc”命令中运行以下两个命令?

我必须计算更改线的百分比。我可以通过运行这两个命令来做到这一点。但是,如果可能的话,我更愿意在一个命令中同时运行它们。

谢谢

0 投票
1 回答
256 浏览

cloc - --diff doesn’t appear to compute deltas properly when comparing directories

We are using cloc.pl for analysis purpose. And cloc was proved very useful so far when we were just counting lines of code. But now we are trying to get diff between two branches.

Using the documentation mentioned in the link above, I am trying to get the diff:

This produces perfect result for a single file and reports modified lines correctly. The same is true for other values like removed, added and so on.

But now when I’m trying to accomplish same result for complete branch, i.e., all the files under folder, by issuing something like this:

Now comes the problem.

As you can see that when I am trying to issue the command at folder level, all modified number of comments shows 0. All we have is added or removed lines of code or files.

Not sure if I am missing something silly or any issue with cloc tool. I am using version 1.56.

0 投票
0 回答
506 浏览

cloc - CLOC - 计算代码行数,排除目录中除某些文件之外的所有内容

我正在使用cloc来计算我们的代码。我们需要排除目录中的所有内容,但具有特定格式的文件(如 *instru.c)除外。是否可以使用排除和包含文件来执行此操作?

0 投票
1 回答
699 浏览

git - 将 `cloc` 与 `git blame` 结合起来

cloc使人们能够计算每种语言每种类型(空白、注释或代码)存储在目录中的代码行数。

git blame使人们能够看到文件的哪一部分属于谁。

我正在寻找一种将两者结合起来的方法,以便获得一个(三维)矩阵,该矩阵列出每个用户每种语言每种类型的代码行。

是否有优雅的内置方法可以做到这一点,或者应该“废弃”每个用户的“责备”部分(通过运行grepafter git blame)并cloc在它们上运行以计算每个用户的表?


编辑

天真的方法(基于@Jubobs 的评论):

  1. 首先为目录中的每个文件生成一个责备文件(不必显式)。
  2. 运行 grepgrep "^[^(]*([^)]*)"以捕获所有用户的列表并使用 和 检索唯一sortuniq
  3. 对于每个用户:生成文件夹的卷影副本并使用 grep 进行 grep,grep "^[^(]*($user)"以便仅保留该用户的行。
  4. 在卷影副本上运行 cloc。
  5. 为每个用户执行此操作,存储结果并将它们一起输出。

这或多或少是如何生成所需的输出。但是正如人们所看到的,这种方法会进行大量复制(或至少存储在内存中),并且实际上可以通过运行文件一次而不是多次来计算每个用户的行数。


期望的输出

就像是:

0 投票
3 回答
25941 浏览

shell - CLOC 忽略/排除列表文件 (.clocignore)

编辑:请参阅底部的正确使用部分。 )

主要问题

你如何cloc使用它的--exclude-list-file=<file>选项?本质上,我试图给它一个.clocignore文件。

预期行为

cloc文档说明如下:

尝试

以下命令按预期工作:

但是这个命令不排除任何东西:

这是的内容myignorefile

cloc如果不存在就不会出错,所以我对它在做什么没有任何反馈myignorefile

(我正在运行 OS X 并cloc通过 Homebrew 安装 v1.60。)



正确使用

tl;dr ——@Raman 的答案中指定的方法既不需要指定,.clocignore也运行得更快。


在@Raman 的回答的推动下,我调查了源代码:cloc 实际上尊重--exclude-list-file但处理它的方式与--exclude-dir两种重要方式不同。

确切的文件名与“路径的一部分”

首先,while--exclude-dir将忽略路径包含指定字符串的任何文件,--exclude-list-file只会排除.clocignore.

如果你有这样的目录结构

而内容.clocignore只是

然后cloc --exclude-list-file=.clocignore .将成功忽略first.js但计数second.js。而cloc --exclude-dir=node_modules .将忽略两者。

为了处理这个,.clocignore需要包含这个:

表现

其次, 的源代码cloc似乎将 中指定的目录添加--exlude-dir到列表中,然后在计算文件之前查阅该列表。--exclude-list-file而在对文件进行计数会查询由发现的目录列表。

意思--exclude-list-file是,在忽略最终报告中的结果之前,仍然会处理可能很慢的文件。实验证明了这一点:在示例代码库中,使用 运行需要半秒,使用等效运行需要 11cloc秒。--exclude-dir--exclude-list-file

0 投票
0 回答
161 浏览

xcode - 计算 Xcode 目标中的代码行数

我以为这个问题会被问一百万次,但令我惊讶的是,我没有找到答案。我有一个有 3 个目标的 Xcode 项目。我使用 Perl 的 cloc 来计算整个 .xcodeproj 的代码行数。我想计算各个目标中的行数。Finder中项目的目标位置在哪里?