Sha256: 04af8e9d86f4b01c1b4015b1d5836656f2fa5679b2278a44c5a65ba05b5a42f9

Contents?: true

Size: 897 Bytes

Versions: 23

Compression:

Stored size: 897 Bytes

Contents

require 'rib'

module Rib::Completion
  extend Rib::Plugin
  Shell.use(self)

  # --------------- Rib API ---------------

  def before_loop
    return super if Completion.disabled?
     config[:completion]                ||= {}
     config[:completion][:eval_binding] ||= method(:eval_binding).to_proc
    (config[:completion][:gems]         ||= []).concat(ripl_plugins)
    Rib.silence{Bond.start(config[:completion]) unless Bond.started?}
    super
  end



  private
  def ripl_plugins
    $LOADED_FEATURES.map{ |e| e[/ripl\/[^\/]+$/] }.compact
  end
end

begin
  Rib.silence{require 'bond'}
rescue LoadError => e
  Rib.warn("Error: #{e}"                                    ,
           "Please install bond to use completion plugin:\n",
           "    gem install bond\n"                         ,
           "Or add bond to Gemfile if that's the case"      )
  Rib::Completion.disable
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
rib-1.5.1 lib/rib/core/completion.rb
rib-1.5.0 lib/rib/core/completion.rb
rib-1.4.0 lib/rib/core/completion.rb
rib-1.3.1 lib/rib/core/completion.rb
rib-1.3.0 lib/rib/core/completion.rb
rib-1.2.91 lib/rib/core/completion.rb
rib-1.2.9 lib/rib/core/completion.rb
rib-1.2.8 lib/rib/core/completion.rb
rib-1.2.7 lib/rib/core/completion.rb
rib-1.2.6 lib/rib/core/completion.rb
rib-1.2.5 lib/rib/core/completion.rb
rib-1.2.4 lib/rib/core/completion.rb
rib-1.2.3 lib/rib/core/completion.rb
rib-1.2.2 lib/rib/core/completion.rb
rib-1.2.1 lib/rib/core/completion.rb
rib-1.2.0 lib/rib/core/completion.rb
rib-1.1.6 lib/rib/core/completion.rb
rib-1.1.5 lib/rib/core/completion.rb
rib-1.1.4 lib/rib/core/completion.rb
rib-1.1.3 lib/rib/core/completion.rb