pygments.rb 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -66,7 +66,8 @@ class Mentos(object):
66
66
  - 'lexer' ("python")
67
67
  - 'mimetype' ("text/x-ruby")
68
68
  - 'filename' ("yeaaah.py")
69
- - 'code' ("import derp" etc)
69
+
70
+ The code argument should be a string, such as "import derp".
70
71
 
71
72
  The code guessing method is not especially great. It is advised that
72
73
  clients pass in a literal lexer name whenever possible, which provides
@@ -101,7 +102,7 @@ class Mentos(object):
101
102
  return lexers.guess_lexer(code, **inputs)
102
103
 
103
104
  else:
104
- _write_error("No lexer")
105
+ return None
105
106
 
106
107
 
107
108
  def highlight_text(self, code, lexer, formatter_name, args, kwargs):
@@ -186,7 +187,7 @@ class Mentos(object):
186
187
  _write_error("No lexer")
187
188
 
188
189
  else:
189
- _write_error("No lexer")
190
+ _write_error("Invalid method " + method)
190
191
 
191
192
  return res
192
193
 
@@ -294,7 +295,7 @@ class Mentos(object):
294
295
  text = sys.stdin.read(_bytes)
295
296
 
296
297
  # Sanity check the return.
297
- if method == 'highlight':
298
+ if _bytes:
298
299
  start_id, end_id = self._get_ids(text)
299
300
  text = self._check_and_return_text(text, start_id, end_id)
300
301
 
@@ -158,7 +158,13 @@ module Pygments
158
158
  opts = {}
159
159
  end
160
160
 
161
- mentos(:lexer_name_for, args, opts)
161
+ if args.last.is_a?(String)
162
+ code = args.pop
163
+ else
164
+ code = nil
165
+ end
166
+
167
+ mentos(:lexer_name_for, args, opts, code)
162
168
  end
163
169
 
164
170
  # Public: Highlight code.
@@ -274,7 +280,7 @@ module Pygments
274
280
  if not (start_id == id and end_id == id)
275
281
  @log.error "[#{Time.now.iso8601}] ID's did not match. Aborting."
276
282
  stop "ID's did not match. Aborting."
277
- raise MentosError, "ID's did not match. Aborting. " + res.to_s
283
+ raise MentosError, "ID's did not match. Aborting."
278
284
  else
279
285
  # We're good. Remove the padding
280
286
  res = res[10..-11]
@@ -329,9 +335,9 @@ module Pygments
329
335
 
330
336
  # Sanity check the size
331
337
  if not size_check(size)
332
- @log.error "[#{Time.now.iso8601}] Size returned from Mentos invalid."
333
- stop "Size returned from Mentos invalid."
334
- raise MentosError, "Size returned from Mentos invalid."
338
+ @log.error "[#{Time.now.iso8601}] Size returned from mentos.py invalid."
339
+ stop "Size returned from mentos.py invalid."
340
+ raise MentosError, "Size returned from mentos.py invalid."
335
341
  end
336
342
 
337
343
  # Read the amount of bytes we should be expecting. We first
@@ -1,3 +1,3 @@
1
1
  module Pygments
2
- VERSION = '0.3.0'
2
+ VERSION = '0.3.1'
3
3
  end
@@ -171,6 +171,10 @@ class PygmentsLexerTest < Test::Unit::TestCase
171
171
  assert_equal 'rb', P.lexer_name_for(RUBY_CODE, :filename => 'test.rb')
172
172
  end
173
173
 
174
+ def test_lexer_by_content
175
+ assert_equal 'rb', P.lexer_name_for(RUBY_CODE)
176
+ end
177
+
174
178
  def test_lexer_by_nothing
175
179
  assert_raise MentosError do
176
180
  P.lexer_name_for(:invalid => true)
metadata CHANGED
@@ -1,81 +1,72 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: pygments.rb
3
- version: !ruby/object:Gem::Version
4
- hash: 19
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.1
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 3
9
- - 0
10
- version: 0.3.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Aman Gupta
14
9
  - Ted Nyman
15
10
  autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
-
19
- date: 2012-09-26 00:00:00 Z
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
13
+ date: 2012-09-26 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
22
16
  name: yajl-ruby
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
25
18
  none: false
26
- requirements:
19
+ requirements:
27
20
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 19
30
- segments:
31
- - 1
32
- - 1
33
- - 0
21
+ - !ruby/object:Gem::Version
34
22
  version: 1.1.0
35
23
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: posix-spawn
39
24
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: 1.1.0
31
+ - !ruby/object:Gem::Dependency
32
+ name: posix-spawn
33
+ requirement: !ruby/object:Gem::Requirement
41
34
  none: false
42
- requirements:
35
+ requirements:
43
36
  - - ~>
44
- - !ruby/object:Gem::Version
45
- hash: 31
46
- segments:
47
- - 0
48
- - 3
49
- - 6
37
+ - !ruby/object:Gem::Version
50
38
  version: 0.3.6
51
39
  type: :runtime
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: rake-compiler
55
40
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
41
+ version_requirements: !ruby/object:Gem::Requirement
57
42
  none: false
58
- requirements:
43
+ requirements:
59
44
  - - ~>
60
- - !ruby/object:Gem::Version
61
- hash: 15
62
- segments:
63
- - 0
64
- - 7
65
- - 6
45
+ - !ruby/object:Gem::Version
46
+ version: 0.3.6
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake-compiler
49
+ requirement: !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
66
54
  version: 0.7.6
67
55
  type: :development
68
- version_requirements: *id003
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ~>
61
+ - !ruby/object:Gem::Version
62
+ version: 0.7.6
69
63
  description: pygments.rb exposes the pygments syntax highlighter to Ruby
70
- email:
64
+ email:
71
65
  - aman@tmm1.net
72
66
  executables: []
73
-
74
67
  extensions: []
75
-
76
68
  extra_rdoc_files: []
77
-
78
- files:
69
+ files:
79
70
  - .gitignore
80
71
  - Gemfile
81
72
  - README.md
@@ -474,36 +465,26 @@ files:
474
465
  - vendor/simplejson/simplejson/tool.py
475
466
  homepage: http://github.com/tmm1/pygments.rb
476
467
  licenses: []
477
-
478
468
  post_install_message:
479
469
  rdoc_options: []
480
-
481
- require_paths:
470
+ require_paths:
482
471
  - lib
483
- required_ruby_version: !ruby/object:Gem::Requirement
472
+ required_ruby_version: !ruby/object:Gem::Requirement
484
473
  none: false
485
- requirements:
486
- - - ">="
487
- - !ruby/object:Gem::Version
488
- hash: 3
489
- segments:
490
- - 0
491
- version: "0"
492
- required_rubygems_version: !ruby/object:Gem::Requirement
474
+ requirements:
475
+ - - ! '>='
476
+ - !ruby/object:Gem::Version
477
+ version: '0'
478
+ required_rubygems_version: !ruby/object:Gem::Requirement
493
479
  none: false
494
- requirements:
495
- - - ">="
496
- - !ruby/object:Gem::Version
497
- hash: 3
498
- segments:
499
- - 0
500
- version: "0"
480
+ requirements:
481
+ - - ! '>='
482
+ - !ruby/object:Gem::Version
483
+ version: '0'
501
484
  requirements: []
502
-
503
485
  rubyforge_project:
504
- rubygems_version: 1.8.24
486
+ rubygems_version: 1.8.23
505
487
  signing_key:
506
488
  specification_version: 3
507
489
  summary: pygments wrapper for ruby
508
490
  test_files: []
509
-