2

我正在使用 github 的语言学家来识别未知的源代码文件。在 a 之后从命令行运行它gem install github-linguist非常慢。我正在使用 python 的subprocess模块对现有的 Ubuntu 14 安装进行命令行调用。

针对空文件运行:linguist __init__.py大约需要 2 秒(其他文件的结果类似)。我认为这完全来自 Ruby 的启动时间。正如@MartinKonecny 指出的那样,它似乎是语言学家程序本身。

有什么方法可以加快这个过程——或者把调用捆绑在一起吗?

4

1 回答 1

2

一种可能性是仅调整linguist程序(https://github.com/github/linguist/blob/master/bin/linguist)以在命令行上采用多个路径。当然,它需要使用一点 Ruby 进行处理,但它可以传递多个文件,而无需每次都使用 Linguist 的启动开销。

这么简单的脚本就足够了:

require 'linguist/file_blob'
ARGV.each do |path|
  blob = Linguist::FileBlob.new(path, Dir.pwd)
  # print out blob.name, blob.language, blob.sloc, etc.
end
于 2015-02-19T04:48:59.433 回答