Class: Shellplay::Config

Inherits:
ConfigStruct
  • Object
show all
Includes:
Cliprompt
Defined in:
lib/shellplay/config.rb

Instance Method Summary collapse

Constructor Details

#initialize(options = nil, input = STDIN, output = STDOUT) ⇒ Config

Returns a new instance of Config.



10
11
12
# File 'lib/shellplay/config.rb', line 10

def initialize(options = nil, input = STDIN, output = STDOUT)
  super(options, input = STDIN, output = STDOUT, true)
end

Instance Method Details

#set_defaultsObject



14
15
16
17
18
# File 'lib/shellplay/config.rb', line 14

def set_defaults
  default :basedir, File.join(ENV['HOME'], '.shellplay')
  default :basefile, File.join(self.basedir, 'config.yml')
  super
end

#setupObject



20
21
22
23
24
25
26
27
28
29
# File 'lib/shellplay/config.rb', line 20

def setup
  unless self.prompt && self.timeformat
    values = {}
    output.puts Paint['Create a new shellplay configuration:', :blue]
    #values['editor'] = guess 'EDITOR', 'What is the path to launch your text editor?', 'vim'
    values['prompt'] = ask 'What is the default prompt you want to use?', "\e[36m #{ENV['USER']} > \e[0m"
    values['timeformat'] = ask 'What is the time format you want to display?', '%.1f'
    write values
  end
end