class Redwood::Console
Constants
- RELOAD_WHITELIST
files that won't cause problems when reloaded TODO expand this list / convert to blacklist
Public Class Methods
new(mode)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 8 def initialize mode @mode = mode @label_service = LabelService.new end
Public Instance Methods
add_labels(query, *labels)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 17 def add_labels(query, *labels) count = @label_service.add_labels(query, *labels) print_buffer_dirty_msg count end
clear_hooks()
click to toggle source
# File lib/sup/modes/console_mode.rb, line 73 def clear_hooks HookManager.clear nil end
loglevel()
click to toggle source
# File lib/sup/modes/console_mode.rb, line 35 def loglevel; Redwood::Logger.level; end
p(x;)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 41 def p x; puts x.inspect end
puts(x;)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 40 def puts x; @mode << "#{x.to_s.rstrip}\n" end
query(query)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 13 def query(query) Enumerator.new(Index.instance, :each_message, Index.parse_query(query)) end
reload()
click to toggle source
# File lib/sup/modes/console_mode.rb, line 47 def reload old_verbose = $VERBOSE $VERBOSE = nil old_features = $".dup begin fs = $".grep(/^sup\//) fs.reject! { |f| not RELOAD_WHITELIST.member? f } fs.each { |f| $".delete f } fs.each do |f| @mode << "reloading #{f}\n" begin require f rescue LoadError => e raise unless e.message =~ /no such file to load/ end end rescue Exception $".clear $".concat old_features raise ensure $VERBOSE = old_verbose end true end
remove_labels(query, *labels)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 22 def remove_labels(query, *labels) count = @label_service.remove_labels(query, *labels) print_buffer_dirty_msg count end
set_loglevel(level)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 36 def set_loglevel(level); Redwood::Logger.level = level; end
special_methods()
click to toggle source
# File lib/sup/modes/console_mode.rb, line 38 def special_methods; public_methods - Object.methods end
xapian()
click to toggle source
# File lib/sup/modes/console_mode.rb, line 33 def xapian; Index.instance.instance_variable_get :@xapian; end
Private Instance Methods
print_buffer_dirty_msg(msg_count)
click to toggle source
# File lib/sup/modes/console_mode.rb, line 27 def print_buffer_dirty_msg msg_count puts "Scanned #{msg_count} messages." puts "You might want to refresh open buffers with `@` key." end