wc 0.98.2 → 0.99.0
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/Gemfile +14 -0
- data/Gemfile.lock +30 -0
- data/README.rdoc +11 -15
- data/Rakefile +34 -49
- data/VERSION +1 -1
- data/doc/String.html +372 -0
- data/doc/Wc.html +93 -0
- data/doc/Wc/Engine.html +289 -0
- data/doc/Wc/Reader.html +253 -0
- data/doc/_index.html +138 -0
- data/doc/class_list.html +36 -0
- data/doc/classes/Wc.html +279 -0
- data/doc/classes/Wc.src/M000001.html +38 -0
- data/doc/classes/Wc.src/M000002.html +26 -0
- data/doc/classes/Wc.src/M000003.html +74 -0
- data/doc/classes/Wc.src/M000004.html +29 -0
- data/doc/classes/Wc.src/M000005.html +25 -0
- data/doc/classes/Wc.src/M000006.html +24 -0
- data/doc/created.rid +1 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +53 -0
- data/doc/css/style.css +318 -0
- data/doc/file.README.html +107 -0
- data/doc/file_list.html +38 -0
- data/doc/files/lib/wc_rb.html +101 -0
- data/doc/fr_class_index.html +27 -0
- data/doc/fr_file_index.html +27 -0
- data/doc/fr_method_index.html +32 -0
- data/doc/frames.html +13 -0
- data/doc/index.html +107 -0
- data/doc/js/app.js +203 -0
- data/doc/js/full_list.js +149 -0
- data/doc/js/jquery.js +16 -0
- data/doc/method_list.html +99 -0
- data/doc/rdoc-style.css +208 -0
- data/doc/top-level-namespace.html +90 -0
- data/lib/wc.rb +21 -128
- data/lib/wc/engine.rb +18 -0
- data/lib/wc/reader.rb +28 -0
- data/spec/spec_helper.rb +12 -0
- data/spec/wc_spec.rb +10 -0
- data/wc.gemspec +65 -30
- metadata +111 -82
- data/.gitignore +0 -21
- data/test/helper.rb +0 -10
- data/test/test_wc.rb +0 -7
data/lib/wc/engine.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'wc/reader'
|
2
|
+
|
3
|
+
module Wc
|
4
|
+
class Engine
|
5
|
+
def initialize(options={})
|
6
|
+
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.read_from_file(filename)
|
10
|
+
Array(Wc::Reader.read(filename)).sort { |one, two| -(one[1] <=> two[1]) }
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.read_inline(a_text)
|
14
|
+
Array(Wc::Reader.consume(a_text)).sort { |one, two| -(one[1] <=> two[1]) }
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
end
|
data/lib/wc/reader.rb
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
module Wc
|
2
|
+
class Reader
|
3
|
+
HIDE_LIST = ['or', 'the', 'of', 'a', 'if', 'to', 'and', 'in', 'is', 'are']
|
4
|
+
|
5
|
+
def self.read(filename, hide_list=nil)
|
6
|
+
occurrences = Hash.new { |h, k| h[k] = 0 }
|
7
|
+
|
8
|
+
File.open(filename, "r") { |f|
|
9
|
+
f.each_line { |line|
|
10
|
+
Wc::Reader.consume(line)
|
11
|
+
}
|
12
|
+
}
|
13
|
+
occurrences
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.consume(a_text)
|
17
|
+
occurrences = Hash.new { |h, k| h[k] = 0 }
|
18
|
+
|
19
|
+
words = a_text.split
|
20
|
+
words.each { |w|
|
21
|
+
if ! HIDE_LIST.include?(w.downcase)
|
22
|
+
occurrences[w.downcase] += 1
|
23
|
+
end
|
24
|
+
}
|
25
|
+
occurrences
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
2
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
3
|
+
require 'rspec'
|
4
|
+
require 'wc'
|
5
|
+
|
6
|
+
# Requires supporting files with custom matchers and macros, etc,
|
7
|
+
# in ./support/ and its subdirectories.
|
8
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
9
|
+
|
10
|
+
RSpec.configure do |config|
|
11
|
+
|
12
|
+
end
|
data/spec/wc_spec.rb
ADDED
data/wc.gemspec
CHANGED
@@ -1,63 +1,98 @@
|
|
1
1
|
# Generated by jeweler
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{wc}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.99.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Paolo Perego"]
|
12
|
-
s.date = %q{
|
12
|
+
s.date = %q{2011-07-05}
|
13
13
|
s.default_executable = %q{wc}
|
14
14
|
s.description = %q{your ruby word counter experience}
|
15
15
|
s.email = %q{thesp0nge@gmail.com}
|
16
16
|
s.executables = ["wc"]
|
17
17
|
s.extra_rdoc_files = [
|
18
18
|
"LICENSE",
|
19
|
-
|
19
|
+
"README.rdoc"
|
20
20
|
]
|
21
21
|
s.files = [
|
22
22
|
".document",
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
23
|
+
"Gemfile",
|
24
|
+
"Gemfile.lock",
|
25
|
+
"LICENSE",
|
26
|
+
"README.rdoc",
|
27
|
+
"Rakefile",
|
28
|
+
"VERSION",
|
29
|
+
"bin/wc",
|
30
|
+
"doc/String.html",
|
31
|
+
"doc/Wc.html",
|
32
|
+
"doc/Wc/Engine.html",
|
33
|
+
"doc/Wc/Reader.html",
|
34
|
+
"doc/_index.html",
|
35
|
+
"doc/class_list.html",
|
36
|
+
"doc/classes/Wc.html",
|
37
|
+
"doc/classes/Wc.src/M000001.html",
|
38
|
+
"doc/classes/Wc.src/M000002.html",
|
39
|
+
"doc/classes/Wc.src/M000003.html",
|
40
|
+
"doc/classes/Wc.src/M000004.html",
|
41
|
+
"doc/classes/Wc.src/M000005.html",
|
42
|
+
"doc/classes/Wc.src/M000006.html",
|
43
|
+
"doc/created.rid",
|
44
|
+
"doc/css/common.css",
|
45
|
+
"doc/css/full_list.css",
|
46
|
+
"doc/css/style.css",
|
47
|
+
"doc/file.README.html",
|
48
|
+
"doc/file_list.html",
|
49
|
+
"doc/files/lib/wc_rb.html",
|
50
|
+
"doc/fr_class_index.html",
|
51
|
+
"doc/fr_file_index.html",
|
52
|
+
"doc/fr_method_index.html",
|
53
|
+
"doc/frames.html",
|
54
|
+
"doc/index.html",
|
55
|
+
"doc/js/app.js",
|
56
|
+
"doc/js/full_list.js",
|
57
|
+
"doc/js/jquery.js",
|
58
|
+
"doc/method_list.html",
|
59
|
+
"doc/rdoc-style.css",
|
60
|
+
"doc/top-level-namespace.html",
|
61
|
+
"lib/wc.rb",
|
62
|
+
"lib/wc/engine.rb",
|
63
|
+
"lib/wc/reader.rb",
|
64
|
+
"spec/spec_helper.rb",
|
65
|
+
"spec/wc_spec.rb",
|
66
|
+
"wc.gemspec"
|
33
67
|
]
|
34
68
|
s.homepage = %q{http://github.com/thesp0nge/wc}
|
35
|
-
s.
|
69
|
+
s.licenses = ["new BSD License"]
|
36
70
|
s.require_paths = ["lib"]
|
37
|
-
s.rubygems_version = %q{1.
|
71
|
+
s.rubygems_version = %q{1.6.2}
|
38
72
|
s.summary = %q{your ruby word counter experience}
|
39
|
-
s.test_files = [
|
40
|
-
"test/helper.rb",
|
41
|
-
"test/test_wc.rb"
|
42
|
-
]
|
43
73
|
|
44
74
|
if s.respond_to? :specification_version then
|
45
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
46
75
|
s.specification_version = 3
|
47
76
|
|
48
77
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
49
|
-
s.add_development_dependency(%q<
|
50
|
-
s.add_development_dependency(%q<
|
51
|
-
s.add_development_dependency(%q<
|
78
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
|
79
|
+
s.add_development_dependency(%q<yard>, ["~> 0.6.0"])
|
80
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
81
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.6.2"])
|
82
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
52
83
|
else
|
53
|
-
s.add_dependency(%q<
|
54
|
-
s.add_dependency(%q<
|
55
|
-
s.add_dependency(%q<
|
84
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
85
|
+
s.add_dependency(%q<yard>, ["~> 0.6.0"])
|
86
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
87
|
+
s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
|
88
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
56
89
|
end
|
57
90
|
else
|
58
|
-
s.add_dependency(%q<
|
59
|
-
s.add_dependency(%q<
|
60
|
-
s.add_dependency(%q<
|
91
|
+
s.add_dependency(%q<rspec>, ["~> 2.3.0"])
|
92
|
+
s.add_dependency(%q<yard>, ["~> 0.6.0"])
|
93
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
94
|
+
s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
|
95
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
61
96
|
end
|
62
97
|
end
|
63
98
|
|
metadata
CHANGED
@@ -1,124 +1,153 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: wc
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 98
|
9
|
-
- 2
|
10
|
-
version: 0.98.2
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.99.0
|
5
|
+
prerelease:
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Paolo Perego
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
date: 2010-09-20 00:00:00 +02:00
|
12
|
+
date: 2011-07-05 00:00:00.000000000 +02:00
|
19
13
|
default_executable: wc
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
22
|
-
name:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: rspec
|
17
|
+
requirement: &2156768960 !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ~>
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 2.3.0
|
23
|
+
type: :development
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: *2156768960
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: yard
|
28
|
+
requirement: &2156768200 !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.6.0
|
34
|
+
type: :development
|
23
35
|
prerelease: false
|
24
|
-
|
36
|
+
version_requirements: *2156768200
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: bundler
|
39
|
+
requirement: &2156766620 !ruby/object:Gem::Requirement
|
25
40
|
none: false
|
26
|
-
requirements:
|
27
|
-
- -
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
version: "0"
|
41
|
+
requirements:
|
42
|
+
- - ~>
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: 1.0.0
|
33
45
|
type: :development
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: builder
|
37
46
|
prerelease: false
|
38
|
-
|
47
|
+
version_requirements: *2156766620
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: jeweler
|
50
|
+
requirement: &2156764820 !ruby/object:Gem::Requirement
|
39
51
|
none: false
|
40
|
-
requirements:
|
41
|
-
- -
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
segments:
|
45
|
-
- 2
|
46
|
-
- 1
|
47
|
-
- 2
|
48
|
-
version: 2.1.2
|
52
|
+
requirements:
|
53
|
+
- - ~>
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 1.6.2
|
49
56
|
type: :development
|
50
|
-
version_requirements: *id002
|
51
|
-
- !ruby/object:Gem::Dependency
|
52
|
-
name: json_pure
|
53
57
|
prerelease: false
|
54
|
-
|
58
|
+
version_requirements: *2156764820
|
59
|
+
- !ruby/object:Gem::Dependency
|
60
|
+
name: rcov
|
61
|
+
requirement: &2156763080 !ruby/object:Gem::Requirement
|
55
62
|
none: false
|
56
|
-
requirements:
|
57
|
-
- -
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
|
60
|
-
segments:
|
61
|
-
- 1
|
62
|
-
- 4
|
63
|
-
- 3
|
64
|
-
version: 1.4.3
|
63
|
+
requirements:
|
64
|
+
- - ! '>='
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '0'
|
65
67
|
type: :development
|
66
|
-
|
68
|
+
prerelease: false
|
69
|
+
version_requirements: *2156763080
|
67
70
|
description: your ruby word counter experience
|
68
71
|
email: thesp0nge@gmail.com
|
69
|
-
executables:
|
72
|
+
executables:
|
70
73
|
- wc
|
71
74
|
extensions: []
|
72
|
-
|
73
|
-
extra_rdoc_files:
|
75
|
+
extra_rdoc_files:
|
74
76
|
- LICENSE
|
75
77
|
- README.rdoc
|
76
|
-
files:
|
78
|
+
files:
|
77
79
|
- .document
|
78
|
-
-
|
80
|
+
- Gemfile
|
81
|
+
- Gemfile.lock
|
79
82
|
- LICENSE
|
80
83
|
- README.rdoc
|
81
84
|
- Rakefile
|
82
85
|
- VERSION
|
83
86
|
- bin/wc
|
87
|
+
- doc/String.html
|
88
|
+
- doc/Wc.html
|
89
|
+
- doc/Wc/Engine.html
|
90
|
+
- doc/Wc/Reader.html
|
91
|
+
- doc/_index.html
|
92
|
+
- doc/class_list.html
|
93
|
+
- doc/classes/Wc.html
|
94
|
+
- doc/classes/Wc.src/M000001.html
|
95
|
+
- doc/classes/Wc.src/M000002.html
|
96
|
+
- doc/classes/Wc.src/M000003.html
|
97
|
+
- doc/classes/Wc.src/M000004.html
|
98
|
+
- doc/classes/Wc.src/M000005.html
|
99
|
+
- doc/classes/Wc.src/M000006.html
|
100
|
+
- doc/created.rid
|
101
|
+
- doc/css/common.css
|
102
|
+
- doc/css/full_list.css
|
103
|
+
- doc/css/style.css
|
104
|
+
- doc/file.README.html
|
105
|
+
- doc/file_list.html
|
106
|
+
- doc/files/lib/wc_rb.html
|
107
|
+
- doc/fr_class_index.html
|
108
|
+
- doc/fr_file_index.html
|
109
|
+
- doc/fr_method_index.html
|
110
|
+
- doc/frames.html
|
111
|
+
- doc/index.html
|
112
|
+
- doc/js/app.js
|
113
|
+
- doc/js/full_list.js
|
114
|
+
- doc/js/jquery.js
|
115
|
+
- doc/method_list.html
|
116
|
+
- doc/rdoc-style.css
|
117
|
+
- doc/top-level-namespace.html
|
84
118
|
- lib/wc.rb
|
85
|
-
-
|
86
|
-
-
|
119
|
+
- lib/wc/engine.rb
|
120
|
+
- lib/wc/reader.rb
|
121
|
+
- spec/spec_helper.rb
|
122
|
+
- spec/wc_spec.rb
|
87
123
|
- wc.gemspec
|
88
124
|
has_rdoc: true
|
89
125
|
homepage: http://github.com/thesp0nge/wc
|
90
|
-
licenses:
|
91
|
-
|
126
|
+
licenses:
|
127
|
+
- new BSD License
|
92
128
|
post_install_message:
|
93
|
-
rdoc_options:
|
94
|
-
|
95
|
-
require_paths:
|
129
|
+
rdoc_options: []
|
130
|
+
require_paths:
|
96
131
|
- lib
|
97
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
132
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
98
133
|
none: false
|
99
|
-
requirements:
|
100
|
-
- -
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
|
103
|
-
segments:
|
134
|
+
requirements:
|
135
|
+
- - ! '>='
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: '0'
|
138
|
+
segments:
|
104
139
|
- 0
|
105
|
-
|
106
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
+
hash: 4009966106642377193
|
141
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
142
|
none: false
|
108
|
-
requirements:
|
109
|
-
- -
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
|
112
|
-
segments:
|
113
|
-
- 0
|
114
|
-
version: "0"
|
143
|
+
requirements:
|
144
|
+
- - ! '>='
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '0'
|
115
147
|
requirements: []
|
116
|
-
|
117
148
|
rubyforge_project:
|
118
|
-
rubygems_version: 1.
|
149
|
+
rubygems_version: 1.6.2
|
119
150
|
signing_key:
|
120
151
|
specification_version: 3
|
121
152
|
summary: your ruby word counter experience
|
122
|
-
test_files:
|
123
|
-
- test/helper.rb
|
124
|
-
- test/test_wc.rb
|
153
|
+
test_files: []
|