class Ppl::Application::Configuration

Constants

REPO_CONFIG
USER_CONFIG

Public Instance Methods

address_book_path() click to toggle source
# File lib/ppl/application/configuration.rb, line 8
def address_book_path
  default_config = default_configuration
  user_config    = user_configuration

  path = default_config["address book"]["path"]
  if !user_config["address book"].nil? && !user_config["address book"]["path"].nil?
    path = File.expand_path(user_config["address book"]["path"])
  end

  return path
end
aliases() click to toggle source
# File lib/ppl/application/configuration.rb, line 20
def aliases
  user_aliases = user_configuration["alias"]
  default_aliases = default_configuration["alias"]
  if user_aliases.nil?
    default_aliases
  else
    user_aliases
  end
end
color_enabled(command_name) click to toggle source
# File lib/ppl/application/configuration.rb, line 30
def color_enabled(command_name)
  config = user_configuration
  if !config["color"].nil? && config["color"][command_name] == "true"
    true
  else
    false
  end
end
command_colors(command_name) click to toggle source
# File lib/ppl/application/configuration.rb, line 39
def command_colors(command_name)
  return {} unless color_enabled(command_name)
  config = user_configuration
  search = "color \"#{command_name}\""
  result = config[search]
end
pretty() click to toggle source
# File lib/ppl/application/configuration.rb, line 46
def pretty
  user_configuration["pretty"]
end

Private Instance Methods

default_configuration() click to toggle source
# File lib/ppl/application/configuration.rb, line 52
def default_configuration
  {
    "alias" => {},
    "address book" => {
      "path" => Dir.pwd
    },
  }
end
repository_configuration() click to toggle source
# File lib/ppl/application/configuration.rb, line 75
def repository_configuration
  {}
end
user_configuration() click to toggle source
# File lib/ppl/application/configuration.rb, line 61
def user_configuration
  unless @user_config.nil?
    return @user_config
  end
  filename     = File.expand_path(USER_CONFIG)
  @user_config = {}
  if File.exist?(filename)
    @user_config = IniFile::load(filename).to_h
  elsif File.exist?(xdg_path)
    @user_config = IniFile::load(xdg_path).to_h
  end
  return @user_config
end
xdg_path() click to toggle source
# File lib/ppl/application/configuration.rb, line 79
def xdg_path
  default = "~/.config"
  custom  = ENV["XDG_CONFIG_HOME"]
  if custom.nil?
    path = File.expand_path(default)
  else
    path = File.expand_path(custom)
  end
  File.join(path, "ppl", "config")
end