Module: CW::Cfg

Includes:
FileDetails
Included in:
Dsl
Defined in:
lib/cw/config.rb

Constant Summary collapse

CONFIG_METHODS =
[
  :name,:wpm,:effective_wpm,:frequency,:audio_filename,:audio_dir,
  :book_name,:book_dir,:play_command,:size,:run_default,:word_spacing,
  :command_line,:author,:title,:quality,:ebook2cw_path,:noise,:tone,
  :word_count,:volume,:list_colour,:success_colour,:fail_colour,
  :tx_colour,:rx_colour,:menu_colour,:no_run,:run,:print_letters,:no_print,
  :use_ebook2cw,:dictionary,:containing,:begin,:end,:including,
  :word_filename,:max,:min,:exit, :quit
]

Constants included from FileDetails

FileDetails::ABBREVIATIONS, FileDetails::AUDIO_DIR, FileDetails::BOOKMARK_FILE, FileDetails::CALLS, FileDetails::CALLS_FILENAME, FileDetails::CODE, FileDetails::CODE_FILENAME, FileDetails::CONFIG_FILENAME, FileDetails::CONFIG_PATH, FileDetails::DASH_FILENAME, FileDetails::DATA, FileDetails::DEF_AUDIO_FILENAME, FileDetails::DICT_DIR, FileDetails::DICT_FILENAME, FileDetails::DOT_AUDIO_DIR, FileDetails::DOT_CW_DIR, FileDetails::DOT_FILENAME, FileDetails::E_SPACE_FILENAME, FileDetails::HERE, FileDetails::Q_CODES, FileDetails::ROOT, FileDetails::SPACE_FILENAME, FileDetails::TEXT, FileDetails::USER_CONFIG_PATH, FileDetails::WORK_DIR

Class Method Summary collapse

Methods included from FileDetails

#audio_dir, #audio_filename, #dash_path, #default_audio_dir, #dot_audio_dir, #dot_cw_dir, #dot_path, #e_space_path, #init_filenames, #process_audio_dir, #process_dot_audio, #process_dot_cw, #progress_file, #space_path, #user_audio_dir

Class Method Details

.configObject



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/cw/config.rb', line 19

def self.config
  unless @config
    @config = ParseConfig.new(CONFIG_PATH)
    CONFIG_METHODS.each do |method|
      unless @config[method.to_s]
        @config.add method.to_s, nil
      end
    end
    self.user_config
    @config.params["wpm"] = 50 if(ENV["CW_ENV"] == "test")
    @config.params["effective_wpm"] = 50 if(ENV["CW_ENV"] == "test")
#        puts " @config[wpm] = #{@config['wpm']}"
  end
#      puts "@config = #{@config.params}"
  @config
end

.get_param(param) ⇒ Object



56
57
58
59
# File 'lib/cw/config.rb', line 56

def self.get_param param
  self.reset_if_nil param
  @config[param]
end

.resetObject



44
45
46
# File 'lib/cw/config.rb', line 44

def self.reset
  @config = nil
end

.reset_if_nil(param) ⇒ Object



52
53
54
# File 'lib/cw/config.rb', line 52

def self.reset_if_nil param
  self.reset_param param if @config[param].nil?
end

.reset_param(param) ⇒ Object



48
49
50
# File 'lib/cw/config.rb', line 48

def self.reset_param param
  @config.params[param] = false
end

.user_configObject



36
37
38
39
40
41
42
# File 'lib/cw/config.rb', line 36

def self.user_config
  user_cfg = File.join(WORK_DIR, CONFIG_FILENAME)
  if File.exist? user_cfg
    temp = ParseConfig.new(user_cfg);
    @config.params = @config.params.merge(temp.params)
  end
end