diff --git a/lib/linguist/heuristics.rb b/lib/linguist/heuristics.rb index e342e616..2002d51b 100644 --- a/lib/linguist/heuristics.rb +++ b/lib/linguist/heuristics.rb @@ -155,12 +155,12 @@ module Linguist end disambiguate "AsciiDoc", "AGS Script", "Public Key" do |data| - if /^[=-]+(\s|\n)|{{[A-Za-z]/.match(data) + if /^(----[- ]BEGIN|ssh-(rsa|dss)) /.match(data) + Language["Public Key"] + elsif /^[=-]+(\s|\n)|{{[A-Za-z]/.match(data) Language["AsciiDoc"] elsif /^(\/\/.+|((import|export)\s+)?(function|int|float|char)\s+((room|repeatedly|on|game)_)?([A-Za-z]+[A-Za-z_0-9]+)\s*[;\(])/.match(data) Language["AGS Script"] - elsif /^-----BEGIN/.match(data) - Language["Public Key"] end end diff --git a/test/test_heuristics.rb b/test/test_heuristics.rb index b3197c69..4a156445 100644 --- a/test/test_heuristics.rb +++ b/test/test_heuristics.rb @@ -77,7 +77,7 @@ class TestHeuristcs < Minitest::Test assert_heuristics({ "AsciiDoc" => "AsciiDoc/list.asc", "AGS Script" => "AGS Script/GlobalScript.asc", - "Public Key" => "Public Key/sunCert.asc" + "Public Key" => all_fixtures("Public Key", "*.asc") }) end