mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	#1638 New heuristics to distinguish between AsciiDoc, AGS Script, and Public Key.
This commit is contained in:
		| @@ -150,8 +150,14 @@ module Linguist | ||||
|       end | ||||
|     end | ||||
|  | ||||
|     disambiguate "AsciiDoc", "AGS Script" do |data| | ||||
|       Language["AsciiDoc"] if /^=+(\s|\n)/.match(data) | ||||
|     disambiguate "AsciiDoc", "AGS Script", "Public Key" do |data| | ||||
|       if /^=+(\s|\n)/.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"] | ||||
|       else /^-----BEGIN/.match(data) | ||||
|         Language["Public Key"] | ||||
|       end | ||||
|     end | ||||
|  | ||||
|     disambiguate "FORTRAN", "Forth" do |data| | ||||
|   | ||||
| @@ -68,11 +68,12 @@ class TestHeuristcs < Minitest::Test | ||||
|     }) | ||||
|   end | ||||
|  | ||||
|   # Candidate languages = ["AGS Script", "AsciiDoc"] | ||||
|   def test_asc_asciidoc_by_heuristics | ||||
|   # Candidate languages = ["AGS Script", "AsciiDoc", "Public Key"] | ||||
|   def test_asc_by_heuristics | ||||
|     assert_heuristics({ | ||||
|       "AsciiDoc" => "AsciiDoc/list.asc", | ||||
|       "AGS Script" => nil | ||||
|       "AGS Script" => "AGS Script/GlobalScript.asc", | ||||
|       "Public Key" => "Public Key/sunCert.asc" | ||||
|     }) | ||||
|   end | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user