From d0e95e2cb7e1d7336a850178bb27ab98bc5b4ef0 Mon Sep 17 00:00:00 2001 From: murphy Date: Tue, 14 Apr 2009 01:41:13 +0000 Subject: Fixed generate:scanner task; it now also sets the file_extension. For example, to create a stub for the Python Scanner, I can use: rake generate:scanner NAME=python BASE=c EXT=py --- lib/coderay/scanners/json.rb | 1 + rake_tasks/generator.rake | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/coderay/scanners/json.rb b/lib/coderay/scanners/json.rb index eb67347..d899e05 100644 --- a/lib/coderay/scanners/json.rb +++ b/lib/coderay/scanners/json.rb @@ -6,6 +6,7 @@ module Scanners include Streamable register_for :json + file_extension 'json' CONSTANTS = %w( true false null ) IDENT_KIND = WordList.new(:key).add(CONSTANTS, :reserved) diff --git a/rake_tasks/generator.rake b/rake_tasks/generator.rake index 54050ca..a485907 100644 --- a/rake_tasks/generator.rake +++ b/rake_tasks/generator.rake @@ -25,7 +25,8 @@ namespace :generate do File.open(scanner_file, 'w') do |file| file.write base_scanner. sub(/class \w+ < Scanner/, "class #{class_name} < Scanner"). - sub!(/register_for :\w+/, "register_for :#{lang}") + sub(/register_for :\w+/, "register_for :#{lang}"). + sub(/file_extension '\S+'/, "file_extension '#{ENV.fetch('EXT', lang).split(',').first}'") end test_dir = File.join(ROOT, 'test', 'scanners', lang) @@ -68,7 +69,7 @@ namespace :generate do *.expected.html *.debug.diff SVN_IGNORE - sh "svn pset svn:ignore 'svn_ignore' #{test_dir}" + sh "svn pset svn:ignore '#{svn_ignore}' #{test_dir}" end end end -- cgit v1.2.1