bvwack 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md ADDED
@@ -0,0 +1,25 @@
1
+ # bvwack - Bulk Convert video files
2
+
3
+ Author:: Robie Lutsey
4
+
5
+ Copyright:: Copyright (c) 2012 by Robie Lutsey
6
+ License:: Distributed under the Apache License
7
+
8
+ bvwack (sounds like bivouc) is a dead simple tool for converting logs of video files.
9
+ Currently it supports .avi and .mkv --> iPad compatible .mp4.
10
+
11
+ ## Install
12
+
13
+ gem install bvwack
14
+
15
+ ## Use
16
+
17
+ bvwack -[wc] < -n # -b base-dir >
18
+
19
+ For more help:
20
+
21
+ bvwack --help
22
+
23
+ ## Developing for `bvwack`
24
+
25
+ TODO
@@ -1,3 +1,3 @@
1
1
  module BVWack
2
- VERSION = '0.0.1'
2
+ VERSION = '0.0.3'
3
3
  end
@@ -1,7 +1,7 @@
1
1
  require 'optparse'
2
2
 
3
- DEFAULT_CONVERT_BASE_DIR = "/Volumes/thundar/media/video"
4
- DEFAULT_CLEAN_BASE_DIR = "/Volumes/thundar/media/converted"
3
+ DEFAULT_CONVERT_BASE_DIR = "#{ENV['PWD']}"
4
+ DEFAULT_CLEAN_BASE_DIR = "#{ENV['PWD']}/bvwack-back"
5
5
  FFMPEG_OPTS = "-acodec aac -ac 2 -ab 160k -s 1024x768 -vcodec libx264 -vpre slow -vpre iPod640 -vb 1200k -f mp4 -threads 2 -strict experimental"
6
6
  help_text = "
7
7
  Usage: bvwack <options>
@@ -20,13 +20,20 @@ Notes: By default this will not work for you. You must change DEFAULT_CONVERT_BA
20
20
  the clean dir be a subdirectory of base dir or you'll be sad. I have set the
21
21
  FFMPEG options to use only 2 threads. This allows me to use my laptop while
22
22
  converting things. If you just want to hog through video try setting -threads 0
23
- in FFMPEG_OPTS.
23
+ in FFMPEG_OPTS. Currently this only works on UNIX-like systems.
24
+
25
+ Requirements: ffmpeg and a libx264-slow.ffpreset (possibly in your ~/.ffmpeg/ directory or in your Cellar if you use brew.) Google is your friend.
24
26
 
25
27
  Examples:
26
28
  bvwack -dw Shows proposed commands for 2 videos
27
29
  bvwack -w -b somedir/anotherdir -n 5 Converts 5 videos under somedir/anotherdir
28
30
  bvwack -c -n 10 Moves 10 already converted mkv or avi files to /Volumes/thundar/medai/converted/[od-path]"
29
31
 
32
+ @converted_files = { }
33
+ @not_converted_files = { }
34
+ @to_convert = []
35
+
36
+
30
37
  options = { }
31
38
  option_parser = OptionParser.new do |opts|
32
39
  opts.on("-d", "--dry-run") do
@@ -58,12 +65,26 @@ option_parser = OptionParser.new do |opts|
58
65
  end
59
66
  end
60
67
 
68
+ def echo_base_dirs(options)
69
+ if options[:base_dir]
70
+ puts "\nOperating in #{ options[:base_dir]}"
71
+ puts "I will create #{ options[:base_dir]}/bvwack-back to store converted files if you use clean-up.\n\n"
72
+ else
73
+ puts "\nOperating in #{DEFAULT_CONVERT_BASE_DIR}"
74
+ puts "I will create #{ DEFAULT_CLEAN_BASE_DIR} to store converted files if you use clean-up.\n\n"
75
+ end
76
+ end
77
+
61
78
  def convert(path_to_file)
62
- `ffmpeg -i #{path_to_file} #{FFMPEG_OPTS} #{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}`
79
+ if path_to_file.class == String
80
+ `ffmpeg -i "#{path_to_file}" #{FFMPEG_OPTS} "#{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}"`
81
+ end
63
82
  end
64
83
 
65
84
  def dry_run(path_to_file)
66
- puts "ffmpeg -i #{path_to_file} #{FFMPEG_OPTS} #{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}\n\n"
85
+ if path_to_file.class == String
86
+ puts "ffmpeg -i #{path_to_file} #{FFMPEG_OPTS} #{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}\n\n"
87
+ end
67
88
  end
68
89
 
69
90
 
@@ -81,86 +102,96 @@ def get_files(args)
81
102
  end
82
103
  end
83
104
 
84
- @converted_files = { }
85
- @not_converted_files = { }
86
105
 
87
- def get_all_files(base_dir = DEFAULT_CONVERT_BASE_DIR)
106
+ def get_all_files(options)
107
+ if options[:base_dir]
108
+ base_dir = options[:base_dir]
109
+ else
110
+ base_dir = DEFAULT_CONVERT_BASE_DIR
111
+ end
88
112
  Dir.chdir(base_dir)
89
113
  converted_files = Dir.glob(File.join("**", "*ipad.mp4"))
90
114
  converted_files.each do |i|
91
- @converted_files[File.basename(i, ".ipad.mp4")] = i
115
+ if i.include?("bvwack-back")
116
+ next
117
+ else
118
+ @converted_files[File.basename(i, ".ipad.mp4")] = i
119
+ end
92
120
  end
121
+
93
122
  not_converted_files = Dir.glob(File.join("**", "*.{mkv,avi}"))
94
123
  not_converted_files.each do |i|
95
- if File.basename(i).split(".").last == "mkv"
96
- @not_converted_files[File.basename(i, ".mkv")] = i
97
- elsif File.basename(i).split(".").last == "avi"
98
- @not_converted_files[File.basename(i, ".avi")] = i
124
+ if i.include?("bvwack-back")
125
+ next
126
+ else
127
+ if File.basename(i).split(".").last == "mkv"
128
+ @not_converted_files[File.basename(i, ".mkv")] = i
129
+ elsif File.basename(i).split(".").last == "avi"
130
+ @not_converted_files[File.basename(i, ".avi")] = i
131
+ end
99
132
  end
100
133
  end
101
134
  end
102
135
 
103
- @to_convert = []
104
-
105
136
  def get_unconverted_files(converted_files, not_converted_files)
106
137
  (not_converted_files.keys - converted_files.keys).each do |key|
107
138
  @to_convert << @not_converted_files[key]
108
139
  end
109
140
  end
110
141
 
111
- def clean_up
142
+ def clean_up(options)
143
+ if options[:base_dir]
144
+ clean_dir = "#{options[:base_dir]}/bvwack-back"
145
+ else
146
+ clean_dir = DEFAULT_CONVERT_BASE_DIR
147
+ end
112
148
  if @to_clean.length > 0
113
149
  key = @to_clean.pop
114
150
  filename = @not_converted_files[key]
115
151
  dirname = File.dirname(@not_converted_files[key])
116
- #puts %Q{mkdir -p "/Volumes/thundar/media/video/converted/#{dirname}" && mv "#{filename}" "/Volumes/thundar/media/video/converted/#{filename}"}
117
- #puts "This would mv #{@converted_files[key]} /Volumes/thundar/media/video/converted/#{@converted_files[key]}"
118
- `mkdir -p "#{DEFAULT_CLEAN_BASE_DIR}/#{dirname}" && mv "#{filename}" "#{DEFAULT_CLEAN_BASE_DIR}/#{filename}"`
119
- else
120
- puts "No more files to clean. Hooray!"
152
+ `mkdir -p "#{clean_dir}/#{dirname}" && mv "#{filename}" "#{clean_dir}/#{filename}"`
153
+ #else
154
+ # puts "No more files to clean. Hooray!"
121
155
  end
122
156
  end
123
157
 
124
- def dry_clean_up
158
+ def dry_clean_up(options)
159
+ if options[:base_dir]
160
+ clean_dir = "#{options[:base_dir]}/bvwack-back"
161
+ else
162
+ clean_dir = DEFAULT_CONVERT_BASE_DIR
163
+ end
125
164
  if @to_clean.length > 0
126
165
  key = @to_clean.pop
127
166
  filename = @not_converted_files[key]
128
167
  dirname = File.dirname(@not_converted_files[key])
129
- puts %Q{mkdir -p "#{DEFAULT_CLEAN_BASE_DIR}/#{dirname}" && mv "#{filename}" "#{DEFAULT_CLEAN_BASE_DIR}/#{filename}"\n\n}
130
- else
131
- puts "No more files to clean. Hooray!"
168
+ puts %Q{mkdir -p "#{clean_dir}/#{dirname}" && mv "#{filename}" "#{clean_dir}/#{filename}"\n\n}
169
+ #else
170
+ # puts "No more files to clean. Hooray!"
132
171
  end
133
172
  end
134
173
 
135
174
  def list_converted
136
- while @to_clean
137
- #if @to_clean.length > 0
138
- key = @to_clean.pop
139
- converted_filename = @converted_files[key]
140
- old_filename = @not_converted_files[key]
141
- dirname = File.dirname(@not_converted_files[key])
142
- puts "Converted file:\n"
143
- puts "in Directory #{dirname}"
144
- p `ls -lh #{converted_filename}`
145
- p `ls -lh #{old_filename}`
146
- puts %Q{To test run: open "#{converted_filename}"}
147
- puts "\n\n"
148
- #end
175
+ begin
176
+ while @to_clean
177
+ key = @to_clean.pop
178
+ converted_filename = @converted_files[key]
179
+ old_filename = @not_converted_files[key]
180
+ dirname = File.dirname(@not_converted_files[key])
181
+ puts "\nConverted file:\n"
182
+ puts %Q{In Directory "#{dirname}"}
183
+ p `ls -lh "#{converted_filename}"`
184
+ p `ls -lh "#{old_filename}"`
185
+ puts %Q{To test run: open "#{converted_filename}"}
186
+ puts "\n\n"
187
+ end
188
+ rescue
189
+ puts("\nNothing to list")
149
190
  end
150
191
  end
151
192
 
152
-
153
193
  option_parser.parse!
154
194
  puts options.inspect
155
- if options[:base_dir]
156
- basedir = options[:base_dir]
157
- get_all_files(basedir)
158
- else
159
- get_all_files
160
- end
161
-
162
- get_unconverted_files(@converted_files, @not_converted_files)
163
- @to_clean = @not_converted_files.keys & @converted_files.keys
164
195
 
165
196
  if options[:num_files]
166
197
  limit = (options[:num_files] - 1).to_i
@@ -172,45 +203,46 @@ case
172
203
  when options[:wack] == TRUE && options[:clean_up] == TRUE
173
204
  puts("Error! -w (--wack) and -c (--clean-up) cannot be used simultaneously.")
174
205
  when options[:list_converted] == TRUE
206
+ get_all_files(options)
207
+ get_unconverted_files(@converted_files, @not_converted_files)
208
+ @to_clean = @not_converted_files.keys & @converted_files.keys
175
209
  list_converted
176
210
  when options[:dry_run] == TRUE && options[:clean_up] == TRUE
211
+ get_all_files(options)
212
+ get_unconverted_files(@converted_files, @not_converted_files)
213
+ @to_clean = @not_converted_files.keys & @converted_files.keys
214
+ echo_base_dirs(options)
177
215
  (0..limit).each do
178
- dry_clean_up
216
+ dry_clean_up(options)
179
217
  end
180
218
  when options[:clean_up] == TRUE
219
+ get_all_files(options)
220
+ get_unconverted_files(@converted_files, @not_converted_files)
221
+ @to_clean = @not_converted_files.keys & @converted_files.keys
222
+ echo_base_dirs(options)
181
223
  (0..limit).each do
182
- puts "I would have run clean_up"
183
- #clean_up
224
+ #puts "I would have run clean_up"
225
+ clean_up(options)
184
226
  end
185
227
  when options[:dry_run] == TRUE && options[:wack] == TRUE
228
+ get_all_files(options)
229
+ get_unconverted_files(@converted_files, @not_converted_files)
230
+ @to_clean = @not_converted_files.keys & @converted_files.keys
231
+ echo_base_dirs(options)
186
232
  (0..limit).each do |i|
187
233
  file = @to_convert[i]
188
234
  dry_run(file)
189
235
  end
190
236
  when options[:wack] == TRUE
237
+ get_all_files(options)
238
+ get_unconverted_files(@converted_files, @not_converted_files)
239
+ @to_clean = @not_converted_files.keys & @converted_files.keys
240
+ echo_base_dirs(options)
191
241
  (0..limit).each do |i|
192
242
  file = @to_convert[i]
193
- puts "I would have run convert(file)"
194
- #convert(file)
243
+ #puts "I would have run convert(file)"
244
+ convert(file)
195
245
  end
196
246
  else
197
247
  puts help_text
198
248
  end
199
-
200
- =begin
201
- (0..limit).each do |i|
202
- file = @to_convert[i]
203
- if options[:dry_run] == TRUE
204
-
205
- else
206
- if options[:clean_up] == TRUE
207
- puts "I would have run clean_up"
208
- #clean_up
209
- else
210
- puts "I would have run convert(file)"
211
- #convert(file)
212
- end
213
- end
214
- end
215
- end
216
- =end
@@ -0,0 +1,25 @@
1
+ # bvwack - Bulk Convert video files
2
+
3
+ Author:: Robie Lutsey
4
+
5
+ Copyright:: Copyright (c) 2012 by Robie Lutsey
6
+ License:: Distributed under the Apache License
7
+
8
+ bvwack (sounds like bivouc) is a dead simple tool for converting logs of video files.
9
+ Currently it supports .avi and .mkv --> iPad compatible .mp4.
10
+
11
+ ## Install
12
+
13
+ gem install bvwack
14
+
15
+ ## Use
16
+
17
+ bvwack -[wc] < -n # -b base-dir >
18
+
19
+ For more help:
20
+
21
+ bvwack --help
22
+
23
+ ## Developing for `bvwack`
24
+
25
+ TODO
@@ -0,0 +1,7 @@
1
+ require "rake/gempackagetask"
2
+
3
+ spec = eval(File.read('bvwack.gemspec'))
4
+
5
+ Rake::GemPackageTask.new(spec) do |pkg|
6
+
7
+ end
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env ruby
2
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
3
+ require 'bvwack'
@@ -0,0 +1,19 @@
1
+ $LOAD_PATH.push File.expand_path("../lib/bvwack", __FILE__)
2
+ require "bvwack_version"
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "bvwack"
6
+ s.version = BVWack::VERSION
7
+ s.platform = Gem::Platform::RUBY
8
+ s.authors = ["Robie Lutsey"]
9
+ s.email = ["robie 0x55D in dec at gmail dit com"]
10
+ s.homepage = ""
11
+ s.summary = %q{bvwack will wack it's way your pile of unconverted video files.'}
12
+ s.description = %q{Super simple utility to help you convert all your videos to iPad ready files.}
13
+ s.requirements = ['ffmpeg and a libx264-slow.ffpreset (possibly in your ~/.ffmpeg/ directory.) Google is your friend.']
14
+ s.rubyforge_project = "bvwack"
15
+ s.required_ruby_version = '>=1.9'
16
+ s.files = Dir['**/**']
17
+ s.executables = ["bvwack"]
18
+ s.has_rdoc = false
19
+ end
@@ -0,0 +1,3 @@
1
+ module BVWack
2
+ VERSION = '0.0.2'
3
+ end
@@ -0,0 +1,252 @@
1
+ require 'optparse'
2
+
3
+ DEFAULT_CONVERT_BASE_DIR = "#{ENV['PWD']}"
4
+ DEFAULT_CLEAN_BASE_DIR = "#{ENV['PWD']}/bvwack-back"
5
+ FFMPEG_OPTS = "-acodec aac -ac 2 -ab 160k -s 1024x768 -vcodec libx264 -vpre slow -vpre iPod640 -vb 1200k -f mp4 -threads 2 -strict experimental"
6
+ help_text = "
7
+ Usage: bvwack <options>
8
+
9
+ Default action is equivalent to bvwack -n 2
10
+
11
+ Options:
12
+ -b BASE_DIR, --base-dir BASE_DIR Set BASE_DIR instead of /Volumes/thundar/media/video
13
+ -d, --dry-run Do a dry run. Prints proposed commands to STDOUT.
14
+ -c, --clean-up Instead of converting, move all converted files to /Volumes/thundar/media/converted/[old-path]
15
+ -n #, --num-files # Number of videos to batch.
16
+ -l, --list_converted Lists files that have been converted but not cleaned. Useful for vierifying successful conversion.
17
+
18
+ Notes: By default this will not work for you. You must change DEFAULT_CONVERT_BASE_DIR
19
+ and DEFAULT_CLEAN_BASE_DIR to something that exists on your system. Do not let
20
+ the clean dir be a subdirectory of base dir or you'll be sad. I have set the
21
+ FFMPEG options to use only 2 threads. This allows me to use my laptop while
22
+ converting things. If you just want to hog through video try setting -threads 0
23
+ in FFMPEG_OPTS. Currently this only works on UNIX-like systems.
24
+
25
+ Requirements: ffmpeg and a libx264-slow.ffpreset (possibly in your ~/.ffmpeg/ directory or in your Cellar if you use brew.) Google is your friend.
26
+
27
+ Examples:
28
+ bvwack -dw Shows proposed commands for 2 videos
29
+ bvwack -w -b somedir/anotherdir -n 5 Converts 5 videos under somedir/anotherdir
30
+ bvwack -c -n 10 Moves 10 already converted mkv or avi files to /Volumes/thundar/medai/converted/[od-path]"
31
+
32
+ @converted_files = { }
33
+ @not_converted_files = { }
34
+ @to_convert = []
35
+
36
+
37
+ options = { }
38
+ option_parser = OptionParser.new do |opts|
39
+ opts.on("-d", "--dry-run") do
40
+ options[:dry_run] = true
41
+ end
42
+
43
+ opts.on("-b BASE_DIR", "--base-dir BASE_DIR") do |base_dir|
44
+ options[:base_dir] = base_dir
45
+ end
46
+
47
+ opts.on("-c", "--clean-up") do
48
+ options[:clean_up] = true
49
+ end
50
+
51
+ opts.on("-n NUM_FILES", "--num-files NUM_FILES", Integer) do |num_files|
52
+ options[:num_files] = num_files
53
+ end
54
+
55
+ opts.on("-h", "--help") do
56
+ options[:help] = true
57
+ end
58
+
59
+ opts.on("-l", "--list-converted") do
60
+ options[:list_converted] = true
61
+ end
62
+
63
+ opts.on("-w", "--wack") do
64
+ options[:wack] = true
65
+ end
66
+ end
67
+
68
+ def echo_base_dirs(options)
69
+ if options[:base_dir]
70
+ puts "\nOperating in #{ options[:base_dir]}"
71
+ puts "I will create #{ options[:base_dir]}/bvwack-back to store converted files if you use clean-up.\n\n"
72
+ else
73
+ puts "\nOperating in #{DEFAULT_CONVERT_BASE_DIR}"
74
+ puts "I will create #{ DEFAULT_CLEAN_BASE_DIR} to store converted files if you use clean-up.\n\n"
75
+ end
76
+ end
77
+
78
+ def convert(path_to_file)
79
+ if path_to_file.class == String
80
+ `ffmpeg -i "#{path_to_file}" #{FFMPEG_OPTS} "#{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}"`
81
+ end
82
+ end
83
+
84
+ def dry_run(path_to_file)
85
+ if path_to_file.class == String
86
+ puts "ffmpeg -i #{path_to_file} #{FFMPEG_OPTS} #{path_to_file.gsub(/mkv$|avi$/, "ipad.mp4")}\n\n"
87
+ end
88
+ end
89
+
90
+
91
+ def get_files(args)
92
+ if args[0]
93
+ args.each do |path|
94
+ if File.file?(path)
95
+ @paths << path
96
+ else
97
+ puts "#{path} is not a real file. Skipping. Try single-quoting the path if it is spacey or ugly."
98
+ end
99
+ end
100
+ else
101
+ puts "Specify the file(s) to convert: ./media/dir/dir/file1.mkv <'./media/dir/dir name/file(2).avi'>"
102
+ end
103
+ end
104
+
105
+
106
+ def get_all_files(options)
107
+ if options[:base_dir]
108
+ base_dir = options[:base_dir]
109
+ else
110
+ base_dir = DEFAULT_CONVERT_BASE_DIR
111
+ end
112
+ Dir.chdir(base_dir)
113
+ converted_files = Dir.glob(File.join("**", "*ipad.mp4"))
114
+ converted_files.each do |i|
115
+ if i.include?("bvwack-back")
116
+ next
117
+ else
118
+ @converted_files[File.basename(i, ".ipad.mp4")] = i
119
+ end
120
+ end
121
+
122
+ not_converted_files = Dir.glob(File.join("**", "*.{mkv,avi}"))
123
+ not_converted_files.each do |i|
124
+ if i.include?("bvwack-back")
125
+ next
126
+ else
127
+ if File.basename(i).split(".").last == "mkv"
128
+ @not_converted_files[File.basename(i, ".mkv")] = i
129
+ elsif File.basename(i).split(".").last == "avi"
130
+ @not_converted_files[File.basename(i, ".avi")] = i
131
+ end
132
+ end
133
+ end
134
+ end
135
+
136
+ def get_unconverted_files(converted_files, not_converted_files)
137
+ (not_converted_files.keys - converted_files.keys).each do |key|
138
+ @to_convert << @not_converted_files[key]
139
+ end
140
+ end
141
+
142
+ def clean_up(options)
143
+ if options[:base_dir]
144
+ clean_dir = "#{options[:base_dir]}/bvwack-back"
145
+ else
146
+ clean_dir = DEFAULT_CONVERT_BASE_DIR
147
+ end
148
+ if @to_clean.length > 0
149
+ key = @to_clean.pop
150
+ filename = @not_converted_files[key]
151
+ dirname = File.dirname(@not_converted_files[key])
152
+ `mkdir -p "#{clean_dir}/#{dirname}" && mv "#{filename}" "#{clean_dir}/#{filename}"`
153
+ #else
154
+ # puts "No more files to clean. Hooray!"
155
+ end
156
+ end
157
+
158
+ def dry_clean_up(options)
159
+ if options[:base_dir]
160
+ clean_dir = "#{options[:base_dir]}/bvwack-back"
161
+ else
162
+ clean_dir = DEFAULT_CONVERT_BASE_DIR
163
+ end
164
+ if @to_clean.length > 0
165
+ key = @to_clean.pop
166
+ filename = @not_converted_files[key]
167
+ dirname = File.dirname(@not_converted_files[key])
168
+ print "\n\ndirname: "
169
+ p dirname
170
+ print "\n\nclean_dir: "
171
+ p clean_dir
172
+ puts %Q{mkdir -p "#{clean_dir}/#{dirname}" && mv "#{filename}" "#{clean_dir}/#{filename}"\n\n}
173
+ #else
174
+ # puts "No more files to clean. Hooray!"
175
+ end
176
+ end
177
+
178
+ def list_converted
179
+ begin
180
+ while @to_clean
181
+ key = @to_clean.pop
182
+ converted_filename = @converted_files[key]
183
+ old_filename = @not_converted_files[key]
184
+ dirname = File.dirname(@not_converted_files[key])
185
+ puts "\nConverted file:\n"
186
+ puts %Q{In Directory "#{dirname}"}
187
+ p `ls -lh "#{converted_filename}"`
188
+ p `ls -lh "#{old_filename}"`
189
+ puts %Q{To test run: open "#{converted_filename}"}
190
+ puts "\n\n"
191
+ end
192
+ rescue
193
+ puts("\nNothing to list")
194
+ end
195
+ end
196
+
197
+ option_parser.parse!
198
+ puts options.inspect
199
+
200
+ if options[:num_files]
201
+ limit = (options[:num_files] - 1).to_i
202
+ else
203
+ limit = 2
204
+ end
205
+
206
+ case
207
+ when options[:wack] == TRUE && options[:clean_up] == TRUE
208
+ puts("Error! -w (--wack) and -c (--clean-up) cannot be used simultaneously.")
209
+ when options[:list_converted] == TRUE
210
+ get_all_files(options)
211
+ get_unconverted_files(@converted_files, @not_converted_files)
212
+ @to_clean = @not_converted_files.keys & @converted_files.keys
213
+ list_converted
214
+ when options[:dry_run] == TRUE && options[:clean_up] == TRUE
215
+ get_all_files(options)
216
+ get_unconverted_files(@converted_files, @not_converted_files)
217
+ @to_clean = @not_converted_files.keys & @converted_files.keys
218
+ echo_base_dirs(options)
219
+ (0..limit).each do
220
+ dry_clean_up(options)
221
+ end
222
+ when options[:clean_up] == TRUE
223
+ get_all_files(options)
224
+ get_unconverted_files(@converted_files, @not_converted_files)
225
+ @to_clean = @not_converted_files.keys & @converted_files.keys
226
+ echo_base_dirs(options)
227
+ (0..limit).each do
228
+ #puts "I would have run clean_up"
229
+ clean_up(options)
230
+ end
231
+ when options[:dry_run] == TRUE && options[:wack] == TRUE
232
+ get_all_files(options)
233
+ get_unconverted_files(@converted_files, @not_converted_files)
234
+ @to_clean = @not_converted_files.keys & @converted_files.keys
235
+ echo_base_dirs(options)
236
+ (0..limit).each do |i|
237
+ file = @to_convert[i]
238
+ dry_run(file)
239
+ end
240
+ when options[:wack] == TRUE
241
+ get_all_files(options)
242
+ get_unconverted_files(@converted_files, @not_converted_files)
243
+ @to_clean = @not_converted_files.keys & @converted_files.keys
244
+ echo_base_dirs(options)
245
+ (0..limit).each do |i|
246
+ file = @to_convert[i]
247
+ #puts "I would have run convert(file)"
248
+ convert(file)
249
+ end
250
+ else
251
+ puts help_text
252
+ end
@@ -0,0 +1 @@
1
+ require "bvwack/convert"
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bvwack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -25,7 +25,16 @@ files:
25
25
  - lib/bvwack/bvwack_version.rb
26
26
  - lib/bvwack/convert.rb
27
27
  - lib/bvwack.rb
28
+ - pkg/bvwack-0.0.2/bin/bvwack
29
+ - pkg/bvwack-0.0.2/bvwack.gemspec
30
+ - pkg/bvwack-0.0.2/lib/bvwack/bvwack_version.rb
31
+ - pkg/bvwack-0.0.2/lib/bvwack/convert.rb
32
+ - pkg/bvwack-0.0.2/lib/bvwack.rb
33
+ - pkg/bvwack-0.0.2/Rakefile
34
+ - pkg/bvwack-0.0.2/README.md
35
+ - pkg/bvwack-0.0.2.gem
28
36
  - Rakefile
37
+ - README.md
29
38
  homepage: ''
30
39
  licenses: []
31
40
  post_install_message: