İlk olarak, Dilbilimci geçersiz kılmaları kullanarak arşivinizdeki dosyalar için tespit edilen dili geçersiz kılabileceğinizi bilin .
Şimdi kısaca,
- Her bir depo, dil istatistiklerinden birinci dil ile etiketlenir .
- Dil istatistikleri, tespit edilen her programlama veya biçimlendirme dili için dosyaların toplam boyutunu sayar . Sağlanan, belgeler ve oluşturulan dosyalar sayılmaz.
- Her dosyanın dili, açık kaynak projesi Linguist tarafından tespit edilir .
Dilbilimci dilleri nasıl algılar?
Dilbilimci , sırayla aşağıdaki stratejilere güvenir ve mükemmel bir eşleşme bulur bulmaz dili döndürür (tek bir dille strateji döndürülür).
- Arayın Emacs ve Vim kipsatırlarının .
- Bilinen dosya adı. Bazı dosya adları belirli dillerle ilişkilidir (düşünün
Makefile).
- Bir mesele ara. Shebang içeren bir dosya
#!/bin/bash Kabuk olarak sınıflandırılır.
- Bilinen dosya uzantısı. Dillerin kendileriyle ilişkili bir dizi uzantıları vardır. Bununla birlikte, bu strateji ile birçok çelişki var. Çelişkili sonuçlar (C ++, C ve Objective-C'yi düşünün
.h) sonraki stratejiler tarafından iyileştirilir.
- Bir dizi sezgisel kural . Dili denemek ve tanımlamak için genellikle dosyaların içeriği üzerinde normal ifadelere güvenirler (örn.,
^[^#]+:-Prolog için ).
- Örnek dosyalar üzerinde eğitilmiş saf bir Bayes sınıflandırıcı . Son strateji, en düşük doğruluk. Bayes sınıflandırıcı her zaman girdi olarak bir dil alt kümesini alır; tüm diller arasında sınıflandırılması amaçlanmamıştır. Sınıflandırıcı tarafından bulunan en iyi eşleşme döndürülür.
Sağlanmamış dosyalar ve belge dosyaları nelerdir?
Dilbilimci, bazı dosyaları satıcı olarak kabul eder , yani dil istatistiklerine dahil edilmemişlerdir. Bunlar, jQuery gibi üçüncü taraf kitaplıklarını içerir ve vendor.ymlyapılandırma dosyasında tanımlanır . Dilbilimci geçersiz kılmaları kullanarak deponuzdaki dosyaları satabilir veya kaldırabilirsiniz .
Benzer şekilde, dokümantasyon dosyaları da tanımlanır documentation.ymlve Dilbilimci geçersiz kılmalar kullanılarak değiştirilebilir .
Oluşturulan dosyalar nasıl tespit edilir?
Dilbilimci , oluşturulan dosyaları tespit etmek için dosyaların hem yollarını hem de içeriğini kullanarak basit kurallara güvenir . Oluşturulan dosyalar, dil istatistiklerinde sayılmaz ve github.com'daki farklarda gösterilmez.
Programlama ve biçimlendirme dilleri ne olacak?
Dilbilimci'de her dile bir tür verilir. Bu türler ana yapılandırma dosyasında bulunabilir languages.yml. İstatistiklerde yalnızca programlama ve biçimlendirme dilleri sayılır.