neovim 0.6.2 → 0.9.0.pre.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.github/workflows/docs.yml +36 -0
- data/.github/workflows/linter.yml +32 -0
- data/.github/workflows/tests.yml +62 -0
- data/.gitignore +5 -1
- data/.rubocop.yml +149 -0
- data/CHANGELOG.md +56 -0
- data/CODE_OF_CONDUCT.md +3 -3
- data/Gemfile +0 -11
- data/README.md +22 -23
- data/Rakefile +47 -15
- data/VimFlavor +1 -0
- data/exe/neovim-ruby-host +5 -0
- data/lib/neovim.rb +15 -6
- data/lib/neovim/api.rb +2 -1
- data/lib/neovim/buffer.rb +81 -53
- data/lib/neovim/client.rb +226 -41
- data/lib/neovim/client_info.rb +46 -0
- data/lib/neovim/connection.rb +73 -0
- data/lib/neovim/event_loop.rb +41 -37
- data/lib/neovim/executable.rb +1 -0
- data/lib/neovim/host.rb +50 -51
- data/lib/neovim/host/cli.rb +41 -0
- data/lib/neovim/host/loader.rb +1 -4
- data/lib/neovim/line_range.rb +16 -16
- data/lib/neovim/logging.rb +18 -18
- data/lib/neovim/message.rb +70 -0
- data/lib/neovim/plugin.rb +7 -5
- data/lib/neovim/plugin/dsl.rb +10 -4
- data/lib/neovim/plugin/handler.rb +8 -8
- data/lib/neovim/remote_object.rb +8 -5
- data/lib/neovim/ruby_provider.rb +52 -26
- data/lib/neovim/ruby_provider/buffer_ext.rb +1 -0
- data/lib/neovim/ruby_provider/object_ext.rb +5 -0
- data/lib/neovim/ruby_provider/vim.rb +19 -6
- data/lib/neovim/ruby_provider/window_ext.rb +1 -0
- data/lib/neovim/session.rb +45 -50
- data/lib/neovim/tabpage.rb +8 -15
- data/lib/neovim/version.rb +1 -1
- data/lib/neovim/window.rb +39 -36
- data/neovim.gemspec +11 -6
- data/script/ci/download_nvim.sh +40 -0
- data/script/{dump_api → dump_api.rb} +1 -1
- data/script/{generate_docs → generate_docs.rb} +6 -7
- data/script/{j2mp → j2mp.rb} +0 -0
- data/script/{mp2j → mp2j.rb} +0 -0
- data/script/run_acceptance.rb +39 -0
- data/spec/acceptance/client_info_spec.vim +42 -0
- data/spec/acceptance/rplugin_autocmd_spec.vim +20 -10
- data/spec/acceptance/rplugin_command_spec.vim +54 -56
- data/spec/acceptance/rplugin_function_spec.vim +28 -22
- data/spec/acceptance/ruby_spec.vim +52 -53
- data/spec/acceptance/rubydo_spec.vim +49 -52
- data/spec/acceptance/rubyeval_spec.vim +22 -0
- data/spec/acceptance/rubyfile/curbuf_ivar_get.rb +1 -1
- data/spec/acceptance/rubyfile/curbuf_ivar_set.rb +1 -1
- data/spec/acceptance/rubyfile/define_foo.rb +1 -1
- data/spec/acceptance/rubyfile/nested.rb +1 -1
- data/spec/acceptance/rubyfile/nested_inner.rb +1 -1
- data/spec/acceptance/rubyfile/set_pwd_after.rb +1 -1
- data/spec/acceptance/rubyfile/set_pwd_before.rb +1 -1
- data/spec/acceptance/rubyfile_spec.vim +60 -66
- data/spec/acceptance/runtime/init.vim +5 -4
- data/spec/acceptance/runtime/rplugin/ruby/autocmds.rb +7 -3
- data/spec/acceptance/runtime/rplugin/ruby/commands.rb +18 -17
- data/spec/acceptance/runtime/rplugin/ruby/functions.rb +9 -9
- data/spec/helper.rb +38 -9
- data/spec/neovim/api_spec.rb +2 -2
- data/spec/neovim/buffer_spec.rb +10 -6
- data/spec/neovim/client_info_spec.rb +77 -0
- data/spec/neovim/client_spec.rb +19 -12
- data/spec/neovim/connection_spec.rb +106 -0
- data/spec/neovim/current_spec.rb +13 -14
- data/spec/neovim/event_loop_spec.rb +48 -46
- data/spec/neovim/executable_spec.rb +2 -2
- data/spec/neovim/host/cli_spec.rb +94 -0
- data/spec/neovim/host/loader_spec.rb +18 -11
- data/spec/neovim/host_spec.rb +84 -92
- data/spec/neovim/line_range_spec.rb +17 -19
- data/spec/neovim/logging_spec.rb +3 -3
- data/spec/neovim/message_spec.rb +119 -0
- data/spec/neovim/plugin_spec.rb +34 -34
- data/spec/neovim/remote_object_spec.rb +1 -2
- data/spec/neovim/ruby_provider/buffer_ext_spec.rb +8 -9
- data/spec/neovim/ruby_provider/object_ext_spec.rb +10 -0
- data/spec/neovim/ruby_provider/vim_spec.rb +5 -5
- data/spec/neovim/ruby_provider/window_ext_spec.rb +12 -15
- data/spec/neovim/session_spec.rb +20 -47
- data/spec/neovim/window_spec.rb +1 -2
- data/spec/neovim_spec.rb +28 -51
- data/spec/support.rb +27 -1
- metadata +83 -48
- data/.coveralls.yml +0 -1
- data/.gitmodules +0 -3
- data/.rspec +0 -1
- data/.travis.yml +0 -23
- data/appveyor.yml +0 -21
- data/bin/neovim-ruby-host +0 -18
- data/lib/neovim/event_loop/connection.rb +0 -78
- data/lib/neovim/event_loop/message_builder.rb +0 -127
- data/lib/neovim/event_loop/serializer.rb +0 -37
- data/spec/acceptance/runtime/rplugin.vim +0 -37
- data/spec/acceptance/runtime/vader.vim/autoload/vader.vim +0 -348
- data/spec/acceptance/runtime/vader.vim/autoload/vader/assert.vim +0 -116
- data/spec/acceptance/runtime/vader.vim/autoload/vader/helper.vim +0 -43
- data/spec/acceptance/runtime/vader.vim/autoload/vader/parser.vim +0 -179
- data/spec/acceptance/runtime/vader.vim/autoload/vader/syntax.vim +0 -73
- data/spec/acceptance/runtime/vader.vim/autoload/vader/window.vim +0 -205
- data/spec/acceptance/runtime/vader.vim/plugin/vader.vim +0 -37
- data/spec/acceptance_spec.rb +0 -82
- data/spec/neovim/event_loop/connection_spec.rb +0 -89
- data/spec/neovim/event_loop/message_builder_spec.rb +0 -105
- data/spec/neovim/event_loop/serializer_spec.rb +0 -63
@@ -4,13 +4,11 @@ require "neovim/ruby_provider/window_ext"
|
|
4
4
|
module Neovim
|
5
5
|
RSpec.describe Window do
|
6
6
|
let!(:nvim) do
|
7
|
-
|
8
|
-
stub_const("::Vim",
|
7
|
+
Support.persistent_client.tap do |client|
|
8
|
+
stub_const("::Vim", client)
|
9
9
|
end
|
10
10
|
end
|
11
11
|
|
12
|
-
after { nvim.shutdown }
|
13
|
-
|
14
12
|
describe ".current" do
|
15
13
|
it "returns the current window from the global Vim client" do
|
16
14
|
expect(Window.current).to eq(nvim.get_current_win)
|
@@ -19,31 +17,30 @@ module Neovim
|
|
19
17
|
|
20
18
|
describe ".count" do
|
21
19
|
it "returns the current window count from the global Vim client" do
|
22
|
-
expect
|
20
|
+
expect do
|
23
21
|
nvim.command("new")
|
24
|
-
|
22
|
+
end.to change { Window.count }.by(1)
|
25
23
|
end
|
26
24
|
|
27
25
|
it "only includes windows within a tabpage" do
|
28
|
-
expect
|
26
|
+
expect do
|
29
27
|
nvim.command("tabnew")
|
30
|
-
|
28
|
+
end.not_to change { Window.count }.from(1)
|
31
29
|
end
|
32
30
|
end
|
33
31
|
|
34
32
|
describe ".[]" do
|
35
33
|
it "returns the window at the given index" do
|
36
|
-
|
37
|
-
|
38
|
-
|
34
|
+
window = Window[0]
|
35
|
+
|
36
|
+
expect(window).to be_a(Window)
|
37
|
+
expect(window).to eq(nvim.list_wins[0])
|
39
38
|
end
|
40
39
|
|
41
40
|
it "only includes windows within a tabpage" do
|
42
|
-
|
43
|
-
|
44
|
-
expect {
|
41
|
+
expect do
|
45
42
|
nvim.command("tabnew")
|
46
|
-
|
43
|
+
end.to change { Window[0] }
|
47
44
|
end
|
48
45
|
end
|
49
46
|
end
|
data/spec/neovim/session_spec.rb
CHANGED
@@ -2,10 +2,8 @@ require "helper"
|
|
2
2
|
|
3
3
|
module Neovim
|
4
4
|
RSpec.describe Session do
|
5
|
-
let(:
|
6
|
-
let
|
7
|
-
|
8
|
-
after { session.shutdown }
|
5
|
+
let(:client) { Support.persistent_client }
|
6
|
+
let(:session) { client.session }
|
9
7
|
|
10
8
|
describe "#request" do
|
11
9
|
it "synchronously returns a result" do
|
@@ -13,71 +11,46 @@ module Neovim
|
|
13
11
|
end
|
14
12
|
|
15
13
|
it "raises an exception when there are errors" do
|
16
|
-
expect
|
14
|
+
expect do
|
17
15
|
session.request(:nvim_strwidth, "too", "many")
|
18
|
-
|
19
|
-
end
|
20
|
-
|
21
|
-
it "handles large data" do
|
22
|
-
large_str = Array.new(1024 * 17) { SecureRandom.hex(1) }.join
|
23
|
-
session.request(:nvim_set_current_line, large_str)
|
24
|
-
expect(session.request(:nvim_get_current_line)).to eq(large_str)
|
16
|
+
end.to raise_error(/wrong number of arguments/i)
|
25
17
|
end
|
26
18
|
|
27
|
-
it "fails outside of the main thread" do
|
28
|
-
expect
|
19
|
+
it "fails outside of the main thread", :silence_thread_exceptions do
|
20
|
+
expect do
|
29
21
|
Thread.new { session.request(:nvim_strwidth, "foo") }.join
|
30
|
-
|
22
|
+
end.to raise_error(/outside of the main thread/)
|
31
23
|
end
|
32
24
|
end
|
33
25
|
|
34
26
|
describe "#notify" do
|
35
|
-
it "doesn't raise exceptions" do
|
36
|
-
expect {
|
37
|
-
session.notify(:nvim_strwidth, "too", "many")
|
38
|
-
}.not_to raise_error
|
39
|
-
end
|
40
|
-
|
41
|
-
it "handles large data" do
|
42
|
-
large_str = Array.new(1024 * 17) { SecureRandom.hex(1) }.join
|
43
|
-
session.notify(:nvim_set_current_line, large_str)
|
44
|
-
expect(session.request(:nvim_get_current_line)).to eq(large_str)
|
45
|
-
end
|
46
|
-
|
47
27
|
it "succeeds outside of the main thread" do
|
48
|
-
expect
|
28
|
+
expect do
|
49
29
|
Thread.new { session.notify(:nvim_set_current_line, "foo") }.join
|
50
|
-
|
30
|
+
end.not_to raise_error
|
51
31
|
end
|
52
32
|
end
|
53
33
|
|
54
|
-
describe "#
|
55
|
-
it "
|
56
|
-
session.request(:
|
57
|
-
session.request(:nvim_command, "call rpcnotify(
|
34
|
+
describe "#next" do
|
35
|
+
it "returns the next message from the event loop" do
|
36
|
+
cid, = session.request(:nvim_get_api_info)
|
37
|
+
session.request(:nvim_command, "call rpcnotify(#{cid}, 'my_event', 'foo')")
|
58
38
|
|
59
|
-
message =
|
60
|
-
session.run do |msg|
|
61
|
-
message = msg
|
62
|
-
session.shutdown
|
63
|
-
end
|
39
|
+
message = session.next
|
64
40
|
|
65
41
|
expect(message.sync?).to eq(false)
|
66
42
|
expect(message.method_name).to eq("my_event")
|
67
43
|
expect(message.arguments).to eq(["foo"])
|
68
44
|
end
|
69
45
|
|
70
|
-
it "
|
71
|
-
session.
|
72
|
-
session.request(:nvim_command, "call rpcnotify(0, 'my_event', 'foo')")
|
46
|
+
it "returns asynchronous notification errors", nvim_version: ">= 0.4.pre.dev" do
|
47
|
+
session.notify(:nvim_set_current_line, "too", "many", "args")
|
73
48
|
|
74
|
-
|
75
|
-
session.run do |msg|
|
76
|
-
result = session.request(:nvim_strwidth, msg.arguments.first)
|
77
|
-
session.shutdown
|
78
|
-
end
|
49
|
+
message = session.next
|
79
50
|
|
80
|
-
expect(
|
51
|
+
expect(message.sync?).to eq(false)
|
52
|
+
expect(message.method_name).to eq("nvim_error_event")
|
53
|
+
expect(message.arguments).to eq([0, "Wrong number of arguments: expecting 1 but got 3"])
|
81
54
|
end
|
82
55
|
end
|
83
56
|
end
|
data/spec/neovim/window_spec.rb
CHANGED
@@ -2,7 +2,7 @@ require "helper"
|
|
2
2
|
|
3
3
|
module Neovim
|
4
4
|
RSpec.describe Window do
|
5
|
-
let(:client) {
|
5
|
+
let(:client) { Support.persistent_client }
|
6
6
|
let(:window) { client.current.window }
|
7
7
|
|
8
8
|
before do
|
@@ -43,4 +43,3 @@ module Neovim
|
|
43
43
|
end
|
44
44
|
end
|
45
45
|
end
|
46
|
-
|
data/spec/neovim_spec.rb
CHANGED
@@ -1,60 +1,37 @@
|
|
1
1
|
require "helper"
|
2
2
|
|
3
3
|
RSpec.describe Neovim do
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
rescue Errno::ECONNREFUSED
|
13
|
-
retry
|
14
|
-
end
|
15
|
-
|
16
|
-
begin
|
17
|
-
expect(client.strwidth("hi")).to eq(2)
|
18
|
-
ensure
|
19
|
-
Support.kill(pid)
|
20
|
-
Process.waitpid(pid)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
describe ".attach_unix" do
|
26
|
-
before do
|
27
|
-
skip("Not supported on this platform") if Support.windows?
|
28
|
-
end
|
29
|
-
|
30
|
-
it "attaches to a UNIX socket" do
|
31
|
-
socket_path = Support.socket_path
|
32
|
-
env = {"NVIM_LISTEN_ADDRESS" => socket_path}
|
33
|
-
pid = Process.spawn(env, *Support.child_argv, [:out, :err] => File::NULL)
|
34
|
-
|
35
|
-
begin
|
36
|
-
client = Neovim.attach_unix(socket_path)
|
37
|
-
rescue Errno::ENOENT, Errno::ECONNREFUSED
|
38
|
-
retry
|
39
|
-
end
|
40
|
-
|
41
|
-
begin
|
42
|
-
expect(client.strwidth("hi")).to eq(2)
|
43
|
-
ensure
|
44
|
-
Support.kill(pid)
|
45
|
-
Process.waitpid(pid)
|
46
|
-
end
|
4
|
+
let(:client) { Support.persistent_client }
|
5
|
+
|
6
|
+
let(:stream) do
|
7
|
+
case Support.backend_strategy
|
8
|
+
when /^tcp/, /^unix/
|
9
|
+
"socket"
|
10
|
+
else
|
11
|
+
"stdio"
|
47
12
|
end
|
48
13
|
end
|
49
14
|
|
50
|
-
describe ".
|
51
|
-
it "
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
15
|
+
describe ".attach" do
|
16
|
+
it "sets appropriate client info" do
|
17
|
+
chan_info = client.evaluate("nvim_get_chan_info(#{client.channel_id})")
|
18
|
+
|
19
|
+
expect(chan_info).to match(
|
20
|
+
"client" => {
|
21
|
+
"name" => "ruby-client",
|
22
|
+
"version" => {
|
23
|
+
"major" => duck_type(:to_int),
|
24
|
+
"minor" => duck_type(:to_int),
|
25
|
+
"patch" => duck_type(:to_int)
|
26
|
+
},
|
27
|
+
"type" => "remote",
|
28
|
+
"methods" => {},
|
29
|
+
"attributes" => duck_type(:to_hash)
|
30
|
+
},
|
31
|
+
"id" => duck_type(:to_int),
|
32
|
+
"mode" => "rpc",
|
33
|
+
"stream" => stream
|
34
|
+
)
|
58
35
|
end
|
59
36
|
end
|
60
37
|
|
data/spec/support.rb
CHANGED
@@ -1,10 +1,35 @@
|
|
1
|
+
require "shellwords"
|
2
|
+
|
1
3
|
module Support
|
2
4
|
class << self
|
3
5
|
attr_accessor :nvim_version
|
4
6
|
end
|
5
7
|
|
8
|
+
def self.clean_persistent_client
|
9
|
+
persistent_client.command("%bdelete! | tabonly | only | set all&")
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.backend_strategy
|
13
|
+
@backend_strategy ||= ENV.fetch("NVIM_RUBY_SPEC_BACKEND", "child")
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.persistent_client
|
17
|
+
return @persistent_client if defined?(@persistent_client)
|
18
|
+
|
19
|
+
case backend_strategy
|
20
|
+
when /^child:?(.*)$/
|
21
|
+
@persistent_client = Neovim.attach_child(child_argv + Shellwords.split($1))
|
22
|
+
when /^tcp:(.+)$/
|
23
|
+
@persistent_client = Neovim.attach_tcp(*$1.split(":", 2))
|
24
|
+
when /^unix:(.+)$/
|
25
|
+
@persistent_client = Neovim.attach_unix($1)
|
26
|
+
else
|
27
|
+
raise "Unrecognized $NVIM_RUBY_SPEC_BACKEND #{backend_strategy.inspect}"
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
6
31
|
def self.workspace
|
7
|
-
File.expand_path("
|
32
|
+
File.expand_path("workspace", __dir__)
|
8
33
|
end
|
9
34
|
|
10
35
|
def self.socket_path
|
@@ -43,6 +68,7 @@ module Support
|
|
43
68
|
|
44
69
|
def self.kill(pid)
|
45
70
|
windows? ? Process.kill(:KILL, pid) : Process.kill(:TERM, pid)
|
71
|
+
Process.waitpid(pid)
|
46
72
|
end
|
47
73
|
|
48
74
|
begin
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: neovim
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0.pre.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Genco
|
8
8
|
autorequire:
|
9
|
-
bindir:
|
9
|
+
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-10-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -40,6 +40,20 @@ dependencies:
|
|
40
40
|
version: '1.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '2.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '2.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: pry
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - ">="
|
@@ -53,7 +67,7 @@ dependencies:
|
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '0'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
70
|
+
name: pry-byebug
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
58
72
|
requirements:
|
59
73
|
- - ">="
|
@@ -67,7 +81,7 @@ dependencies:
|
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: '0'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
84
|
+
name: rake
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
87
|
- - ">="
|
@@ -94,6 +108,34 @@ dependencies:
|
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
110
|
version: '3.0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rubocop
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.56.0
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 0.56.0
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: vim-flavor
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - '='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 2.2.2
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - '='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 2.2.2
|
97
139
|
description:
|
98
140
|
email:
|
99
141
|
- alexgenco@gmail.com
|
@@ -102,39 +144,41 @@ executables:
|
|
102
144
|
extensions: []
|
103
145
|
extra_rdoc_files: []
|
104
146
|
files:
|
105
|
-
- ".
|
147
|
+
- ".github/workflows/docs.yml"
|
148
|
+
- ".github/workflows/linter.yml"
|
149
|
+
- ".github/workflows/tests.yml"
|
106
150
|
- ".gitignore"
|
107
|
-
- ".
|
108
|
-
- ".rspec"
|
109
|
-
- ".travis.yml"
|
151
|
+
- ".rubocop.yml"
|
110
152
|
- CHANGELOG.md
|
111
153
|
- CODE_OF_CONDUCT.md
|
112
154
|
- Gemfile
|
113
155
|
- LICENSE.txt
|
114
156
|
- README.md
|
115
157
|
- Rakefile
|
116
|
-
-
|
117
|
-
-
|
158
|
+
- VimFlavor
|
159
|
+
- exe/neovim-ruby-host
|
118
160
|
- lib/neovim.rb
|
119
161
|
- lib/neovim/api.rb
|
120
162
|
- lib/neovim/buffer.rb
|
121
163
|
- lib/neovim/client.rb
|
164
|
+
- lib/neovim/client_info.rb
|
165
|
+
- lib/neovim/connection.rb
|
122
166
|
- lib/neovim/current.rb
|
123
167
|
- lib/neovim/event_loop.rb
|
124
|
-
- lib/neovim/event_loop/connection.rb
|
125
|
-
- lib/neovim/event_loop/message_builder.rb
|
126
|
-
- lib/neovim/event_loop/serializer.rb
|
127
168
|
- lib/neovim/executable.rb
|
128
169
|
- lib/neovim/host.rb
|
170
|
+
- lib/neovim/host/cli.rb
|
129
171
|
- lib/neovim/host/loader.rb
|
130
172
|
- lib/neovim/line_range.rb
|
131
173
|
- lib/neovim/logging.rb
|
174
|
+
- lib/neovim/message.rb
|
132
175
|
- lib/neovim/plugin.rb
|
133
176
|
- lib/neovim/plugin/dsl.rb
|
134
177
|
- lib/neovim/plugin/handler.rb
|
135
178
|
- lib/neovim/remote_object.rb
|
136
179
|
- lib/neovim/ruby_provider.rb
|
137
180
|
- lib/neovim/ruby_provider/buffer_ext.rb
|
181
|
+
- lib/neovim/ruby_provider/object_ext.rb
|
138
182
|
- lib/neovim/ruby_provider/vim.rb
|
139
183
|
- lib/neovim/ruby_provider/window_ext.rb
|
140
184
|
- lib/neovim/session.rb
|
@@ -142,15 +186,19 @@ files:
|
|
142
186
|
- lib/neovim/version.rb
|
143
187
|
- lib/neovim/window.rb
|
144
188
|
- neovim.gemspec
|
145
|
-
- script/
|
146
|
-
- script/
|
147
|
-
- script/
|
148
|
-
- script/
|
189
|
+
- script/ci/download_nvim.sh
|
190
|
+
- script/dump_api.rb
|
191
|
+
- script/generate_docs.rb
|
192
|
+
- script/j2mp.rb
|
193
|
+
- script/mp2j.rb
|
194
|
+
- script/run_acceptance.rb
|
195
|
+
- spec/acceptance/client_info_spec.vim
|
149
196
|
- spec/acceptance/rplugin_autocmd_spec.vim
|
150
197
|
- spec/acceptance/rplugin_command_spec.vim
|
151
198
|
- spec/acceptance/rplugin_function_spec.vim
|
152
199
|
- spec/acceptance/ruby_spec.vim
|
153
200
|
- spec/acceptance/rubydo_spec.vim
|
201
|
+
- spec/acceptance/rubyeval_spec.vim
|
154
202
|
- spec/acceptance/rubyfile/call_foo.rb
|
155
203
|
- spec/acceptance/rubyfile/curbuf_ivar_get.rb
|
156
204
|
- spec/acceptance/rubyfile/curbuf_ivar_set.rb
|
@@ -164,42 +212,35 @@ files:
|
|
164
212
|
- spec/acceptance/rubyfile/set_pwd_before.rb
|
165
213
|
- spec/acceptance/rubyfile_spec.vim
|
166
214
|
- spec/acceptance/runtime/init.vim
|
167
|
-
- spec/acceptance/runtime/rplugin.vim
|
168
215
|
- spec/acceptance/runtime/rplugin/ruby/autocmds.rb
|
169
216
|
- spec/acceptance/runtime/rplugin/ruby/commands.rb
|
170
217
|
- spec/acceptance/runtime/rplugin/ruby/functions.rb
|
171
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader.vim
|
172
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/assert.vim
|
173
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/helper.vim
|
174
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/parser.vim
|
175
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/syntax.vim
|
176
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/window.vim
|
177
|
-
- spec/acceptance/runtime/vader.vim/plugin/vader.vim
|
178
|
-
- spec/acceptance_spec.rb
|
179
218
|
- spec/helper.rb
|
180
219
|
- spec/neovim/api_spec.rb
|
181
220
|
- spec/neovim/buffer_spec.rb
|
221
|
+
- spec/neovim/client_info_spec.rb
|
182
222
|
- spec/neovim/client_spec.rb
|
223
|
+
- spec/neovim/connection_spec.rb
|
183
224
|
- spec/neovim/current_spec.rb
|
184
|
-
- spec/neovim/event_loop/connection_spec.rb
|
185
|
-
- spec/neovim/event_loop/message_builder_spec.rb
|
186
|
-
- spec/neovim/event_loop/serializer_spec.rb
|
187
225
|
- spec/neovim/event_loop_spec.rb
|
188
226
|
- spec/neovim/executable_spec.rb
|
227
|
+
- spec/neovim/host/cli_spec.rb
|
189
228
|
- spec/neovim/host/loader_spec.rb
|
190
229
|
- spec/neovim/host_spec.rb
|
191
230
|
- spec/neovim/line_range_spec.rb
|
192
231
|
- spec/neovim/logging_spec.rb
|
232
|
+
- spec/neovim/message_spec.rb
|
193
233
|
- spec/neovim/plugin_spec.rb
|
194
234
|
- spec/neovim/remote_object_spec.rb
|
195
235
|
- spec/neovim/ruby_provider/buffer_ext_spec.rb
|
236
|
+
- spec/neovim/ruby_provider/object_ext_spec.rb
|
196
237
|
- spec/neovim/ruby_provider/vim_spec.rb
|
197
238
|
- spec/neovim/ruby_provider/window_ext_spec.rb
|
198
239
|
- spec/neovim/session_spec.rb
|
199
240
|
- spec/neovim/window_spec.rb
|
200
241
|
- spec/neovim_spec.rb
|
201
242
|
- spec/support.rb
|
202
|
-
homepage: https://github.com/
|
243
|
+
homepage: https://github.com/neovim/neovim-ruby
|
203
244
|
licenses:
|
204
245
|
- MIT
|
205
246
|
metadata: {}
|
@@ -211,24 +252,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
211
252
|
requirements:
|
212
253
|
- - ">="
|
213
254
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
255
|
+
version: 2.2.0
|
215
256
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
216
257
|
requirements:
|
217
|
-
- - "
|
258
|
+
- - ">"
|
218
259
|
- !ruby/object:Gem::Version
|
219
|
-
version:
|
260
|
+
version: 1.3.1
|
220
261
|
requirements: []
|
221
|
-
|
222
|
-
rubygems_version: 2.6.13
|
262
|
+
rubygems_version: 3.0.1
|
223
263
|
signing_key:
|
224
264
|
specification_version: 4
|
225
265
|
summary: A Ruby client for Neovim
|
226
266
|
test_files:
|
267
|
+
- spec/acceptance/client_info_spec.vim
|
227
268
|
- spec/acceptance/rplugin_autocmd_spec.vim
|
228
269
|
- spec/acceptance/rplugin_command_spec.vim
|
229
270
|
- spec/acceptance/rplugin_function_spec.vim
|
230
271
|
- spec/acceptance/ruby_spec.vim
|
231
272
|
- spec/acceptance/rubydo_spec.vim
|
273
|
+
- spec/acceptance/rubyeval_spec.vim
|
232
274
|
- spec/acceptance/rubyfile/call_foo.rb
|
233
275
|
- spec/acceptance/rubyfile/curbuf_ivar_get.rb
|
234
276
|
- spec/acceptance/rubyfile/curbuf_ivar_set.rb
|
@@ -242,35 +284,28 @@ test_files:
|
|
242
284
|
- spec/acceptance/rubyfile/set_pwd_before.rb
|
243
285
|
- spec/acceptance/rubyfile_spec.vim
|
244
286
|
- spec/acceptance/runtime/init.vim
|
245
|
-
- spec/acceptance/runtime/rplugin.vim
|
246
287
|
- spec/acceptance/runtime/rplugin/ruby/autocmds.rb
|
247
288
|
- spec/acceptance/runtime/rplugin/ruby/commands.rb
|
248
289
|
- spec/acceptance/runtime/rplugin/ruby/functions.rb
|
249
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader.vim
|
250
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/assert.vim
|
251
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/helper.vim
|
252
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/parser.vim
|
253
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/syntax.vim
|
254
|
-
- spec/acceptance/runtime/vader.vim/autoload/vader/window.vim
|
255
|
-
- spec/acceptance/runtime/vader.vim/plugin/vader.vim
|
256
|
-
- spec/acceptance_spec.rb
|
257
290
|
- spec/helper.rb
|
258
291
|
- spec/neovim/api_spec.rb
|
259
292
|
- spec/neovim/buffer_spec.rb
|
293
|
+
- spec/neovim/client_info_spec.rb
|
260
294
|
- spec/neovim/client_spec.rb
|
295
|
+
- spec/neovim/connection_spec.rb
|
261
296
|
- spec/neovim/current_spec.rb
|
262
|
-
- spec/neovim/event_loop/connection_spec.rb
|
263
|
-
- spec/neovim/event_loop/message_builder_spec.rb
|
264
|
-
- spec/neovim/event_loop/serializer_spec.rb
|
265
297
|
- spec/neovim/event_loop_spec.rb
|
266
298
|
- spec/neovim/executable_spec.rb
|
299
|
+
- spec/neovim/host/cli_spec.rb
|
267
300
|
- spec/neovim/host/loader_spec.rb
|
268
301
|
- spec/neovim/host_spec.rb
|
269
302
|
- spec/neovim/line_range_spec.rb
|
270
303
|
- spec/neovim/logging_spec.rb
|
304
|
+
- spec/neovim/message_spec.rb
|
271
305
|
- spec/neovim/plugin_spec.rb
|
272
306
|
- spec/neovim/remote_object_spec.rb
|
273
307
|
- spec/neovim/ruby_provider/buffer_ext_spec.rb
|
308
|
+
- spec/neovim/ruby_provider/object_ext_spec.rb
|
274
309
|
- spec/neovim/ruby_provider/vim_spec.rb
|
275
310
|
- spec/neovim/ruby_provider/window_ext_spec.rb
|
276
311
|
- spec/neovim/session_spec.rb
|