franticfrantic
franticfrantic

Reputation: 2751

array of filenames blacklist in ruby

I have a rakefile which uses jsmin to minify the files. one thing that I need to do is that is to have a array of files which will serve as a blacklist which jsmin wouldn't include in when running the minify script.

    jsFolder = "./scripts"  
    cssFolder = "./stylesheets"
    blackList = [blackListedFile.js] #this is what i need.
    minifiedFileRootPath = "./"

    task :minify_each_file, [:type]  do |t, args|
            args.with_defaults(:type => "js")
            sourceFolder = args.type == 'js'  ? jsFolder : cssFolder
            listOfFilesToMinify = Dir.glob(sourceFolder << "/**/*." << args.type )
            listOfFilesToMinify.each do |sourceFile|
            minifiedFile = sourceFile.sub("."+ args.type,".min" + args.type) 
            puts minifiedFile
            puts sourceFile
            minifyone sourceFile, minifiedFile
        end
    end

Upvotes: 1

Views: 354

Answers (1)

lucapette
lucapette

Reputation: 20724

Change:

listOfFilesToMinify.each do |sourceFile|

to

 (listOfFilesToMinify - blackList).each do |sourceFile|

And use the following syntax for the blacklist array:

blackList = %w{foo bar}

It should work fine.

Upvotes: 2

Related Questions