class Shellplay::Config

Public Class Methods

new(options = nil, input = STDIN, output = STDOUT) click to toggle source
Calls superclass method
# File lib/shellplay/config.rb, line 12
def initialize(options = nil, input = STDIN, output = STDOUT)
  super(options, input = STDIN, output = STDOUT, true)
end

Public Instance Methods

set_defaults() click to toggle source

override default config values

Calls superclass method
# File lib/shellplay/config.rb, line 17
def set_defaults
  default :basedir, File.join(ENV['HOME'], '.shellplay')
  default :basefile, File.join(self.basedir, 'config.yml')
  super
end
setup() click to toggle source

interactive configuration creation process uses cliprompt for console interaction refer to github.com/mose/cliprompt for documentation

# File lib/shellplay/config.rb, line 26
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