class SublimeDSL::SublimeText::Package::DSLReader
'Universal' DSL reader: reads any DSL block and updates its package.
Public Class Methods
new(file, package)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 12 def initialize(file, package) @file = file @package = package instance_eval File.read(file, encoding: 'utf-8'), file end
Public Instance Methods
commands(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 58 def commands(*args, &block) r = CommandSet::DSLReader.new r.commands(*args, &block) @package.command_sets.concat r._command_sets end
keyboard(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 83 def keyboard(*args, &block) raise Error, "keyboards must be defined in a separate *.keyboard.rb file" end
keymap(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 76 def keymap(*args, &block) r = KeyMap::DSLReader.new r._file = @file r.keymap(*args, &block) @package.keymaps.concat r._keymaps end
language(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 28 def language(*args, &block) r = TextMate::Grammar::DSLReader.new r.language(*args, &block) @package.grammars.concat r._grammars end
macro(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 52 def macro(*args, &block) r = Macro::DSLReader.new r.macro(*args, &block) @package.macros.concat r._macros end
method_missing(sym, *args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 18 def method_missing(sym, *args, &block) raise DSLError, "'#{sym}' is not a valid Package DSL statement" end
mousemap(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 70 def mousemap(*args, &block) r = MouseMap::DSLReader.new r.mousemap(*args, &block) @package.mousemaps.concat r._mousemaps end
preferences(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 34 def preferences(*args, &block) r = TextMate::Preference::DSLReader.new r.preferences(*args, &block) @package.preferences.concat r._preferences end
settings(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 46 def settings(*args, &block) r = SettingSet::DSLReader.new r.settings(*args, &block) @package.setting_sets.concat r._setting_sets end
snippets(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 40 def snippets(*args, &block) r = TextMate::Snippet::DSLReader.new r.snippets(*args, &block) @package.snippets.concat r._snippets end
theme(*args, &block)
click to toggle source
# File lib/sublime_dsl/sublime_text/package/dsl_reader.rb, line 22 def theme(*args, &block) r = TextMate::Theme::DSLReader.new r.theme(*args, &block) @package.themes.concat r._themes end