GitHub、プログラミング言語識別ライブラリ「Linguist」をオープンソースで公開

 GitHubは6月27日、ファイル内に記述されているプログラム言語を識別するライブラリ「Linguist 1.0」を公開した。ライセンスはMIT License。

 Linguistは、ファイルで使われているプログラム言語を識別する目的でGitHubが開発したライブラリ。ファイルの拡張子で言語を判別するだけでなく、拡張子のないスクリプトファイルや、C/C++/Objective-Cのような互換性を持つ言語については中身を調べる「ディープコンテンツインスペクション」により言語を検出する。これによって言語を検出し、Pythonシンタックスハイライター「Pygments」向けのRubyラッパー技術「Albino」によりシンタックスハイライト処理を行わせる、といった処理が可能。

 このほか、MIMEタイプ検出、バイナリファイルのチェック、使われている言語のグラフ生成などの機能もある。ライセンスはMIT License。Linguistプロジェクトページでソースコードを入手できる。

GitHub
http://github.com/

Linguist
https://github.com/github/linguist