nu 0.1.14 → 0.1.15

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/lib/nu/cli.rb CHANGED
@@ -16,9 +16,8 @@ module Nu
16
16
  method_options :location => :string
17
17
 
18
18
  def install(*names)
19
- @proj.ensure_default_config
20
-
21
- loc = @proj.get_location
19
+
20
+ loc = @proj.location
22
21
  cl = options['location']
23
22
  loc = cl unless cl.nil?
24
23
 
@@ -29,9 +28,14 @@ module Nu
29
28
 
30
29
  desc "lib FOLDER", "where do you want to store the gems"
31
30
  def lib(folder)
32
- @proj.set_location folder
31
+ @proj.location= folder
33
32
  end
34
33
 
34
+ desc "uselongnames", "turn the option of name + version number on"
35
+ def uselongnames
36
+ @proj.use_long_names
37
+ end
38
+
35
39
  def self.source_root
36
40
  File.dirname(__FILE__)
37
41
  end
data/lib/nu/loader.rb CHANGED
@@ -6,6 +6,7 @@ module Nu
6
6
  def self.load(name)
7
7
  load(name, 'lib')
8
8
  end
9
+
9
10
  def self.load(name, location)
10
11
  #improve the crap out of this
11
12
  @gem_to_copy = name
@@ -60,9 +61,15 @@ module Nu
60
61
  end
61
62
 
62
63
  def self.get_copy_to
64
+ proj = Nu::Project.new
65
+
63
66
  spec = get_gemspec @gem_to_copy
64
67
  #to be used in copying
65
- name = spec.full_name
68
+ if proj.should_use_long_names?
69
+ name = spec.full_name
70
+ else
71
+ name = spec.name
72
+ end
66
73
  to = Dir.pwd + "/#{@location}/#{name}"
67
74
  if Dir[to] == [] #may need a smarter guy here
68
75
  FileUtils.mkpath to
data/lib/nu/project.rb CHANGED
@@ -5,34 +5,64 @@ module Nu
5
5
 
6
6
  def initialize
7
7
  @config_file = ".nu/options.yaml"
8
+ ensure_default_config
8
9
  end
9
10
 
10
- def ensure_default_config
11
- if File.exist? @config_file
12
- return
13
- end
14
-
15
- content = YAML::dump( {'lib'=>'lib'} )
16
- add_file @config_file, content
17
- end
11
+
18
12
 
19
- def get_location
20
- content = YAML.load_file @config_file
21
- content['lib']
13
+ #need to meta awesome this
14
+ def location
15
+ opts = get_options
16
+ opts['lib']
22
17
  end
23
-
24
- def set_location(name)
25
- File.delete @config_file if File.exist? @config_file
26
-
27
- content = YAML::dump( { 'lib' => name })
28
-
29
- File.open(@config_file, 'w') {|f| f.write(content) }
18
+ #need to meta awesome this
19
+ def location=(name)
20
+ opts = get_options
21
+ opts['lib']=name
22
+ save_file(opts)
23
+ nil
30
24
  end
25
+
26
+ #need to meta awesome this
27
+ def should_use_long_names?
28
+ opts = get_options
29
+ opts['uselongnames']
30
+ end
31
+
32
+ #need to meta awesome this
33
+ def use_long_names
34
+ opts = get_options
35
+ opts['uselongnames']=true
36
+ save_file(opts)
37
+ nil
38
+ end
39
+
31
40
 
32
41
  def add_file(name, content)
33
42
  FileUtils.mkdir_p(File.dirname(name))
34
43
  File.open(name, 'w'){|f| f.write(content)}
35
44
  end
45
+
46
+ private
47
+ def ensure_default_config
48
+ if File.exist? @config_file
49
+ return
50
+ end
51
+
52
+ save_file( {'lib'=>'lib','uselongnames'=>false} )
53
+ end
54
+
55
+ def get_options
56
+ YAML.load_file @config_file
57
+ end
58
+
59
+ def save_file(opts)
60
+ content = YAML::dump(opts)
61
+ File.delete @config_file if File.exist? @config_file
62
+ dir_name = File.dirname(@config_file)
63
+ FileUtils.mkdir_p(dir_name) unless File.exist? dir_name
64
+ File.open(@config_file, 'w') {|f| f.write(content) }
65
+ end
36
66
 
37
67
  end
38
68
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nu
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
4
+ hash: 5
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 14
10
- version: 0.1.14
9
+ - 15
10
+ version: 0.1.15
11
11
  platform: ruby
12
12
  authors:
13
13
  - Dru Sellers