class MassRenamer::Command_Line
Public Class Methods
new(argv = ARGV)
click to toggle source
# File lib/mass_renamer/command_line.rb, line 6 def initialize argv = ARGV opts = parse argv @driver = Driver.new opts end
Public Instance Methods
parse(argv)
click to toggle source
# File lib/mass_renamer/command_line.rb, line 15 def parse argv opts = {} OptionParser.new do |opt| opt.banner = 'Usage: renamer [DIRECTORY] [OPTIONS]' opt.separator '' opt.separator 'DIRECTORY in which you want to rename. If not' opt.separator 'provided, `pwd` is used.' opt.separator '' opt.separator 'Editor to use is determined by this priority:' opt.separator ' --editor' opt.separator ' $EDITOR' opt.separator ' vim' opt.separator '' opt.separator 'Options:' opt.on('-h', '--help', 'Print usage') do puts opt exit end opt.on('-d', '--dry', 'Dry run') do opts[:dry] = true end opt.on('-r', '--recursive', 'Recurse into subdirectories') do opts[:recursive] = true end opt.on('-F', '--force', 'Don\'t ask if target exists') do opts[:force] = true end opt.on('-D', '--no-delete', 'Completely disables delete function') do opts[:no_delete] = true end opt.on('-v', '--verify', 'Ask for consent before doing each action') do opts[:verify] = true end opt.on('-k', '--keep-going', 'Keep going after failure') do opts[:keep_going] = true end opt.on('-V', '--verbose', 'Be verbose') do opts[:verbose] = true end opt.on('--version', 'Print version') do opts[:version] = true end opt.on('-e', '--editor EDITOR', 'Editor to use') do |editor| opts[:editor] = editor end opt.on('-f', '--filter REGEX', Regexp, 'Regex used to filter files') do |filter| opts[:filter] = filter end end.parse!(argv) opts[:dir] = argv[0] || Dir::pwd opts[:editor] ||= ENV['EDITOR'] || 'vim' opts end
rename!()
click to toggle source
# File lib/mass_renamer/command_line.rb, line 11 def rename! @driver.rename! end