GitHubには各リポジトリがどういった言語で構成されているのかを表示する機能がある(↓こういうの)
デフォルトでGitHubがいい感じにしてくれるが、標準から外れたディレクトリ構成になっていると、意図しない感じになったりすることがある。具体的には、標準とは違う場所に
- 依存ライブラリが直接置かれている
- ドキュメントが書かれている
と言語の割合が狂う。例えば、↑の画像で引用したリポジトリではJavaScriptのモジュールを作っているが、標準とは少し違う場所にドキュメントを置いている都合で、意図せずCSSやHTMLが合算されてしまっている。気にしなければいいという話ではあるのだが、どうしても気持ち悪い場合はリポジトリルートに .gitattributes というファイルを用意して
special-vendored-path/* linguist-vendored
project-docs/* linguist-documentation
みたいにすることで解決することができる。こうすると special-vendored-path に入っているファイルは言語割合に含まれないだけでなく、GitHub上のdiffも閉じられる。 project-docs に入っているファイルは、単に言語割合に含まれなくなる。
そんな感じで設定したら無事にJavaScript 100%にすることができた。
参照
-
https://github.com/github/linguist
GitHubは言語割合機能をこのlinguist gemを使って実現しており、この記事で書いたことは全てREADMEに書いてある。
-
https://github.com/yuku-t/textcomplete
今回問題になっているリポジトリ