From 06395fa816323e52a1aad2a5845b1b4163ecf73a Mon Sep 17 00:00:00 2001 From: David Rankin Date: Wed, 15 Feb 2012 19:42:53 +0000 Subject: [PATCH 1/2] Added support for Powershell files (.ps1 and .psm1) using a 'Text only' lexer --- lib/linguist/languages.yml | 9 +++++++++ test/test_language.rb | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index cf5ce08f..bfa45297 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -761,6 +761,15 @@ Perl: - .psgi - .t +Powershell: + type: programming + lexer: Text only + aliases: + - posh + extensions: + - .ps1 + - .psm1 + Prolog: type: programming extensions: diff --git a/test/test_language.rb b/test/test_language.rb index 6ae48022..acbc27fb 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -100,6 +100,7 @@ class TestLanguage < Test::Unit::TestCase assert_equal Language['Literate Haskell'], Language.find_by_alias('lhs') assert_equal Language['Literate Haskell'], Language.find_by_alias('literate-haskell') assert_equal Language['Parrot Internal Representation'], Language.find_by_alias('pir') + assert_equal Language['Powershell'], Language.find_by_alias('posh') assert_equal Language['Puppet'], Language.find_by_alias('puppet') assert_equal Language['Pure Data'], Language.find_by_alias('pure-data') assert_equal Language['Raw token data'], Language.find_by_alias('raw') @@ -183,6 +184,7 @@ class TestLanguage < Test::Unit::TestCase def test_programming assert_equal :programming, Language['JavaScript'].type assert_equal :programming, Language['Perl'].type + assert_equal :programming, Language['Powershell'].type assert_equal :programming, Language['Python'].type assert_equal :programming, Language['Ruby'].type end @@ -235,6 +237,8 @@ class TestLanguage < Test::Unit::TestCase assert_equal Language['PHP'], Language.find_by_extension('php3') assert_equal Language['PHP'], Language.find_by_extension('php4') assert_equal Language['PHP'], Language.find_by_extension('php5') + assert_equal Language['Powershell'], Language.find_by_extension('psm1') + assert_equal Language['Powershell'], Language.find_by_extension('ps1') assert_nil Language.find_by_extension('.kt') end From 8b3e1ce86d82708e47b81900594f7a474164ca1b Mon Sep 17 00:00:00 2001 From: David Rankin Date: Wed, 15 Feb 2012 19:44:14 +0000 Subject: [PATCH 2/2] Added example Powershell files to the test fixtures folder --- test/fixtures/hello.ps1 | 2 ++ test/fixtures/hello.psm1 | 5 +++++ 2 files changed, 7 insertions(+) create mode 100644 test/fixtures/hello.ps1 create mode 100644 test/fixtures/hello.psm1 diff --git a/test/fixtures/hello.ps1 b/test/fixtures/hello.ps1 new file mode 100644 index 00000000..eca1e76c --- /dev/null +++ b/test/fixtures/hello.ps1 @@ -0,0 +1,2 @@ +# Hello world in powershell +Write-Host 'Hello World' \ No newline at end of file diff --git a/test/fixtures/hello.psm1 b/test/fixtures/hello.psm1 new file mode 100644 index 00000000..3db82f01 --- /dev/null +++ b/test/fixtures/hello.psm1 @@ -0,0 +1,5 @@ +# Hello World powershell module + +function hello() { + Write-Host 'Hello World' +} \ No newline at end of file