filerenamer 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGES CHANGED
@@ -1,6 +1,12 @@
1
1
  = filerenamer Changelog
2
2
 
3
- == Master (for 0.0.6)
3
+ == Master (for 0.0.7)
4
+ * classify -u to lowercase.
5
+ * classify -4 to 2chars and 2layer-directoriess.
6
+ * renhash -C to use various hash commmands not sha256sum.
7
+ * Add bin/classify_greed.
8
+
9
+ == Version 0.0.6 [2013-04-18] released
4
10
  * Add --unite option to bin/classify, which unite t and T into T.
5
11
  * Adjust to builtinextension-0.1.0.
6
12
 
data/Gemfile CHANGED
@@ -6,7 +6,7 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "rdoc", "~> 3.12"
9
+ gem "rdoc", "~> 4.0.1"
10
10
  gem "bundler", "~> 1.3.5"
11
11
  gem "jeweler", "~> 1.8.3"
12
12
  gem "simplecov", ">= 0"
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.6
1
+ 0.0.7
@@ -17,20 +17,20 @@
17
17
  UNITE_CHARS = {
18
18
  #### English
19
19
  ## uppercase
20
- "A" => "A", "B" => "B", "C" => "C", "D" => "D", "E" => "E",
21
- "F" => "F", "G" => "G", "H" => "H", "I" => "I", "J" => "J",
22
- "K" => "K", "L" => "L", "M" => "M", "N" => "N", "O" => "O",
23
- "P" => "P", "Q" => "Q", "R" => "R", "S" => "S", "T" => "T",
24
- "U" => "U", "V" => "V", "W" => "W", "X" => "X", "Y" => "Y",
25
- "Z" => "Z",
20
+ "A" => "a", "B" => "b", "C" => "c", "D" => "d", "E" => "e",
21
+ "F" => "f", "G" => "g", "H" => "h", "I" => "i", "J" => "j",
22
+ "K" => "k", "L" => "l", "M" => "m", "N" => "n", "O" => "o",
23
+ "P" => "p", "Q" => "q", "R" => "r", "S" => "s", "T" => "t",
24
+ "U" => "u", "V" => "v", "W" => "w", "X" => "x", "Y" => "y",
25
+ "Z" => "z",
26
26
 
27
27
  ## lowercase
28
- "a" => "A", "b" => "B", "c" => "C", "d" => "D", "e" => "E",
29
- "f" => "F", "g" => "G", "h" => "H", "i" => "I", "j" => "J",
30
- "k" => "K", "l" => "L", "m" => "M", "n" => "N", "o" => "O",
31
- "p" => "P", "q" => "Q", "r" => "R", "s" => "S", "t" => "T",
32
- "u" => "U", "v" => "V", "w" => "W", "x" => "X", "y" => "Y",
33
- "z" => "Z",
28
+ "a" => "a", "b" => "b", "c" => "c", "d" => "d", "e" => "e",
29
+ "f" => "f", "g" => "g", "h" => "h", "i" => "i", "j" => "j",
30
+ "k" => "k", "l" => "l", "m" => "m", "n" => "n", "o" => "o",
31
+ "p" => "p", "q" => "q", "r" => "r", "s" => "s", "t" => "t",
32
+ "u" => "u", "v" => "v", "w" => "w", "x" => "x", "y" => "y",
33
+ "z" => "z",
34
34
 
35
35
  #### ひらがな
36
36
  ## 清音
@@ -84,6 +84,7 @@ UNITE_CHARS = {
84
84
  ##"ヵ"=>"か", "ヶ"=>"け",
85
85
  }
86
86
 
87
+ require "pp"
87
88
  gem "builtinextension"
88
89
  require "string/escapezsh.rb"
89
90
  require "filerenamer.rb"
@@ -93,7 +94,9 @@ op = FileRenamer::OptionParser.new
93
94
  op.on("-k" , "--kakasi" , "Japanese yomi dirname. (Using kakasi)"){ OPTIONS[:kakasi] = true}
94
95
  op.on("-u" , "--unite" , "Unite group of chars. E.g., t -> T."){ OPTIONS[:unite] = true}
95
96
  op.on("-l number", "--length=number", "Indicate length of initial characters. Default number = 1."){|v| OPTIONS[:length] = v.to_i}
97
+ op.on("-a number", "--auto-length=number", "Automatically decided length for each filename. 'number' is identificatio length."){|v| OPTIONS[:auto] = v.to_i}
96
98
  op.on("-s" , "--shorten", "Shorten filename, duplicated part with the dirname."){ OPTIONS[:shorten] = true}
99
+ op.on("-4" , "--2x2", "Classify to 2layer-directories of 2chars. Implying 'shorten'."){ OPTIONS[:two_two] = true}
97
100
  op.parse!(ARGV)
98
101
 
99
102
  OPTIONS[:length] ||= 1
@@ -121,5 +124,11 @@ fr.execute do |filename|
121
124
  filename = filename[OPTIONS[:length]..(-1)]
122
125
  end
123
126
 
127
+ if OPTIONS[:two_two]
128
+ next if filename.size <= 4
129
+ dirname = filename[0..1] + "/" + filename[2..3]
130
+ filename = filename[4..-1]
131
+ end
132
+
124
133
  dirname + "/" + filename
125
134
  end
@@ -0,0 +1,74 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+
4
+ USAGE = "Use --help option to see help."
5
+
6
+
7
+ ##op.on("-g length", "--greed=length", "Greed matching for directory at least of the length."){|v| OPTIONS[:greed] = v.to_i}
8
+
9
+ require "pp"
10
+ gem "builtinextension"
11
+ require "string/escapezsh.rb"
12
+ require "filerenamer.rb"
13
+
14
+ class Array
15
+ # return a length of common part of strings.
16
+ def common_length
17
+ index = 0
18
+ min_length = self.min_by{|item| item.size}.size
19
+ min_length.times do |char_index|
20
+ 1.upto(self.size-1) do |str_index|
21
+ char_0 = self[0][char_index]
22
+ char_n = self[str_index][char_index]
23
+ return char_index if char_0 != char_n
24
+ end
25
+ end
26
+ return min_length
27
+ end
28
+ end
29
+
30
+ #p ['abc', 'abd', 'abe'].common_length #should be 2
31
+ #p ['abc', 'abd', 'ab'].common_length #should be 2
32
+ #p ['abcd', 'abce', 'abcde'].common_length #should be 2
33
+ #p ['biblio', 'bin', 'binary'].common_length #should be 2
34
+ #exit
35
+
36
+ OPTIONS = {}
37
+ op = FileRenamer::OptionParser.new
38
+ op.on("-l number", "--length=number", "Indicate length of initial characters. Default number = 1."){|v| OPTIONS[:length] = v.to_i}
39
+ op.parse!(ARGV)
40
+ OPTIONS[:length] ||= 1
41
+
42
+
43
+ if OPTIONS[:length] == 0
44
+ #print USAGE
45
+ puts "0 cannot be used as a value of --length option."
46
+ exit
47
+ end
48
+
49
+ files = ARGV
50
+ files = Dir.glob("*").sort if files.empty?
51
+
52
+ #pp files
53
+ conversions = {}
54
+ group_strs = files.map {|str| str[0...(OPTIONS[:length])]}.uniq
55
+ group_strs.each do |str|
56
+ files = Dir.glob("#{str}*")
57
+ #pp files
58
+ length = files.common_length
59
+ next if files.size == 1
60
+ files.each do |old_filename|
61
+ dirname = old_filename[0...length]
62
+ filename= old_filename[length...(old_filename.size)]
63
+ newname = dirname + "/" + filename
64
+
65
+ next if filename.empty?
66
+ conversions[old_filename] = newname
67
+ end
68
+ end
69
+ #pp conversions
70
+
71
+ fr = FileRenamer::Commander.new(op.options, conversions.keys)
72
+ fr.execute do |old_name|
73
+ conversions[old_name]
74
+ end
@@ -6,17 +6,21 @@ gem "builtinextension"
6
6
  require "string/escapezsh.rb"
7
7
  require "filerenamer.rb"
8
8
  #require "filerenamer/commander.rb"
9
- #require "filerenamer/optionparser.rb"
9
+ require "filerenamer/optionparser.rb"
10
10
 
11
- HASH_COMMAND = "sha256sum"
11
+ OPTIONS = {}
12
12
  op = FileRenamer::OptionParser.new
13
+ op.on("-C str" , "--command=str" , "Indicate command to hash."){|val| OPTIONS[:command] = val}
13
14
  op.parse!(ARGV)
14
15
 
16
+ hash_command = OPTIONS[:command]
17
+ hash_command ||= "sha256sum"
18
+
15
19
  fr = FileRenamer::Commander.new(op.options, ARGV)
16
20
  fr.execute do |filename|
17
21
  extname = File.extname filename
18
22
  oldname = filename.escape_zsh
19
- basename = `#{HASH_COMMAND} #{oldname}`.sub(/ *#{oldname}$/, '').chomp
23
+ basename = `#{hash_command} #{oldname}`.sub(/ *#{oldname}$/, '').chomp
20
24
  newname = basename + extname
21
25
  newname
22
26
  end
@@ -1,4 +1,16 @@
1
+ require "fileutils"
1
2
  require "filerenamer/commander.rb"
2
3
  require "filerenamer/optionparser.rb"
4
+ #require "filerenamer/manipulation.rb"
5
+ #require "filerenamer/manipulation/mv.rb"
6
+ #require "filerenamer/manipulation/cp.rb"
7
+ #require "filerenamer/manipulation/ln.rb"
8
+ #require "filerenamer/manipulation/lns.rb"
9
+ ##require "filerenamer/manipulation/rm.rb"
10
+ #require "filerenamer/manipulationqueue.rb"
11
+ ##require "filerenamer/manipulation/mkdirp.rb" not prepare due to ambiguous behavior.
12
+ ##require "filerenamer/manipulation/rmdirp.rb" not prepare due to ambiguous behavior.
13
+ #require "filerenamer/filetreesimulator.rb"
14
+ #require "filerenamer/filetreesimulator/file.rb"
3
15
 
4
16
  module FileRenamer; end
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,14 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+
4
+ require "helper"
5
+ #require "test/unit"
6
+ #require "pkg/klass.rb"
7
+
8
+ class TC_Klass < Test::Unit::TestCase
9
+ def setup
10
+ @k = Klass.new
11
+ end
12
+
13
+ end
14
+
@@ -0,0 +1,218 @@
1
+ #! /usr/bin/env ruby
2
+ # coding: utf-8
3
+
4
+ require "helper"
5
+ #require "test/unit"
6
+ #require "pkg/klass.rb"
7
+
8
+ #class FileRenamer::FileTreeSimulator
9
+ # attr_accessor :files
10
+ # public :reflect_from_filesystem
11
+ #end
12
+ #
13
+ #class TC_FileTreeSimulator < Test::Unit::TestCase
14
+ # #ORIG_DIR = "test/filetreesimulator/orig"
15
+ # #TMP_DIR = "test/filetreesimulator/tmp"
16
+ #
17
+ # def setup
18
+ # #FileUtils.cp_r(ORIG_DIR, TMP_DIR)
19
+ # @fts = FileRenamer::FileTreeSimulator.new
20
+ # end
21
+ #
22
+ # def teardown
23
+ # #FileUtils.rm_rf(TMP_DIR) if File.exist? TMP_DIR
24
+ # end
25
+ #
26
+ # def test_mv
27
+ # #test/filetreesimulator/00
28
+ # #test/filetreesimulator/dir00
29
+ # #test/filetreesimulator/dir00/01
30
+ # #test/filetreesimulator/dir00/02
31
+ #
32
+ # @fts.mv("test/filetreesimulator/00", "test/filetreesimulator/01")
33
+ # assert_equal( {
34
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => false,
35
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file
36
+ # },
37
+ # @fts.files
38
+ # )
39
+ #
40
+ # @fts.mv("test/filetreesimulator/dir00", "test/filetreesimulator/dir01")
41
+ # assert_equal( {
42
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => false,
43
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file,
44
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => false,
45
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => false,
46
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => false,
47
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :directory,
48
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/01" => :file,
49
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/02" => :file,
50
+ # },
51
+ # @fts.files
52
+ # )
53
+ #
54
+ # @fts.mv("test/filetreesimulator/dir01", "test/filetreesimulator/dir02")
55
+ # assert_equal( {
56
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => false,
57
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file,
58
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => false,
59
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => false,
60
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => false,
61
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => false,
62
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/01" => false,
63
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/02" => false,
64
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02" => :directory,
65
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02/01" => :file,
66
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02/02" => :file,
67
+ # },
68
+ # @fts.files
69
+ # )
70
+ # end
71
+ #
72
+ # def test_cp
73
+ # @fts.cp_r("test/filetreesimulator/00", "test/filetreesimulator/01")
74
+ # assert_equal( {
75
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
76
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file
77
+ # },
78
+ # @fts.files
79
+ # )
80
+ #
81
+ # @fts.cp_r("test/filetreesimulator/dir00", "test/filetreesimulator/dir01")
82
+ # assert_equal( {
83
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
84
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file,
85
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
86
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
87
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
88
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :directory,
89
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/01" => :file,
90
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/02" => :file,
91
+ # },
92
+ # @fts.files
93
+ # )
94
+ #
95
+ # @fts.cp_r("test/filetreesimulator/dir01", "test/filetreesimulator/dir02")
96
+ # assert_equal( {
97
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
98
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file,
99
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
100
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
101
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
102
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :directory,
103
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/01" => :file,
104
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01/02" => :file,
105
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02" => :directory,
106
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02/01" => :file,
107
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02/02" => :file,
108
+ # },
109
+ # @fts.files
110
+ # )
111
+ # end
112
+ #
113
+ # def test_ln
114
+ # @fts.ln("test/filetreesimulator/00", "test/filetreesimulator/01")
115
+ # assert_equal( {
116
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
117
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :file
118
+ # },
119
+ # @fts.files
120
+ # )
121
+ #
122
+ # assert_raise(FileRenamer::FileTreeSimulator::NotPermittedOperationError){
123
+ # @fts.ln("test/filetreesimulator/dir00", "test/filetreesimulator/dir01")
124
+ # }
125
+ # end
126
+ #
127
+ # def test_ln_s
128
+ # @fts.ln_s("test/filetreesimulator/00", "test/filetreesimulator/01")
129
+ # assert_equal( {
130
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
131
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :link
132
+ # },
133
+ # @fts.files
134
+ # )
135
+ #
136
+ # @fts.ln_s("test/filetreesimulator/dir00", "test/filetreesimulator/dir01")
137
+ # assert_equal( {
138
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
139
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :link,
140
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
141
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
142
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
143
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :link,
144
+ # },
145
+ # @fts.files
146
+ # )
147
+ #
148
+ # @fts.ln_s("test/filetreesimulator/dir01", "test/filetreesimulator/dir02")
149
+ # assert_equal( {
150
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
151
+ # "#{ENV['PWD']}/test/filetreesimulator/01" => :link,
152
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
153
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
154
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
155
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :link,
156
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02" => :link,
157
+ # },
158
+ # @fts.files
159
+ # )
160
+ # end
161
+ #
162
+ # def test_mkdir_p
163
+ # @fts.mkdir("test/filetreesimulator/dir01/dir02")
164
+ # assert_equal( {
165
+ # "#{ENV['PWD']}/test/filetreesimulator/dir01" => :directory,
166
+ # "#{ENV['PWD']}/test/filetreesimulator/dir02" => :directory,
167
+ # },
168
+ # @fts.files
169
+ # )
170
+ #
171
+ # assert_raise(AlreadyExistError) {
172
+ # @fts.mkdir("test/filetreesimulator/dir01/dir02")
173
+ # }
174
+ # end
175
+ #
176
+ # def test_rmdir_p
177
+ # end
178
+ #
179
+ # def test_rm
180
+ # end
181
+ #
182
+ # def test_reflect_from_filesystem
183
+ # @fts.reflect_from_filesystem("test/filetreesimulator")
184
+ # assert_equal(
185
+ # {
186
+ # "#{ENV['PWD']}/test/filetreesimulator" => :directory,
187
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
188
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
189
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
190
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
191
+ # },
192
+ # @fts.files
193
+ # )
194
+ #
195
+ # @fts.reflect_from_filesystem("test/filetreesimulator/not_exist")
196
+ # assert_equal(
197
+ # {
198
+ # "#{ENV['PWD']}/test/filetreesimulator" => :directory,
199
+ # "#{ENV['PWD']}/test/filetreesimulator/00" => :file,
200
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00" => :directory,
201
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/01" => :file,
202
+ # "#{ENV['PWD']}/test/filetreesimulator/dir00/02" => :file,
203
+ # "#{ENV['PWD']}/test/filetreesimulator/not_exist" => false,
204
+ # },
205
+ # @fts.files
206
+ # )
207
+ #
208
+ # @fts.files = { "#{ENV['PWD']}/test/filetreesimulator" => false }
209
+ # @fts.reflect_from_filesystem("test/filetreesimulator")
210
+ # assert_equal(
211
+ # { "#{ENV['PWD']}/test/filetreesimulator" => false },
212
+ # @fts.files
213
+ # )
214
+ #
215
+ # end
216
+ #
217
+ #end
218
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: filerenamer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,27 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-18 00:00:00.000000000 Z
12
+ date: 2013-12-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rdoc
16
- requirement: &73718200 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: '3.12'
21
+ version: 4.0.1
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *73718200
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 4.0.1
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: bundler
27
- requirement: &73717900 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: 1.3.5
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *73717900
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 1.3.5
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: jeweler
38
- requirement: &73717600 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ~>
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: 1.8.3
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *73717600
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.8.3
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: simplecov
49
- requirement: &73717300 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *73717300
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: builtinextension
60
- requirement: &73717000 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ~>
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: 0.1.0
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *73717000
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.1.0
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: capture_stdout
71
- requirement: &73828040 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ~>
@@ -76,12 +101,18 @@ dependencies:
76
101
  version: '0.0'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *73828040
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: '0.0'
80
110
  description: This library provide common dealing to rename many files with safe method.
81
111
  Automatically mkdir if need and rmdir when empty.
82
112
  email: ippei94da@gmail.com
83
113
  executables:
84
114
  - classify
115
+ - classify_greed
85
116
  - renhash
86
117
  - rennum
87
118
  - renpad
@@ -102,6 +133,7 @@ files:
102
133
  - Rakefile
103
134
  - VERSION
104
135
  - bin/classify
136
+ - bin/classify_greed
105
137
  - bin/renhash
106
138
  - bin/rennum
107
139
  - bin/renpad
@@ -109,18 +141,23 @@ files:
109
141
  - bin/renreg
110
142
  - bin/rensub
111
143
  - bin/rentime
112
- - filerenamer.gemspec
113
144
  - lib/filerenamer.rb
114
145
  - lib/filerenamer/commander.rb
115
146
  - lib/filerenamer/optionparser.rb
116
147
  - test/classify/123
117
148
  - test/classify/abc
149
+ - test/classify/abcd
150
+ - test/classify/abcdefghij
118
151
  - test/classify/def
119
152
  - test/classify/がぎぐ
120
153
  - test/classify/ゃゅょ
121
154
  - test/classify/月火水
122
155
  - test/filerenamer/a0.txt
123
156
  - test/filerenamer/dummy.txt
157
+ - test/filetreesimulator/00
158
+ - test/filetreesimulator/dir00/01
159
+ - test/filetreesimulator/dir00/02
160
+ - test/filetreesimulator/test_file.rb
124
161
  - test/helper.rb
125
162
  - test/renhash/)(.txt
126
163
  - test/renhash/0.txt
@@ -152,6 +189,7 @@ files:
152
189
  - test/rensub/b0
153
190
  - test/rensub/b1
154
191
  - test/test_commander.rb
192
+ - test/test_filetreesimulator.rb
155
193
  - test/test_optionparser.rb
156
194
  homepage: http://github.com/ippei94da/filerenamer
157
195
  licenses:
@@ -168,7 +206,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
168
206
  version: '0'
169
207
  segments:
170
208
  - 0
171
- hash: 922707855
209
+ hash: 651762127
172
210
  required_rubygems_version: !ruby/object:Gem::Requirement
173
211
  none: false
174
212
  requirements:
@@ -177,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
177
215
  version: '0'
178
216
  requirements: []
179
217
  rubyforge_project:
180
- rubygems_version: 1.8.11
218
+ rubygems_version: 1.8.23
181
219
  signing_key:
182
220
  specification_version: 3
183
221
  summary: Library to rename filenames.
@@ -1,114 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = "filerenamer"
8
- s.version = "0.0.6"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["ippei94da"]
12
- s.date = "2013-04-18"
13
- s.description = "This library provide common dealing to rename many files with safe method. Automatically mkdir if need and rmdir when empty."
14
- s.email = "ippei94da@gmail.com"
15
- s.executables = ["classify", "renhash", "rennum", "renpad", "renpar", "renreg", "rensub", "rentime"]
16
- s.extra_rdoc_files = [
17
- "LICENSE.txt",
18
- "README.rdoc"
19
- ]
20
- s.files = [
21
- ".document",
22
- "CHANGES",
23
- "Gemfile",
24
- "LICENSE.txt",
25
- "README.rdoc",
26
- "Rakefile",
27
- "VERSION",
28
- "bin/classify",
29
- "bin/renhash",
30
- "bin/rennum",
31
- "bin/renpad",
32
- "bin/renpar",
33
- "bin/renreg",
34
- "bin/rensub",
35
- "bin/rentime",
36
- "filerenamer.gemspec",
37
- "lib/filerenamer.rb",
38
- "lib/filerenamer/commander.rb",
39
- "lib/filerenamer/optionparser.rb",
40
- "test/classify/123",
41
- "test/classify/abc",
42
- "test/classify/def",
43
- "test/classify/がぎぐ",
44
- "test/classify/ゃゅょ",
45
- "test/classify/月火水",
46
- "test/filerenamer/a0.txt",
47
- "test/filerenamer/dummy.txt",
48
- "test/helper.rb",
49
- "test/renhash/)(.txt",
50
- "test/renhash/0.txt",
51
- "test/rennum/a",
52
- "test/rennum/b",
53
- "test/rennum/c",
54
- "test/rennum/d",
55
- "test/renpad/1",
56
- "test/renpad/10",
57
- "test/renpad/100",
58
- "test/renpad/100b",
59
- "test/renpad/10b",
60
- "test/renpad/1b",
61
- "test/renpad/a1",
62
- "test/renpad/a10",
63
- "test/renpad/a100",
64
- "test/renpad/a100b",
65
- "test/renpad/a10b",
66
- "test/renpad/a1b",
67
- "test/renpar/((ab)(cd(ef))gh(ij)kl(mn).txt",
68
- "test/renpar/(ab)(cd(ef)))gh(ij)kl(mn).txt",
69
- "test/renpar/(ab)(cd(ef))gh(ij)kl(mn).txt",
70
- "test/renpar/(ab)(cd).txt",
71
- "test/renreg/a(b)",
72
- "test/renreg/1",
73
- "test/renreg/a",
74
- "test/rensub/a0",
75
- "test/rensub/a1",
76
- "test/rensub/b0",
77
- "test/rensub/b1",
78
- "test/test_commander.rb",
79
- "test/test_optionparser.rb"
80
- ]
81
- s.homepage = "http://github.com/ippei94da/filerenamer"
82
- s.licenses = ["MIT"]
83
- s.require_paths = ["lib"]
84
- s.rubygems_version = "1.8.11"
85
- s.summary = "Library to rename filenames."
86
-
87
- if s.respond_to? :specification_version then
88
- s.specification_version = 3
89
-
90
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
91
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
92
- s.add_development_dependency(%q<bundler>, ["~> 1.3.5"])
93
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
94
- s.add_development_dependency(%q<simplecov>, [">= 0"])
95
- s.add_development_dependency(%q<builtinextension>, ["~> 0.1.0"])
96
- s.add_development_dependency(%q<capture_stdout>, ["~> 0.0"])
97
- else
98
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
99
- s.add_dependency(%q<bundler>, ["~> 1.3.5"])
100
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
101
- s.add_dependency(%q<simplecov>, [">= 0"])
102
- s.add_dependency(%q<builtinextension>, ["~> 0.1.0"])
103
- s.add_dependency(%q<capture_stdout>, ["~> 0.0"])
104
- end
105
- else
106
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
107
- s.add_dependency(%q<bundler>, ["~> 1.3.5"])
108
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
109
- s.add_dependency(%q<simplecov>, [">= 0"])
110
- s.add_dependency(%q<builtinextension>, ["~> 0.1.0"])
111
- s.add_dependency(%q<capture_stdout>, ["~> 0.0"])
112
- end
113
- end
114
-