Method: Microgem::Generator#load_settings

Defined in:
lib/microgem/generator.rb

#load_settingsObject



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/microgem/generator.rb', line 22

def load_settings
  dotfile_path = File.expand_path("~/.microgem")
  if File.exist? dotfile_path
    @settings = JSON.load File.read(dotfile_path)
  else
    @settings = {}
    say "This is your first microgem. Please tell me who you are!"
    guess_author = `git config user.name`.chomp
    guess_author = nil if guess_author.empty?
    guess_email  = `git config user.email`.chomp
    guess_email = nil if guess_email.empty?
    guess_github = `git config github.user`.chomp
    guess_github = nil if guess_github.empty?
    @settings["author"]  = ask("Your Name" + (guess_author ? " [#{guess_author}]:" : ":"))
    @settings["author"] = guess_author if @settings["author"].empty? && guess_author
    @settings["email"]   = ask("Your E-Mail" + (guess_email ? " [#{guess_email}]:" : ":")) || guess_email
    @settings["email"] = guess_email if @settings["email"].empty? && guess_email
    @settings["website"] = ask("Your Website:")
    @settings["github"]  = ask("Your GitHub Name" + (guess_github ? " [#{guess_github}]:" : ":")) || guess_github
    @settings["github"] = guess_github if @settings["github"].empty? && guess_github
    File.write dotfile_path, JSON.dump(@settings)
  end
end