rubyc 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -1,6 +1,10 @@
1
1
  = Description
2
2
  Adds Ruby's powers to the command line.
3
- Supports many enumerator methods applied to STDIN. The current line is represented by the line variable.
3
+ Supports many enumerator methods applied to STDIN. The current line is represented by the "line" variable name or it's shorter alias 'l'.
4
+
5
+ To get help:
6
+ rubyc help
7
+
4
8
  == Example
5
9
  $ ls | rubyc map 'line.upcase'
6
10
  GEMFILE
@@ -10,3 +14,17 @@ Supports many enumerator methods applied to STDIN. The current line is represent
10
14
  ACTIONMAILER
11
15
  ACTIONPACK
12
16
  ...
17
+
18
+ Here are the currently supported methods:
19
+ compact # Remove empty lines
20
+ count_by # Count the number of lines that have the same property. The property is defined by the return value of the given the block.
21
+ grep # Enumerable#grep
22
+ help [TASK] # Describe available tasks or one specific task
23
+ map # Apply Enumerable#map on each line
24
+ merge # Merge consecutive lines
25
+ scan # String#scan
26
+ select # Enumerable#select
27
+ sort_by # Emumerable#sort_by
28
+ sum # Rails Enumerable#sum
29
+ uniq # uniq
30
+
data/bin/rubyc CHANGED
@@ -11,6 +11,7 @@ module ::Enumerable
11
11
  end
12
12
  end
13
13
 
14
+ # This method was borrowed from ActiveSupport code
14
15
  def group_by
15
16
  self.inject({}) do |memo, elem|
16
17
  key = yield elem
@@ -19,7 +20,8 @@ module ::Enumerable
19
20
  memo
20
21
  end
21
22
  end
22
-
23
+
24
+ # File activesupport/lib/active_support/core_ext/enumerable.rb, line 57
23
25
  def sum(identity = 0, &block)
24
26
  if block_given?
25
27
  map(&block).sum(identity)
@@ -51,12 +53,12 @@ class Rubyc < Thor
51
53
  desc :select, "Apply Enumerable#select on each line"
52
54
  def select(code)
53
55
  proc = eval( "Proc.new{|line| l = line; #{code}}" )
54
- STDIN.map do |line|
56
+ STDIN.each do |line|
55
57
  puts line if proc.call(line.chomp)
56
58
  end
57
59
  end
58
60
 
59
- desc :count_by, "Count by"
61
+ desc :count_by, "Count the number of lines that have the same property. The property is defined by the return value of the given the block"
60
62
  def count_by(code = nil)
61
63
  code ||= "line"
62
64
  proc = eval( "Proc.new{|line| l = line; #{code}}" )
@@ -98,7 +100,7 @@ class Rubyc < Thor
98
100
 
99
101
  desc :compact, "Remove empty lines"
100
102
  def compact
101
- puts STDIN.select{|line| line.strip != ""}
103
+ STDIN.each{|line| puts line if line.strip != ""}
102
104
  end
103
105
 
104
106
  desc :merge, "Merge consecutive lines"
data/lib/rubyc/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rubyc
2
- VERSION = "0.0.10"
2
+ VERSION = "0.0.11"
3
3
  end
data/rubyc.gemspec CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Martin Chabot"]
10
10
  s.email = ["chabotm@gmail.com"]
11
- s.homepage = ""
11
+ s.homepage = "https://github.com/martinos/rubyc"
12
12
  s.summary = %q{Adds Ruby's powers to the command line}
13
13
  s.description = %q{Adds Ruby's powers to the command line}
14
14
  s.rubyforge_project = "rubyc"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyc
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 9
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 10
10
- version: 0.0.10
9
+ - 11
10
+ version: 0.0.11
11
11
  platform: ruby
12
12
  authors:
13
13
  - Martin Chabot
@@ -15,10 +15,10 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-06-02 00:00:00 -04:00
19
- default_executable:
18
+ date: 2012-01-06 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
21
+ prerelease: false
22
22
  version_requirements: &id001 !ruby/object:Gem::Requirement
23
23
  none: false
24
24
  requirements:
@@ -28,11 +28,11 @@ dependencies:
28
28
  segments:
29
29
  - 0
30
30
  version: "0"
31
- prerelease: false
32
- type: :runtime
33
31
  requirement: *id001
32
+ type: :runtime
34
33
  name: thor
35
34
  - !ruby/object:Gem::Dependency
35
+ prerelease: false
36
36
  version_requirements: &id002 !ruby/object:Gem::Requirement
37
37
  none: false
38
38
  requirements:
@@ -42,11 +42,11 @@ dependencies:
42
42
  segments:
43
43
  - 0
44
44
  version: "0"
45
- prerelease: false
46
- type: :development
47
45
  requirement: *id002
46
+ type: :development
48
47
  name: rake
49
48
  - !ruby/object:Gem::Dependency
49
+ prerelease: false
50
50
  version_requirements: &id003 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
@@ -57,9 +57,8 @@ dependencies:
57
57
  - 1
58
58
  - 0
59
59
  version: "1.0"
60
- prerelease: false
61
- type: :development
62
60
  requirement: *id003
61
+ type: :development
63
62
  name: bundler
64
63
  description: Adds Ruby's powers to the command line
65
64
  email:
@@ -79,8 +78,7 @@ files:
79
78
  - lib/rubyc.rb
80
79
  - lib/rubyc/version.rb
81
80
  - rubyc.gemspec
82
- has_rdoc: true
83
- homepage: ""
81
+ homepage: https://github.com/martinos/rubyc
84
82
  licenses: []
85
83
 
86
84
  post_install_message:
@@ -109,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
109
107
  requirements: []
110
108
 
111
109
  rubyforge_project: rubyc
112
- rubygems_version: 1.6.2
110
+ rubygems_version: 1.8.11
113
111
  signing_key:
114
112
  specification_version: 3
115
113
  summary: Adds Ruby's powers to the command line