Add SuperCollider grammar

plus a few minor language support updates including:

- recognize `sclang` and `scsynth` interpreters
- set `tm_scope: source.supercollider`
- reorder extensions so that `.sc` is primary
This commit is contained in:
Dan Buch
2015-11-08 06:25:32 -05:00
parent b4f94c7c25
commit d7b2826113
5 changed files with 18 additions and 3 deletions

3
.gitmodules vendored
View File

@@ -85,6 +85,9 @@
[submodule "vendor/grammars/language-shellscript"] [submodule "vendor/grammars/language-shellscript"]
path = vendor/grammars/language-shellscript path = vendor/grammars/language-shellscript
url = https://github.com/atom/language-shellscript url = https://github.com/atom/language-shellscript
[submodule "vendor/grammars/language-supercollider"]
path = vendor/grammars/language-supercollider
url = https://github.com/supercollider/language-supercollider
[submodule "vendor/grammars/language-yaml"] [submodule "vendor/grammars/language-yaml"]
path = vendor/grammars/language-yaml path = vendor/grammars/language-yaml
url = https://github.com/atom/language-yaml url = https://github.com/atom/language-yaml

View File

@@ -354,6 +354,8 @@ vendor/grammars/language-python:
vendor/grammars/language-shellscript: vendor/grammars/language-shellscript:
- source.shell - source.shell
- text.shell-session - text.shell-session
vendor/grammars/language-supercollider:
- source.supercollider
vendor/grammars/language-xbase: vendor/grammars/language-xbase:
- source.harbour - source.harbour
vendor/grammars/language-yaml: vendor/grammars/language-yaml:

View File

@@ -3336,9 +3336,12 @@ SuperCollider:
type: programming type: programming
color: "#46390b" color: "#46390b"
extensions: extensions:
- .scd
- .sc - .sc
tm_scope: none - .scd
interpreters:
- sclang
- scsynth
tm_scope: source.supercollider
ace_mode: text ace_mode: text
Swift: Swift:

View File

@@ -57,6 +57,7 @@ class TestLanguage < Minitest::Test
assert_equal Language['Shell'], Language.find_by_alias('sh') assert_equal Language['Shell'], Language.find_by_alias('sh')
assert_equal Language['Shell'], Language.find_by_alias('shell') assert_equal Language['Shell'], Language.find_by_alias('shell')
assert_equal Language['Shell'], Language.find_by_alias('zsh') assert_equal Language['Shell'], Language.find_by_alias('zsh')
assert_equal Language['SuperCollider'], Language.find_by_alias('supercollider')
assert_equal Language['TeX'], Language.find_by_alias('tex') assert_equal Language['TeX'], Language.find_by_alias('tex')
assert_equal Language['TypeScript'], Language.find_by_alias('ts') assert_equal Language['TypeScript'], Language.find_by_alias('ts')
assert_equal Language['VimL'], Language.find_by_alias('vim') assert_equal Language['VimL'], Language.find_by_alias('vim')
@@ -119,6 +120,7 @@ class TestLanguage < Minitest::Test
assert_equal 'vim', Language['VimL'].search_term assert_equal 'vim', Language['VimL'].search_term
assert_equal 'jsp', Language['Java Server Pages'].search_term assert_equal 'jsp', Language['Java Server Pages'].search_term
assert_equal 'rst', Language['reStructuredText'].search_term assert_equal 'rst', Language['reStructuredText'].search_term
assert_equal 'supercollider', Language['SuperCollider'].search_term
end end
def test_popular def test_popular
@@ -138,6 +140,7 @@ class TestLanguage < Minitest::Test
assert_equal :programming, Language['Ruby'].type assert_equal :programming, Language['Ruby'].type
assert_equal :programming, Language['TypeScript'].type assert_equal :programming, Language['TypeScript'].type
assert_equal :programming, Language['Makefile'].type assert_equal :programming, Language['Makefile'].type
assert_equal :programming, Language['SuperCollider'].type
end end
def test_markup def test_markup
@@ -227,7 +230,8 @@ class TestLanguage < Minitest::Test
"python" => "Python", "python" => "Python",
"python2" => "Python", "python2" => "Python",
"python3" => "Python", "python3" => "Python",
"sbcl" => "Common Lisp" "sbcl" => "Common Lisp",
"sclang" => "SuperCollider"
}.each do |interpreter, language| }.each do |interpreter, language|
assert_equal [Language[language]], Language.find_by_interpreter(interpreter) assert_equal [Language[language]], Language.find_by_interpreter(interpreter)
end end
@@ -339,6 +343,7 @@ class TestLanguage < Minitest::Test
assert Language['Perl'].extensions.include?('.pl') assert Language['Perl'].extensions.include?('.pl')
assert Language['Python'].extensions.include?('.py') assert Language['Python'].extensions.include?('.py')
assert Language['Ruby'].extensions.include?('.rb') assert Language['Ruby'].extensions.include?('.rb')
assert Language['SuperCollider'].extensions.include?('.scd')
end end
def test_primary_extension def test_primary_extension
@@ -349,6 +354,7 @@ class TestLanguage < Minitest::Test
assert_equal '.coffee', Language['CoffeeScript'].primary_extension assert_equal '.coffee', Language['CoffeeScript'].primary_extension
assert_equal '.t', Language['Turing'].primary_extension assert_equal '.t', Language['Turing'].primary_extension
assert_equal '.ts', Language['TypeScript'].primary_extension assert_equal '.ts', Language['TypeScript'].primary_extension
assert_equal '.sc', Language['SuperCollider'].primary_extension
end end
def test_eql def test_eql