@@ -3,9 +3,9 @@ namespace :generate do
3
3
task :scanner do
4
4
raise 'I need a scanner name; use NAME=lang' unless scanner_class_name = ENV [ 'NAME' ]
5
5
raise "Invalid lang: #{ scanner_class_name } ; use NAME=lang." unless /\A \w +\z / === scanner_class_name
6
- require 'active_support'
6
+ require 'active_support/all '
7
7
lang = scanner_class_name . underscore
8
- class_name = scanner_class_name . classify
8
+ class_name = scanner_class_name . camelize
9
9
10
10
def scanner_file_for_lang lang
11
11
File . join ( LIB_ROOT , 'coderay' , 'scanners' , lang + '.rb' )
@@ -25,6 +25,7 @@ namespace :generate do
25
25
File . open ( scanner_file , 'w' ) do |file |
26
26
file . write base_scanner .
27
27
sub ( /class \w + < Scanner/ , "class #{ class_name } < Scanner" ) .
28
+ sub ( '# Scanner for JSON (JavaScript Object Notation).' , "# A scanner for #{ scanner_class_name } ." ) .
28
29
sub ( /register_for :\w +/ , "register_for :#{ lang } " ) .
29
30
sub ( /file_extension '\S +'/ , "file_extension '#{ ENV . fetch ( 'EXT' , lang ) . split ( ',' ) . first } '" )
30
31
end
@@ -37,9 +38,9 @@ namespace :generate do
37
38
test_suite_file = File . join ( test_dir , 'suite.rb' )
38
39
unless File . exist? test_suite_file
39
40
puts "Creating test suite file #{ test_suite_file } ..."
40
- base_suite = File . read File . join ( test_dir , '..' , 'json ' , 'suite.rb' )
41
+ base_suite = File . read File . join ( test_dir , '..' , 'ruby ' , 'suite.rb' )
41
42
File . open ( test_suite_file , 'w' ) do |file |
42
- file . write base_suite . sub ( /class JSON / , "class #{ class_name } " )
43
+ file . write base_suite . sub ( /class Ruby / , "class #{ class_name } " )
43
44
end
44
45
end
45
46
@@ -59,17 +60,13 @@ namespace :generate do
59
60
end
60
61
end
61
62
62
- print 'Add to SVN ? [Y|n] '
63
+ print 'Add to git ? [Y|n] '
63
64
answer = $stdin. gets . chomp . downcase
64
65
if answer . empty? || answer == 'y'
65
- sh "svn add #{ scanner_file } "
66
- sh "svn add #{ test_dir } "
67
- svn_ignore = <<-SVN_IGNORE
68
- *.actual.*
69
- *.expected.html
70
- *.debug.diff*
71
- SVN_IGNORE
72
- sh "svn pset svn:ignore '#{ svn_ignore } ' #{ test_dir } "
66
+ sh "git add #{ scanner_file } "
67
+ cd File . join ( 'test' , 'scanners' ) do
68
+ sh "git add #{ lang } "
69
+ end
73
70
end
74
71
end
75
72
end
0 commit comments