Method: Neovim::Provider.run

Defined in:
lib/neovim/host.rb

.run(plugins) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/neovim/host.rb', line 21

def run plugins
  $stdin.tty? and raise "This program expects to be called by Neovim. It can't run interactively."
  start plugins do |h|
    h.run
    nil
  rescue Remote::Disconnected
    log :fatal, "Disconnected"
    nil
  rescue SignalException
    n = $!.signm.notempty? || $!.class.to_s
    log :fatal, "Signal was caught: #{n}"
    (n =~ /\A(?:SIG)?TERM\z/) ? 0 : 1
  rescue Exception
    log_exception :fatal
    2
  end
end