diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index d2cc8655..1a04727b 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -637,6 +637,14 @@ Smarty: extensions: - .tpl +Standard ML: + lexer: OCaml + aliases: + - sml + extensions: + - .sig + - .sml + SuperCollider: lexer: Text only extensions: diff --git a/lib/linguist/mimes.yml b/lib/linguist/mimes.yml index 5c476045..06a80991 100644 --- a/lib/linguist/mimes.yml +++ b/lib/linguist/mimes.yml @@ -50,3 +50,4 @@ image/x-icns @icns text/cache-manifest @manifest text/plain @cu,cxx text/x-nimrod @nim +text/x-ocaml @ml,mli,mll,mly,sig,sml diff --git a/test/test_blob.rb b/test/test_blob.rb index 3bd25e93..a573e79f 100644 --- a/test/test_blob.rb +++ b/test/test_blob.rb @@ -224,6 +224,11 @@ class TestBlob < Test::Unit::TestCase assert_equal Language['Ruby'], blob("wrong_shebang.rb").language assert_equal Language['Text'], blob("octocat.png").language + # ML + assert_equal Language['OCaml'], blob("Foo.ml").language + assert_equal Language['Standard ML'], blob("Foo.sig").language + assert_equal Language['Standard ML'], blob("Foo.sml").language + # Config files assert_equal Language['INI'], blob(".gitconfig").language assert_equal Language['Shell'], blob(".bash_profile").language diff --git a/test/test_language.rb b/test/test_language.rb index c31c73af..f83676af 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -73,6 +73,7 @@ class TestLanguage < Test::Unit::TestCase assert_equal Lexer['NumPy'], Language['NumPy'].lexer assert_equal Lexer['OCaml'], Language['F#'].lexer assert_equal Lexer['OCaml'], Language['OCaml'].lexer + assert_equal Lexer['OCaml'], Language['Standard ML'].lexer assert_equal Lexer['Objective-C'], Language['Objective-C'].lexer assert_equal Lexer['Objective-J'], Language['Objective-J'].lexer assert_equal Lexer['Ooc'], Language['ooc'].lexer diff --git a/test/test_mime.rb b/test/test_mime.rb index 3bc4c626..6efb22f7 100644 --- a/test/test_mime.rb +++ b/test/test_mime.rb @@ -46,6 +46,9 @@ class TestMime < Test::Unit::TestCase assert_equal 'text/cache-manifest', Mime.mime_for('.manifest') assert_equal 'text/html', Mime.mime_for('.html') assert_equal 'text/nimrod', Mime.mime_for('.nim') + assert_equal 'text/ocaml', Mime.mime_for('.ml') + assert_equal 'text/ocaml', Mime.mime_for('.sig') + assert_equal 'text/ocaml', Mime.mime_for('.sml') assert_equal 'text/plain', Mime.mime_for('.c') assert_equal 'text/plain', Mime.mime_for('.cc') assert_equal 'text/plain', Mime.mime_for('.cpp') @@ -160,6 +163,8 @@ class TestMime < Test::Unit::TestCase assert Mime.text?('.rb') assert Mime.text?('.sc') assert Mime.text?('.sh') + assert Mime.text?('.sig') + assert Mime.text?('.sml') assert Mime.text?('.src') assert Mime.text?('.tcl') assert Mime.text?('.texi')