Module: SublimeDSL::SublimeText

Defined in:
lib/sublime_dsl/sublime_text.rb,
lib/sublime_dsl/sublime_text/menu.rb,
lib/sublime_dsl/sublime_text/macro.rb,
lib/sublime_dsl/sublime_text/mouse.rb,
lib/sublime_dsl/sublime_text/keymap.rb,
lib/sublime_dsl/sublime_text/command.rb,
lib/sublime_dsl/sublime_text/package.rb,
lib/sublime_dsl/sublime_text/keyboard.rb,
lib/sublime_dsl/sublime_text/mousemap.rb,
lib/sublime_dsl/sublime_text/command_set.rb,
lib/sublime_dsl/sublime_text/setting_set.rb,
lib/sublime_dsl/sublime_text/package/reader.rb,
lib/sublime_dsl/sublime_text/package/writer.rb,
lib/sublime_dsl/sublime_text/package/exporter.rb,
lib/sublime_dsl/sublime_text/package/importer.rb,
lib/sublime_dsl/sublime_text/keymap/dsl_reader.rb,
lib/sublime_dsl/sublime_text/package/dsl_reader.rb

Defined Under Namespace

Classes: Command, CommandSet, KeyMap, Keyboard, Macro, Menu, Mouse, MouseMap, Package, SettingSet

Class Method Summary collapse

Class Method Details

.order_config(files) ⇒ Object

Order a series of config files like ST does:

  • Default/* first,

  • then packages alphabetically,

  • then User/Default*,

  • then User/* alphabetically.



40
41
42
43
44
45
# File 'lib/sublime_dsl/sublime_text.rb', line 40

def self.order_config(files)
  default, other = files.partition { |f| f.start_with?('Default') }
  user, other = other.partition { |f| f.start_with?('User') }
  user_default, user_other = user.partition { |f| f.start_with?('User/Default') }
  default.sort + other.sort + user_default.sort + user_other.sort
end

.packages_dirObject

Path to the Packages directory.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/sublime_dsl/sublime_text.rb', line 19

def self.packages_dir
  @packages_dir ||=
    case Tools.os
    when :Windows
      ENV['APPDATA'].gsub('\\', '/') << '/Sublime Text 2/Packages'
    when :OSX
      "~/Library/Application Support/Sublime Text 2/Packages"
    when :Linux
      "~/.config/sublime-text-2/Packages"
    else
      raise NotImplementedError,
        "don't know the location of Sublime Text packages on #{os}"
    end
end