class SpicedRumby::CLIInput

Public Class Methods

autocompletes() click to toggle source
# File lib/spiced_rumby/cli_input.rb, line 4
def autocompletes
  commands = MeshChat::CLI::COMMAND_MAP.map{ |k, v| "/#{k}" }
  aliases = MeshChat::Node.all.map{ |n| "#{n.alias_name}" }
  commands + aliases
end

Public Instance Methods

get_input() click to toggle source

called every time meshchat wants a line of text from the user

# File lib/spiced_rumby/cli_input.rb, line 12
def get_input
  # update auto completion
  completion = proc{ |s| self.class.autocompletes.grep(/^#{Regexp.escape(s)}/) }
  Readline.completion_proc = completion

  Readline.readline('> ', true)
end