utils 0.0.10 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,92 @@
1
+ require 'term/ansicolor'
2
+ require 'spruz/xt'
3
+
4
+ class ::String
5
+ include Term::ANSIColor
6
+ end
7
+
8
+ class ::File
9
+ include Utils::FileXt
10
+ end
11
+
12
+ class Utils::Finder
13
+ include Utils::Find
14
+ include Utils::Patterns
15
+
16
+ def initialize(opts = {})
17
+ @args = opts[:args] || {}
18
+ @roots = opts[:roots] || []
19
+ pattern_opts = opts.subhash(:pattern) | {
20
+ :cset => @args['a'],
21
+ :icase => @args['i'],
22
+ }
23
+ @pattern = @args['r'] ?
24
+ RegexpPattern.new(pattern_opts) :
25
+ FuzzyPattern.new(pattern_opts)
26
+ @directory = @args['d']
27
+ @only_directory = @args['D']
28
+ @pathes = []
29
+ end
30
+
31
+ attr_reader :pathes
32
+
33
+ attr_reader :output
34
+
35
+ def attempt_match?(path)
36
+ stat = File.stat(path)
37
+ stat.symlink? and stat = File.lstat(path)
38
+ if @only_directory
39
+ stat.directory?
40
+ elsif @directory
41
+ stat.directory? || stat.file? && (stat.size == 0 || File.ascii?(path))
42
+ else
43
+ stat.file? && (stat.size == 0 || File.ascii?(path))
44
+ end
45
+ rescue SystemCallError => e
46
+ warn "Caught #{e.class}: #{e}"
47
+ nil
48
+ end
49
+
50
+ def search
51
+ pathes = []
52
+ find(*@roots) { |file| pathes << file }
53
+ pathes.uniq!
54
+ pathes.map! { |p| a = File.split(p) ; a.unshift(p) ; a }
55
+ @suffix = @args['I']
56
+ pathes = pathes.map! do |path, dir, file|
57
+ @suffix && @suffix != File.extname(file)[1..-1] and next
58
+ if do_match = attempt_match?(path) and $DEBUG
59
+ warn "Attempt match of #{path.inspect}"
60
+ end
61
+ if do_match and match = @pattern.match(file)
62
+ if FuzzyPattern === @pattern
63
+ current = 0
64
+ marked_file = ''
65
+ score, e = 0, 0
66
+ for i in 1...(match.size)
67
+ match[i] or next
68
+ b = match.begin(i)
69
+ marked_file << file[current...b]
70
+ marked_file << file[b, 1].red
71
+ score += (b - e)
72
+ e = match.end(i)
73
+ current = b + 1
74
+ end
75
+ marked_file << match.post_match
76
+ [ score, file.size, path, File.join(dir, marked_file) ]
77
+ else
78
+ marked_file = file[0...match.begin(0)] <<
79
+ file[match.begin(0)...match.end(0)].red <<
80
+ file[match.end(0)..-1]
81
+ [ 0, file.size, path, File.join(dir, marked_file) ]
82
+ end
83
+ end
84
+ end
85
+ pathes.compact!
86
+ @pathes, @output = pathes.sort.transpose.values_at(-2, -1)
87
+ if !@args['e'] && @output && !@output.empty?
88
+ yield @output if block_given?
89
+ end
90
+ self
91
+ end
92
+ end
@@ -0,0 +1,156 @@
1
+ require 'term/ansicolor'
2
+ require 'spruz/xt'
3
+
4
+ class ::String
5
+ include Term::ANSIColor
6
+ end
7
+
8
+ class ::File
9
+ include Utils::FileXt
10
+ end
11
+
12
+ class Utils::Grepper
13
+ PRUNE = /\A(\.svn|\.git|CVS|tmp)\Z/
14
+ SKIP = /(\A\.|\.sw[pon]\Z|~\Z)/
15
+
16
+ include Utils::Patterns
17
+
18
+ class Queue
19
+ def initialize(max_size)
20
+ @max_size, @data = max_size, []
21
+ end
22
+
23
+ attr_reader :max_size
24
+
25
+ def data
26
+ @data.dup
27
+ end
28
+
29
+ def push(x)
30
+ @data.shift if @data.size > @max_size
31
+ @data << x
32
+ self
33
+ end
34
+ alias << push
35
+ end
36
+
37
+ def initialize(opts = {})
38
+ @args = opts[:args] || {}
39
+ @roots = opts[:roots] || []
40
+ if n = @args.values_at(*%w[A B C]).compact.first
41
+ if n.to_s =~ /\A\d+\Z/ and (n = n.to_i) >= 1
42
+ @queue = Queue.new n
43
+ else
44
+ raise ArgumentError, "needs to be an integer number >= 1"
45
+ end
46
+ end
47
+ @pathes = []
48
+ pattern_opts = opts.subhash(:pattern) | {
49
+ :cset => @args['a'],
50
+ :icase => @args['i'],
51
+ }
52
+ @pattern = @args['R'] ?
53
+ FuzzyPattern.new(pattern_opts) :
54
+ RegexpPattern.new(pattern_opts)
55
+ @name_pattern =
56
+ if name_pattern = @args['N']
57
+ RegexpPattern.new(:pattern => name_pattern)
58
+ elsif name_pattern = @args['n']
59
+ FuzzyPattern.new(:pattern => name_pattern)
60
+ end
61
+ @skip_pattern =
62
+ if skip_pattern = @args['S']
63
+ RegexpPattern.new(:pattern => skip_pattern)
64
+ elsif skip_pattern = @args['s']
65
+ FuzzyPattern.new(:pattern => skip_pattern)
66
+ end
67
+ end
68
+
69
+ attr_reader :pathes
70
+
71
+ def match(filename)
72
+ @filename = filename
73
+ bn = File.basename(filename)
74
+ @output = []
75
+ s = File.stat(filename)
76
+ if s.directory? && bn =~ PRUNE
77
+ $DEBUG and warn "Pruning '#{filename}'."
78
+ Utils::Find.prune
79
+ end
80
+ if s.file? && bn !~ SKIP && (!@name_pattern || @name_pattern.match(bn))
81
+ File.open(filename, 'rb') do |file|
82
+ if file.binary? != true
83
+ $DEBUG and warn "Matching '#{filename}'."
84
+ match_lines file
85
+ else
86
+ $DEBUG and warn "Skipping binary file '#{filename}'."
87
+ end
88
+ end
89
+ else
90
+ $DEBUG and warn "Skipping '#{filename}'."
91
+ end
92
+ unless @output.empty?
93
+ case
94
+ when @args['l'], @args['e']
95
+ @output.uniq!
96
+ @pathes.concat @output
97
+ else
98
+ STDOUT.puts @output
99
+ end
100
+ @output.clear
101
+ end
102
+ self
103
+ rescue SystemCallError => e
104
+ warn "Caught #{e.class}: #{e}"
105
+ nil
106
+ end
107
+
108
+ def match_lines(file)
109
+ for line in file
110
+ if m = @pattern.match(line)
111
+ @skip_pattern and @skip_pattern =~ line and next
112
+ line[m.begin(0)...m.end(0)] = m[0].black.on_white
113
+ @queue and @queue << line
114
+ if @args['l']
115
+ @output << @filename
116
+ elsif @args['L'] or @args['e']
117
+ @output << "#{@filename}:#{file.lineno}"
118
+ else
119
+ @output << "#{@filename}:#{file.lineno}".red
120
+ if @args['B'] or @args['C']
121
+ @output.concat @queue.data
122
+ else
123
+ @output << line
124
+ end
125
+ if @args['A'] or @args['C']
126
+ where = file.tell
127
+ lineno = file.lineno
128
+ @queue.max_size.times do
129
+ file.eof? and break
130
+ line = file.readline
131
+ @queue << line
132
+ @output << line
133
+ end
134
+ file.seek where
135
+ file.lineno = lineno
136
+ end
137
+ end
138
+ else
139
+ @queue and @queue << line
140
+ end
141
+ end
142
+ end
143
+
144
+ def search
145
+ @suffix = @args['I']
146
+ for dir in @roots
147
+ Utils::Find.find(dir) do |filename|
148
+ if !@suffix || @suffix == File.extname(filename)[1..-1]
149
+ match(filename)
150
+ end
151
+ end
152
+ end
153
+ @pathes.sort!
154
+ self
155
+ end
156
+ end
data/lib/utils/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Utils
2
2
  # Utils version
3
- VERSION = '0.0.10'
3
+ VERSION = '0.0.12'
4
4
  VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/utils.gemspec CHANGED
@@ -2,37 +2,37 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{utils}
5
- s.version = "0.0.10"
5
+ s.version = "0.0.12"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = [%q{Florian Frank}]
9
- s.date = %q{2011-08-01}
9
+ s.date = %q{2011-08-08}
10
10
  s.description = %q{This ruby gem provides some useful command line utilities}
11
11
  s.email = %q{flori@ping.de}
12
- s.executables = [%q{chroot-exec}, %q{chroot-libs}, %q{classify}, %q{discover}, %q{edit}, %q{edit_wait}, %q{errf}, %q{git-empty}, %q{myex}, %q{number_files}, %q{path}, %q{same_files}, %q{search}, %q{sedit}, %q{sshscreen}, %q{strip_spaces}, %q{unquarantine_apps}, %q{untest}, %q{utils-install-config}, %q{vacuum_firefox_sqlite}, %q{xmp}]
13
- s.extra_rdoc_files = [%q{README.rdoc}, %q{lib/utils/config.rb}, %q{lib/utils/edit.rb}, %q{lib/utils/file_xt.rb}, %q{lib/utils/find.rb}, %q{lib/utils/md5.rb}, %q{lib/utils/patterns.rb}, %q{lib/utils/version.rb}, %q{lib/utils.rb}]
14
- s.files = [%q{.gitignore}, %q{COPYING}, %q{Gemfile}, %q{README.rdoc}, %q{Rakefile}, %q{VERSION}, %q{bin/chroot-exec}, %q{bin/chroot-libs}, %q{bin/classify}, %q{bin/discover}, %q{bin/edit}, %q{bin/edit_wait}, %q{bin/errf}, %q{bin/git-empty}, %q{bin/myex}, %q{bin/number_files}, %q{bin/path}, %q{bin/same_files}, %q{bin/search}, %q{bin/sedit}, %q{bin/sshscreen}, %q{bin/strip_spaces}, %q{bin/unquarantine_apps}, %q{bin/untest}, %q{bin/utils-install-config}, %q{bin/vacuum_firefox_sqlite}, %q{bin/xmp}, %q{lib/utils.rb}, %q{lib/utils/config.rb}, %q{lib/utils/config/gdb/asm}, %q{lib/utils/config/gdb/ruby}, %q{lib/utils/config/gdbinit}, %q{lib/utils/config/irbrc}, %q{lib/utils/config/rdebugrc}, %q{lib/utils/config/screenrc}, %q{lib/utils/config/vim/autoload/Align.vim}, %q{lib/utils/config/vim/autoload/AlignMaps.vim}, %q{lib/utils/config/vim/autoload/rails.vim}, %q{lib/utils/config/vim/autoload/rubycomplete.vim}, %q{lib/utils/config/vim/autoload/sqlcomplete.vim}, %q{lib/utils/config/vim/autoload/vimball.vim}, %q{lib/utils/config/vim/colors/flori.vim}, %q{lib/utils/config/vim/compiler/eruby.vim}, %q{lib/utils/config/vim/compiler/ruby.vim}, %q{lib/utils/config/vim/compiler/rubyunit.vim}, %q{lib/utils/config/vim/ftdetect/ragel.vim}, %q{lib/utils/config/vim/ftdetect/ruby.vim}, %q{lib/utils/config/vim/ftplugin/eruby.vim}, %q{lib/utils/config/vim/ftplugin/ruby.vim}, %q{lib/utils/config/vim/ftplugin/xml.vim}, %q{lib/utils/config/vim/indent/IndentAnything_html.vim}, %q{lib/utils/config/vim/indent/eruby.vim}, %q{lib/utils/config/vim/indent/javascript.vim}, %q{lib/utils/config/vim/indent/ruby.vim}, %q{lib/utils/config/vim/plugin/AlignMapsPlugin.vim}, %q{lib/utils/config/vim/plugin/AlignPlugin.vim}, %q{lib/utils/config/vim/plugin/Decho.vim}, %q{lib/utils/config/vim/plugin/IndentAnything.vim}, %q{lib/utils/config/vim/plugin/bufexplorer.vim}, %q{lib/utils/config/vim/plugin/cecutil.vim}, %q{lib/utils/config/vim/plugin/fugitive.vim}, %q{lib/utils/config/vim/plugin/lusty-explorer.vim}, %q{lib/utils/config/vim/plugin/rails.vim}, %q{lib/utils/config/vim/plugin/rubyextra.vim}, %q{lib/utils/config/vim/plugin/surround.vim}, %q{lib/utils/config/vim/plugin/taglist.vim}, %q{lib/utils/config/vim/plugin/test/IndentAnything/test.js}, %q{lib/utils/config/vim/plugin/vimballPlugin.vim}, %q{lib/utils/config/vim/syntax/Decho.vim}, %q{lib/utils/config/vim/syntax/eruby.vim}, %q{lib/utils/config/vim/syntax/javascript.vim}, %q{lib/utils/config/vim/syntax/ragel.vim}, %q{lib/utils/config/vim/syntax/ruby.vim}, %q{lib/utils/config/vimrc}, %q{lib/utils/edit.rb}, %q{lib/utils/file_xt.rb}, %q{lib/utils/find.rb}, %q{lib/utils/md5.rb}, %q{lib/utils/patterns.rb}, %q{lib/utils/version.rb}, %q{utils.gemspec}]
12
+ s.executables = [%q{untest}, %q{chroot-libs}, %q{edit_wait}, %q{chroot-exec}, %q{number_files}, %q{search}, %q{strip_spaces}, %q{path}, %q{edit}, %q{git-empty}, %q{classify}, %q{utils-install-config}, %q{xmp}, %q{discover}, %q{sshscreen}, %q{myex}, %q{errf}, %q{same_files}, %q{unquarantine_apps}, %q{vacuum_firefox_sqlite}, %q{sedit}]
13
+ s.extra_rdoc_files = [%q{README.rdoc}, %q{lib/utils/finder.rb}, %q{lib/utils/version.rb}, %q{lib/utils/find.rb}, %q{lib/utils/config.rb}, %q{lib/utils/editor.rb}, %q{lib/utils/grepper.rb}, %q{lib/utils/file_xt.rb}, %q{lib/utils/md5.rb}, %q{lib/utils/patterns.rb}, %q{lib/utils.rb}]
14
+ s.files = [%q{.gitignore}, %q{.rvmrc}, %q{COPYING}, %q{Gemfile}, %q{README.rdoc}, %q{Rakefile}, %q{VERSION}, %q{bin/chroot-exec}, %q{bin/chroot-libs}, %q{bin/classify}, %q{bin/discover}, %q{bin/edit}, %q{bin/edit_wait}, %q{bin/errf}, %q{bin/git-empty}, %q{bin/myex}, %q{bin/number_files}, %q{bin/path}, %q{bin/same_files}, %q{bin/search}, %q{bin/sedit}, %q{bin/sshscreen}, %q{bin/strip_spaces}, %q{bin/unquarantine_apps}, %q{bin/untest}, %q{bin/utils-install-config}, %q{bin/vacuum_firefox_sqlite}, %q{bin/xmp}, %q{lib/utils.rb}, %q{lib/utils/config.rb}, %q{lib/utils/config/gdb/asm}, %q{lib/utils/config/gdb/ruby}, %q{lib/utils/config/gdbinit}, %q{lib/utils/config/irbrc}, %q{lib/utils/config/rdebugrc}, %q{lib/utils/config/screenrc}, %q{lib/utils/config/vim/autoload/Align.vim}, %q{lib/utils/config/vim/autoload/AlignMaps.vim}, %q{lib/utils/config/vim/autoload/rails.vim}, %q{lib/utils/config/vim/autoload/rubycomplete.vim}, %q{lib/utils/config/vim/autoload/sqlcomplete.vim}, %q{lib/utils/config/vim/autoload/vimball.vim}, %q{lib/utils/config/vim/colors/flori.vim}, %q{lib/utils/config/vim/compiler/eruby.vim}, %q{lib/utils/config/vim/compiler/ruby.vim}, %q{lib/utils/config/vim/compiler/rubyunit.vim}, %q{lib/utils/config/vim/ftdetect/ragel.vim}, %q{lib/utils/config/vim/ftdetect/ruby.vim}, %q{lib/utils/config/vim/ftplugin/eruby.vim}, %q{lib/utils/config/vim/ftplugin/ruby.vim}, %q{lib/utils/config/vim/ftplugin/xml.vim}, %q{lib/utils/config/vim/indent/IndentAnything_html.vim}, %q{lib/utils/config/vim/indent/eruby.vim}, %q{lib/utils/config/vim/indent/javascript.vim}, %q{lib/utils/config/vim/indent/ruby.vim}, %q{lib/utils/config/vim/plugin/AlignMapsPlugin.vim}, %q{lib/utils/config/vim/plugin/AlignPlugin.vim}, %q{lib/utils/config/vim/plugin/Decho.vim}, %q{lib/utils/config/vim/plugin/IndentAnything.vim}, %q{lib/utils/config/vim/plugin/bufexplorer.vim}, %q{lib/utils/config/vim/plugin/cecutil.vim}, %q{lib/utils/config/vim/plugin/fugitive.vim}, %q{lib/utils/config/vim/plugin/lusty-explorer.vim}, %q{lib/utils/config/vim/plugin/rails.vim}, %q{lib/utils/config/vim/plugin/rubyextra.vim}, %q{lib/utils/config/vim/plugin/surround.vim}, %q{lib/utils/config/vim/plugin/taglist.vim}, %q{lib/utils/config/vim/plugin/test/IndentAnything/test.js}, %q{lib/utils/config/vim/plugin/vimballPlugin.vim}, %q{lib/utils/config/vim/syntax/Decho.vim}, %q{lib/utils/config/vim/syntax/eruby.vim}, %q{lib/utils/config/vim/syntax/javascript.vim}, %q{lib/utils/config/vim/syntax/ragel.vim}, %q{lib/utils/config/vim/syntax/ruby.vim}, %q{lib/utils/config/vimrc}, %q{lib/utils/editor.rb}, %q{lib/utils/file_xt.rb}, %q{lib/utils/find.rb}, %q{lib/utils/finder.rb}, %q{lib/utils/grepper.rb}, %q{lib/utils/md5.rb}, %q{lib/utils/patterns.rb}, %q{lib/utils/version.rb}, %q{utils.gemspec}]
15
15
  s.homepage = %q{http://github.com/flori/utils}
16
16
  s.rdoc_options = [%q{--title}, %q{Utils - Some useful command line utilities}, %q{--main}, %q{README.rdoc}]
17
17
  s.require_paths = [%q{lib}]
18
- s.rubygems_version = %q{1.8.6}
18
+ s.rubygems_version = %q{1.8.7}
19
19
  s.summary = %q{Some useful command line utilities}
20
20
 
21
21
  if s.respond_to? :specification_version then
22
22
  s.specification_version = 3
23
23
 
24
24
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
- s.add_development_dependency(%q<gem_hadar>, ["~> 0.0.8"])
26
- s.add_runtime_dependency(%q<spruz>, ["~> 0.2.10"])
27
- s.add_runtime_dependency(%q<term-ansicolor>, ["= 1.0.5"])
25
+ s.add_development_dependency(%q<gem_hadar>, ["~> 0.0.11"])
26
+ s.add_runtime_dependency(%q<spruz>, ["~> 0.2.12"])
27
+ s.add_runtime_dependency(%q<term-ansicolor>, ["~> 1.0"])
28
28
  else
29
- s.add_dependency(%q<gem_hadar>, ["~> 0.0.8"])
30
- s.add_dependency(%q<spruz>, ["~> 0.2.10"])
31
- s.add_dependency(%q<term-ansicolor>, ["= 1.0.5"])
29
+ s.add_dependency(%q<gem_hadar>, ["~> 0.0.11"])
30
+ s.add_dependency(%q<spruz>, ["~> 0.2.12"])
31
+ s.add_dependency(%q<term-ansicolor>, ["~> 1.0"])
32
32
  end
33
33
  else
34
- s.add_dependency(%q<gem_hadar>, ["~> 0.0.8"])
35
- s.add_dependency(%q<spruz>, ["~> 0.2.10"])
36
- s.add_dependency(%q<term-ansicolor>, ["= 1.0.5"])
34
+ s.add_dependency(%q<gem_hadar>, ["~> 0.0.11"])
35
+ s.add_dependency(%q<spruz>, ["~> 0.2.12"])
36
+ s.add_dependency(%q<term-ansicolor>, ["~> 1.0"])
37
37
  end
38
38
  end
metadata CHANGED
@@ -1,108 +1,89 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: utils
3
- version: !ruby/object:Gem::Version
4
- hash: 11
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.12
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 10
10
- version: 0.0.10
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Florian Frank
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-08-01 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2011-08-08 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: gem_hadar
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &2156686180 !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
18
+ requirements:
26
19
  - - ~>
27
- - !ruby/object:Gem::Version
28
- hash: 15
29
- segments:
30
- - 0
31
- - 0
32
- - 8
33
- version: 0.0.8
20
+ - !ruby/object:Gem::Version
21
+ version: 0.0.11
34
22
  type: :development
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: spruz
38
23
  prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *2156686180
25
+ - !ruby/object:Gem::Dependency
26
+ name: spruz
27
+ requirement: &2156685700 !ruby/object:Gem::Requirement
40
28
  none: false
41
- requirements:
29
+ requirements:
42
30
  - - ~>
43
- - !ruby/object:Gem::Version
44
- hash: 3
45
- segments:
46
- - 0
47
- - 2
48
- - 10
49
- version: 0.2.10
31
+ - !ruby/object:Gem::Version
32
+ version: 0.2.12
50
33
  type: :runtime
51
- version_requirements: *id002
52
- - !ruby/object:Gem::Dependency
53
- name: term-ansicolor
54
34
  prerelease: false
55
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *2156685700
36
+ - !ruby/object:Gem::Dependency
37
+ name: term-ansicolor
38
+ requirement: &2156685180 !ruby/object:Gem::Requirement
56
39
  none: false
57
- requirements:
58
- - - "="
59
- - !ruby/object:Gem::Version
60
- hash: 29
61
- segments:
62
- - 1
63
- - 0
64
- - 5
65
- version: 1.0.5
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '1.0'
66
44
  type: :runtime
67
- version_requirements: *id003
45
+ prerelease: false
46
+ version_requirements: *2156685180
68
47
  description: This ruby gem provides some useful command line utilities
69
48
  email: flori@ping.de
70
- executables:
71
- - chroot-exec
49
+ executables:
50
+ - untest
72
51
  - chroot-libs
73
- - classify
74
- - discover
75
- - edit
76
52
  - edit_wait
77
- - errf
78
- - git-empty
79
- - myex
53
+ - chroot-exec
80
54
  - number_files
81
- - path
82
- - same_files
83
55
  - search
84
- - sedit
85
- - sshscreen
86
56
  - strip_spaces
87
- - unquarantine_apps
88
- - untest
57
+ - path
58
+ - edit
59
+ - git-empty
60
+ - classify
89
61
  - utils-install-config
90
- - vacuum_firefox_sqlite
91
62
  - xmp
63
+ - discover
64
+ - sshscreen
65
+ - myex
66
+ - errf
67
+ - same_files
68
+ - unquarantine_apps
69
+ - vacuum_firefox_sqlite
70
+ - sedit
92
71
  extensions: []
93
-
94
- extra_rdoc_files:
72
+ extra_rdoc_files:
95
73
  - README.rdoc
74
+ - lib/utils/finder.rb
75
+ - lib/utils/version.rb
76
+ - lib/utils/find.rb
96
77
  - lib/utils/config.rb
97
- - lib/utils/edit.rb
78
+ - lib/utils/editor.rb
79
+ - lib/utils/grepper.rb
98
80
  - lib/utils/file_xt.rb
99
- - lib/utils/find.rb
100
81
  - lib/utils/md5.rb
101
82
  - lib/utils/patterns.rb
102
- - lib/utils/version.rb
103
83
  - lib/utils.rb
104
- files:
84
+ files:
105
85
  - .gitignore
86
+ - .rvmrc
106
87
  - COPYING
107
88
  - Gemfile
108
89
  - README.rdoc
@@ -176,48 +157,41 @@ files:
176
157
  - lib/utils/config/vim/syntax/ragel.vim
177
158
  - lib/utils/config/vim/syntax/ruby.vim
178
159
  - lib/utils/config/vimrc
179
- - lib/utils/edit.rb
160
+ - lib/utils/editor.rb
180
161
  - lib/utils/file_xt.rb
181
162
  - lib/utils/find.rb
163
+ - lib/utils/finder.rb
164
+ - lib/utils/grepper.rb
182
165
  - lib/utils/md5.rb
183
166
  - lib/utils/patterns.rb
184
167
  - lib/utils/version.rb
185
168
  - utils.gemspec
186
169
  homepage: http://github.com/flori/utils
187
170
  licenses: []
188
-
189
171
  post_install_message:
190
- rdoc_options:
172
+ rdoc_options:
191
173
  - --title
192
174
  - Utils - Some useful command line utilities
193
175
  - --main
194
176
  - README.rdoc
195
- require_paths:
177
+ require_paths:
196
178
  - lib
197
- required_ruby_version: !ruby/object:Gem::Requirement
179
+ required_ruby_version: !ruby/object:Gem::Requirement
198
180
  none: false
199
- requirements:
200
- - - ">="
201
- - !ruby/object:Gem::Version
202
- hash: 3
203
- segments:
204
- - 0
205
- version: "0"
206
- required_rubygems_version: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - ! '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ required_rubygems_version: !ruby/object:Gem::Requirement
207
186
  none: false
208
- requirements:
209
- - - ">="
210
- - !ruby/object:Gem::Version
211
- hash: 3
212
- segments:
213
- - 0
214
- version: "0"
187
+ requirements:
188
+ - - ! '>='
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
215
191
  requirements: []
216
-
217
192
  rubyforge_project:
218
- rubygems_version: 1.8.6
193
+ rubygems_version: 1.8.7
219
194
  signing_key:
220
195
  specification_version: 3
221
196
  summary: Some useful command line utilities
222
197
  test_files: []
223
-