diff options
author | murphy <murphy@rubychan.de> | 2008-08-11 12:01:17 +0000 |
---|---|---|
committer | murphy <murphy@rubychan.de> | 2008-08-11 12:01:17 +0000 |
commit | 13fba921998464920d06fc7f014a7e6589d83d6c (patch) | |
tree | 23db734fa598221c4c8b08c17f78c10fbec1adaf /lib | |
parent | ce3a4f1b699fb37eead1058a3be0593bbbf306fc (diff) | |
download | coderay-13fba921998464920d06fc7f014a7e6589d83d6c.tar.gz |
Fixed FileType: .html.erb is now recognized as rhtml.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/coderay/helpers/file_type.rb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/coderay/helpers/file_type.rb b/lib/coderay/helpers/file_type.rb index 8d86e57..75c691f 100644 --- a/lib/coderay/helpers/file_type.rb +++ b/lib/coderay/helpers/file_type.rb @@ -34,12 +34,12 @@ module FileType # That means you can get filetypes from files that don't exist. def [] filename, read_shebang = false name = File.basename filename - ext = File.extname name - ext.sub!(/^\./, '') # delete the leading dot + ext = File.extname(name).sub(/^\./, '') # from last dot, delete the leading dot + ext2 = filename[/\.(.*)/, 1] # from first dot type = - TypeFromExt[ext] || TypeFromExt[ext.downcase] || + (TypeFromExt[ext2.downcase] if ext2) || TypeFromName[name] || TypeFromName[name.downcase] type ||= shebang(filename) if read_shebang @@ -94,6 +94,7 @@ module FileType 'xhtml' => :xhtml, 'raydebug' => :debug, 'rhtml' => :rhtml, + 'html.erb' => :rhtml, 'ss' => :scheme, 'sch' => :scheme, 'yaml' => :yaml, @@ -173,6 +174,7 @@ class TC_FileType < Test::Unit::TestCase assert_equal :xhtml, FileType['test.xhtml'] assert_equal :xhtml, FileType['test.html.xhtml'] assert_equal :rhtml, FileType['_form.rhtml'] + assert_equal :rhtml, FileType['_form.html.erb'] end def test_yaml |