Skip to content

Commit af5d3ac

Browse files
committed
upgrade generate:scanner task
1 parent 8fa3e19 commit af5d3ac

File tree

1 file changed

+10
-13
lines changed

1 file changed

+10
-13
lines changed

rake_tasks/generator.rake

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ namespace :generate do
33
task :scanner do
44
raise 'I need a scanner name; use NAME=lang' unless scanner_class_name = ENV['NAME']
55
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'
77
lang = scanner_class_name.underscore
8-
class_name = scanner_class_name.classify
8+
class_name = scanner_class_name.camelize
99

1010
def scanner_file_for_lang lang
1111
File.join(LIB_ROOT, 'coderay', 'scanners', lang + '.rb')
@@ -25,6 +25,7 @@ namespace :generate do
2525
File.open(scanner_file, 'w') do |file|
2626
file.write base_scanner.
2727
sub(/class \w+ < Scanner/, "class #{class_name} < Scanner").
28+
sub('# Scanner for JSON (JavaScript Object Notation).', "# A scanner for #{scanner_class_name}.").
2829
sub(/register_for :\w+/, "register_for :#{lang}").
2930
sub(/file_extension '\S+'/, "file_extension '#{ENV.fetch('EXT', lang).split(',').first}'")
3031
end
@@ -37,9 +38,9 @@ namespace :generate do
3738
test_suite_file = File.join(test_dir, 'suite.rb')
3839
unless File.exist? test_suite_file
3940
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')
4142
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}")
4344
end
4445
end
4546

@@ -59,17 +60,13 @@ namespace :generate do
5960
end
6061
end
6162

62-
print 'Add to SVN? [Y|n] '
63+
print 'Add to git? [Y|n] '
6364
answer = $stdin.gets.chomp.downcase
6465
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
7370
end
7471
end
7572
end

0 commit comments

Comments
 (0)