revans-sleeve 0.1.1 → 0.2.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/changelog.rdoc CHANGED
@@ -1,7 +1,13 @@
1
1
 
2
- Mon Nov 17, 2008
2
+ Version 0.1.0
3
3
  * Initial creation of Sleeve
4
4
  * A Generator for a Gem Sleeve
5
5
  * An Option Parser
6
6
  * Creates a GemSpec file
7
- * Specs are none existent :(
7
+ * Specs are none existent :(
8
+
9
+ Version 0.2.0
10
+ * Added an extension for the String class
11
+ * Fixed some bugs
12
+ * Added specs for the String extension
13
+ * Changed how Version is setup in the base file
@@ -0,0 +1,18 @@
1
+ class String
2
+
3
+ # change a pharse ('test it now') or ("test_it_now") to a classname ('TestItNow')
4
+ def classify
5
+ clean.split(' ').each { |word| word.capitalize! }.join('')
6
+ end
7
+
8
+ # change a phrase ('testing now') to an instance variable name ('testing_now')
9
+ def instantify
10
+ clean.gsub(/\s+/, '_').downcase
11
+ end
12
+
13
+ # clean a string of unwanted characters before we turn into a class or variable name
14
+ def clean
15
+ gsub(/[^\w\s\-\—]/,'').gsub(/[^\w]|[\_]/,' ').split.join(' ')
16
+ end
17
+
18
+ end
@@ -41,19 +41,14 @@ module Sleeve
41
41
  def generate_lib_file
42
42
  File.open(File.join(@options.gem_lib, "#{@options.name}.rb"), "w+") do |f|
43
43
  f.puts <<-EX
44
- module #{camel_case(@options.name)}
45
- module Version #:nodoc:
46
- Major = '0'
47
- Minor = '1'
48
- Tweak = '0'
49
- String = [Major, Minor, Tweak].join('.')
50
- end
44
+ module #{@options.name.classify}
45
+ Version = "0.1.0"
51
46
  end
52
47
 
53
48
  # Required Gems
54
49
 
55
50
  # Gem specific Requires
56
- # require "#{@options.name}/"
51
+ # require File.dirname(__FILE__) + "/#{@options.name}/"
57
52
  EX
58
53
  end
59
54
  end
@@ -169,16 +164,6 @@ end
169
164
  def exit_message
170
165
  puts "\nYour new Gem, #{@options.name}, has been created.\n"
171
166
  end
172
-
173
- private
174
-
175
- # Camel Case
176
- def camel_case(word)
177
- word = word.gsub(/[^a-zA-Z_\- ]/," ")
178
- word = word.gsub(/_/, " ")
179
- word = " " + word.split.join(" ")
180
- word.gsub(/ (.)/) { $1.upcase }
181
- end
182
-
167
+
183
168
  end
184
169
  end
data/lib/sleeve.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Sleeve
2
- Version = "0.1.1"
2
+ Version = "0.2.0"
3
3
  class GemNameRequired < StandardError; end
4
4
  end
5
5
 
@@ -7,5 +7,6 @@ end
7
7
  %w[optparse ostruct fileutils].each { |library| require library }
8
8
 
9
9
  # Gem specific Requires
10
+ require File.dirname(__FILE__) + "/sleeve/extensions/string"
10
11
  require File.dirname(__FILE__) + "/sleeve/parser"
11
12
  require File.dirname(__FILE__) + "/sleeve/generate"
data/readme.markdown CHANGED
@@ -1,3 +1,22 @@
1
1
  # Sleeve
2
2
 
3
- Sleeve is a very simple Gem Generator that creates a gemspec that can be used by RubyGems and Github to build your Gems. Sleeve does not require additional gems like newgem does and is much lighter.
3
+ Sleeve is a very simple Gem Generator that creates a gemspec that can be used by RubyGems and Github to build your Gems. Sleeve does not require additional gems like newgem does and is much lighter.
4
+
5
+ ## Installing from Github
6
+
7
+ sudo gem install revans-sleeve
8
+
9
+ ## Cloning
10
+
11
+ git clone git://github.com/revans/sleeve.git
12
+ cd sleeve
13
+ gem build sleeve.gemspec
14
+ sudo gem install sleeve-0.1.1.gem
15
+
16
+ ## Usage
17
+
18
+ sleeve --name gem_name --path /Users/rrevans/Desktop
19
+
20
+ --name is required and is used as the name of your Gem
21
+
22
+ --path is optional. If not specific it will use your current directory.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: revans-sleeve
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Evans
@@ -32,6 +32,7 @@ files:
32
32
  - lib/sleeve.rb
33
33
  - lib/sleeve/generate.rb
34
34
  - lib/sleeve/parser.rb
35
+ - lib/sleeve/extensions/string.rb
35
36
  has_rdoc: true
36
37
  homepage: http://robertrevans.com
37
38
  post_install_message: