mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Add colorize
This commit is contained in:
@@ -132,5 +132,10 @@ module Linguist
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def colorize
|
||||||
|
return if !text? || large?
|
||||||
|
lexer.colorize(data)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -77,6 +77,10 @@ module Linguist
|
|||||||
!popular?
|
!popular?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def colorize(text)
|
||||||
|
lexer.colorize(text)
|
||||||
|
end
|
||||||
|
|
||||||
def ==(other)
|
def ==(other)
|
||||||
eql?(other)
|
eql?(other)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
require 'albino'
|
||||||
require 'yaml'
|
require 'yaml'
|
||||||
|
|
||||||
module Linguist
|
module Linguist
|
||||||
@@ -21,6 +22,10 @@ module Linguist
|
|||||||
aliases.first
|
aliases.first
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def colorize(text)
|
||||||
|
Albino.colorize(text, to_s)
|
||||||
|
end
|
||||||
|
|
||||||
def ==(other)
|
def ==(other)
|
||||||
eql?(other)
|
eql?(other)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -170,4 +170,13 @@ class TestBlob < Test::Unit::TestCase
|
|||||||
assert_equal nil, blob("script.foo").shebang_language
|
assert_equal nil, blob("script.foo").shebang_language
|
||||||
assert_equal nil, blob("foo.rb").shebang_language
|
assert_equal nil, blob("foo.rb").shebang_language
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_colorize
|
||||||
|
assert_equal <<-HTML, blob("foo.rb").colorize
|
||||||
|
<div class="highlight"><pre><span class="k">module</span> <span class="nn">Foo</span>
|
||||||
|
<span class="k">end</span>
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
HTML
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -95,4 +95,20 @@ class TestLanguage < Test::Unit::TestCase
|
|||||||
assert Language['Assembly'].unpopular?
|
assert Language['Assembly'].unpopular?
|
||||||
assert Language['Brainfuck'].unpopular?
|
assert Language['Brainfuck'].unpopular?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_colorize
|
||||||
|
assert_equal <<-HTML, Language['Text'].colorize("Hello")
|
||||||
|
<div class="highlight"><pre>Hello
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
HTML
|
||||||
|
|
||||||
|
assert_equal <<-HTML, Language['Ruby'].colorize("def foo\n 'foo'\nend\n")
|
||||||
|
<div class="highlight"><pre><span class="k">def</span> <span class="nf">foo</span>
|
||||||
|
<span class="s1">'foo'</span>
|
||||||
|
<span class="k">end</span>
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
HTML
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -34,4 +34,20 @@ class TestLexer < Test::Unit::TestCase
|
|||||||
assert !Lexer['Ruby'].eql?(Lexer['Python'])
|
assert !Lexer['Ruby'].eql?(Lexer['Python'])
|
||||||
assert !Lexer['Ruby'].eql?(Lexer.new('Ruby'))
|
assert !Lexer['Ruby'].eql?(Lexer.new('Ruby'))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_colorize
|
||||||
|
assert_equal <<-HTML, Lexer['Text only'].colorize("Hello")
|
||||||
|
<div class="highlight"><pre>Hello
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
HTML
|
||||||
|
|
||||||
|
assert_equal <<-HTML, Lexer['Ruby'].colorize("def foo\n 'foo'\nend\n")
|
||||||
|
<div class="highlight"><pre><span class="k">def</span> <span class="nf">foo</span>
|
||||||
|
<span class="s1">'foo'</span>
|
||||||
|
<span class="k">end</span>
|
||||||
|
</pre>
|
||||||
|
</div>
|
||||||
|
HTML
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user