class Sublime::Settings

Attributes

file[R]
filepath[R]

Public Class Methods

default() click to toggle source
# File lib/sublime/settings.rb, line 41
def default
  new("#{default_package_path}/.sublime-settings")
end
default_package_path() click to toggle source

Paths

#
# File lib/sublime/settings.rb, line 52
def default_package_path
  "#{sublime_path}/Packages/Default"
end
new(filepath = nil) click to toggle source
# File lib/sublime/settings.rb, line 7
def initialize(filepath = nil)
  if filepath
    @filepath = File.expand_path(filepath)
    @file     = File.open(@filepath, "r")
    self.merge! JSON.parse(file.read)
  end
end
user() click to toggle source
# File lib/sublime/settings.rb, line 45
def user
  new("#{user_package_path}/Preferences.sublime-settings")
end
user_package_path() click to toggle source
# File lib/sublime/settings.rb, line 56
def user_package_path
  "#{sublime_path}/Packages/User"
end

Public Instance Methods

full_configs() click to toggle source
# File lib/sublime/settings.rb, line 15
def full_configs
  klass = self.class
  klass.default.
    merge(klass.system_default).
    merge(self)
end
save!() click to toggle source
# File lib/sublime/settings.rb, line 28
def save!
  File.open @filepath, "w+" do |file|
    file.puts JSON.pretty_generate(self)
  end
end
update!(conf = {}) click to toggle source
# File lib/sublime/settings.rb, line 34
def update!(conf = {})
  merge!(conf)
  save!
end
write!() click to toggle source
# File lib/sublime/settings.rb, line 22
def write!
  user = self.class.user
  user = self # transfer data
  user.save!
end