mygen 0.3.7 → 0.3.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c59ac4f30265312e8806c87e5adcfaf1f3d3c643
4
- data.tar.gz: df9967ccf24e6b25951c056700e817a99777ddc4
3
+ metadata.gz: 6432b083fd71bce775372cf2530512e2a257dd71
4
+ data.tar.gz: c0204638b287a0514430e254937dda0d8872d738
5
5
  SHA512:
6
- metadata.gz: 1a5e629490341c8ce9524b7fea1f2bde82381557f8c53330fe14fc2f0983d2a10446495676383974b53857fd4d849f231ba50ac6beb6fda14475fa4c2fcc88a0
7
- data.tar.gz: 1cb649c7a466c5b276aefadb71628eb30086f9a1298458ddc82a37666c068d280cd13f51dc195f1729faf1e9aa2723c95a1a69aa46664ac77b592b5c05d8d4c7
6
+ metadata.gz: 6b9195641693a510435cb0b1c5de5c412c072ceb3ec955334af3c3c918737140aa9aed0cb36dc4698645bd39cc27132e077375967b6020b2039fb91a727adf56
7
+ data.tar.gz: be0688b2c77a8d9b12cc8ebd5ef746cb7791063ce31b136bc97af120577ea5fc016f75affc1027f051ce56df4ebc2767dbc4cf116d8e2136b10379d9edafc5d4
data/README.md CHANGED
@@ -24,6 +24,11 @@ Or install it yourself as:
24
24
  myg --help
25
25
  ```
26
26
 
27
+
28
+ ## Substitution of filenames
29
+
30
+ Files named with ´´´ __name ´´´ will be renamed to match the attribute ´´´ name ´´´
31
+
27
32
  ## Development
28
33
 
29
34
  After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -2,6 +2,7 @@ require "mygen/version"
2
2
  require "mygen/plugins"
3
3
  require "mygen/plugins/mygen_generator"
4
4
  require "mygen/generator"
5
+ require "mygen/naming"
5
6
  require "erb"
6
7
 
7
8
  module Mygen
@@ -1,5 +1,7 @@
1
+ require 'mygen/naming'
1
2
  module Mygen
2
3
  class Generator
4
+ include Mygen::Naming
3
5
  attr_accessor :name, :dest_dir, :dry_run, :template_source_dir
4
6
 
5
7
  def initialize
@@ -15,12 +17,7 @@ module Mygen
15
17
  end
16
18
 
17
19
  def generator_name
18
- self.class.name.gsub(/::/, '/').
19
- gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
20
- gsub(/([a-z\d])([A-Z])/,'\1_\2').
21
- tr("-", "_").
22
- split('/').last.
23
- downcase
20
+ snake_case(self.class.name)
24
21
  end
25
22
 
26
23
  def fileutils
@@ -0,0 +1,37 @@
1
+ module Mygen
2
+ module Naming
3
+
4
+ # Camel case name
5
+ def cc_name
6
+ camel_case(@name)
7
+ end
8
+
9
+ def camel_case(str)
10
+ str.gsub(/(-|_)/, '_').split('_').collect(&:capitalize).join
11
+ end
12
+
13
+ # Snake case name
14
+ def s_name
15
+ snake_case(@name)
16
+ end
17
+
18
+ def snake_case(str)
19
+ str.gsub(/::/, '/').
20
+ gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
21
+ gsub(/([a-z\d])([A-Z])/,'\1_\2').
22
+ tr("-", "_").
23
+ split('/').last.
24
+ downcase
25
+ end
26
+
27
+ # Dash name, will transform underscores into dash
28
+ # E.g UserDevice will turn into user-device
29
+ def d_name
30
+ dash_case(@name)
31
+ end
32
+
33
+ def dash_case(str)
34
+ snake_case(str).tr('_','-')
35
+ end
36
+ end
37
+ end
@@ -1,3 +1,3 @@
1
1
  module Mygen
2
- VERSION = "0.3.7"
2
+ VERSION = "0.3.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mygen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7
4
+ version: 0.3.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kristian Rasmussen
@@ -115,6 +115,7 @@ files:
115
115
  - bin/setup
116
116
  - lib/mygen.rb
117
117
  - lib/mygen/generator.rb
118
+ - lib/mygen/naming.rb
118
119
  - lib/mygen/plugins.rb
119
120
  - lib/mygen/plugins/mygen_generator.rb
120
121
  - lib/mygen/version.rb