lib/linguist/heuristics.rb in github-linguist-2.10.9 vs lib/linguist/heuristics.rb in github-linguist-2.10.10

- old
+ new

@@ -17,10 +17,13 @@ disambiguate_c(data, languages) end if languages.all? { |l| ["Perl", "Prolog"].include?(l) } disambiguate_pl(data, languages) end + if languages.all? { |l| ["TypeScript", "XML"].include?(l) } + disambiguate_ts(data, languages) + end end end # .h extensions are ambigious between C, C++, and Objective-C. # We want to shortcut look for Objective-C _and_ now C++ too! @@ -31,12 +34,23 @@ matches << Language["Objective-C"] if data.include?("@interface") matches << Language["C++"] if data.include?("#include <cstdint>") matches end - def self_disambiguate_pl(data, languages) + def self.disambiguate_pl(data, languages) matches = [] matches << Language["Prolog"] if data.include?(":-") + matches << Language["Perl"] if data.include?("use strict") + matches + end + + def self.disambiguate_ts(data, languages) + matches = [] + if (data.include?("</translation>")) + matches << Language["XML"] + else + matches << Language["TypeScript"] + end matches end def self.active? !!ACTIVE