lib/linguist/heuristics.rb in github-linguist-4.5.3 vs lib/linguist/heuristics.rb in github-linguist-4.5.4
- old
+ new
@@ -170,17 +170,19 @@
elsif /^([c*][^a-z]| (subroutine|program)\s|\s*!)/i.match(data)
Language["FORTRAN"]
end
end
- disambiguate "F#", "Forth", "GLSL" do |data|
+ disambiguate "F#", "Forth", "GLSL", "Filterscript" do |data|
if /^(: |new-device)/.match(data)
Language["Forth"]
elsif /^\s*(#light|import|let|module|namespace|open|type)/.match(data)
Language["F#"]
- elsif /^\s*(#include|#pragma|precision|uniform|varying|void)/.match(data)
+ elsif /^\s*(#version|precision|uniform|varying|vec[234])/.match(data)
Language["GLSL"]
+ elsif /#include|#pragma\s+(rs|version)|__attribute__/.match(data)
+ Language["Filterscript"]
end
end
disambiguate "M", "MUF", "Mathematica", "Matlab", "Mercury", "Objective-C" do |data|
if ObjectiveCRegex.match(data)
@@ -276,7 +278,14 @@
else
Language["NewLisp"]
end
end
+ disambiguate "Rust", "RenderScript" do |data|
+ if data.include?("^(use |fn |mod |pub |macro_rules|impl|#!?\[)")
+ Language["Rust"]
+ elsif /#include|#pragma\s+(rs|version)|__attribute__/.match(data)
+ Language["RenderScript"]
+ end
+ end
end
end