neovim 0.9.1 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d86525bb60d51c356a2c75f368d248991a207c7875348a88181a3f7156b6051a
4
- data.tar.gz: cb88fe16e651b54a671ae95f1ea71b692fa5f9c9348f16ce0f38218c98b7b90a
3
+ metadata.gz: 5320dac4af30229401acf28acf82589d27523b419a65caaf6a9b32982be13559
4
+ data.tar.gz: 1de09c53e257cce5c3b82902cd998a8b74601e452e25641e7e5f59fceed9bcaf
5
5
  SHA512:
6
- metadata.gz: f24def6fc7afdab94cb605e5f9fb721d3b621841ebda9016ba26ab4acabf10dba0ad3b79c278c009fdf153654181a1c18b69385445e19627b91494db048d546c
7
- data.tar.gz: f64be9703c9c312fb5571108838b199f4d5349ced2dcac12a32936db8a9f847222643ee05cd37b67a7671c8e92124489703df54ff5ef134d8875e8f546f46b9c
6
+ metadata.gz: 5d4950d5edfd43619d9e2e3c4efccaee9ab9219cad3db41fd9d003262870ad2a98f77f3f76dba60c9fb17272fb0b0ad2982acdb1d9b8a31248e2c9ed494e27ec
7
+ data.tar.gz: 8cc1963557bd46b91e4050363296b4d5b87bd7f1fcf736ac5bb1b6a324d4ec1c84baf2cc6069290c73108ec948af37a2fb57e78b3ec8c5c7622e13f1b6e31e65
@@ -12,7 +12,7 @@ jobs:
12
12
  fail-fast: false
13
13
  matrix:
14
14
  os: [ubuntu-latest, macos-latest]
15
- ruby: [2.7, 3.0, 3.1, 3.2, head]
15
+ ruby: [ruby, head]
16
16
  runs-on: ${{ matrix.os }}
17
17
  if: "!contains(github.event.head_commit.message, '[skip ci]')"
18
18
  steps:
@@ -37,8 +37,6 @@ jobs:
37
37
  windows:
38
38
  strategy:
39
39
  fail-fast: false
40
- matrix:
41
- ruby: [2.7, 3.0, 3.1, 3.2]
42
40
  runs-on: windows-latest
43
41
  if: "!contains(github.event.head_commit.message, '[skip ci]')"
44
42
  steps:
@@ -51,7 +49,7 @@ jobs:
51
49
  repository: neovim/neovim-ruby
52
50
  - uses: ruby/setup-ruby@v1
53
51
  with:
54
- ruby-version: ${{ matrix.ruby }}
52
+ ruby-version: ruby
55
53
  bundler-cache: true
56
54
  - name: Install Neovim
57
55
  uses: crazy-max/ghaction-chocolatey@v1
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 0.10.0
2
+
3
+ - Add `Neovim.start_remote` helper for remote module support
4
+ (https://github.com/neovim/neovim-ruby/pull/107)
5
+
1
6
  # 0.9.1
2
7
 
3
8
  - Fix bug where `Buffer#[]` with `0` returned the last line of the buffer
data/Flavorfile.lock CHANGED
@@ -1 +1 @@
1
- thinca/vim-themis (737e5444713ba53a9dcfbe3b962239bd0bd9162e at master)
1
+ thinca/vim-themis (c1f4d465ce7dd23735513551b5c4c918d9c1bab1 at master)
data/README.md CHANGED
@@ -42,37 +42,21 @@ client = Neovim.attach_unix("/tmp/nvim.sock")
42
42
 
43
43
  Refer to the [`Neovim` docs](https://www.rubydoc.info/github/neovim/neovim-ruby/main/Neovim) for other ways to connect to `nvim`, and the [`Neovim::Client` docs](https://www.rubydoc.info/github/neovim/neovim-ruby/main/Neovim/Client) for a summary of the client interface.
44
44
 
45
- ### Plugins
45
+ ### Remote Modules
46
46
 
47
- Plugins are Ruby files loaded from the `$VIMRUNTIME/rplugin/ruby/` directory. Here's an example plugin:
47
+ Remote modules allow users to define custom handlers in Ruby. To implement a remote module:
48
48
 
49
- ```ruby
50
- # ~/.config/nvim/rplugin/ruby/example_plugin.rb
51
-
52
- Neovim.plugin do |plug|
53
- # Define a command called "SetLine" which sets the contents of the current
54
- # line. This command is executed asynchronously, so the return value is
55
- # ignored.
56
- plug.command(:SetLine, nargs: 1) do |nvim, str|
57
- nvim.current.line = str
58
- end
59
-
60
- # Define a function called "Sum" which adds two numbers. This function is
61
- # executed synchronously, so the result of the block will be returned to nvim.
62
- plug.function(:Sum, nargs: 2, sync: true) do |nvim, x, y|
63
- x + y
64
- end
65
-
66
- # Define an autocmd for the BufEnter event on Ruby files.
67
- plug.autocmd(:BufEnter, pattern: "*.rb") do |nvim|
68
- nvim.command("echom 'Ruby file, eh?'")
69
- end
70
- end
71
- ```
49
+ - Define your handlers in a plain Ruby script that imports `neovim`
50
+ - Spawn the script from lua using `jobstart`
51
+ - Define commands in lua using `nvim_create_user_command` that route to the job's channel ID
52
+
53
+ For usage examples, see:
72
54
 
73
- When you add or update a plugin, you will need to call `:UpdateRemotePlugins` to update the remote plugin manifest. See `:help remote-plugin-manifest` for more information.
55
+ - [`example_remote_module.rb`](spec/acceptance/runtime/example_remote_module.rb)
56
+ - [`example_remote_module.lua`](spec/acceptance/runtime/plugin/example_remote_module.lua)
57
+ - [`remote_module_spec.vim`](spec/acceptance/remote_module_spec.vim)
74
58
 
75
- Refer to the [`Neovim::Plugin::DSL` docs](https://www.rubydoc.info/github/neovim/neovim-ruby/main/Neovim/Plugin/DSL) for a more complete overview of the `Neovim.plugin` DSL.
59
+ *Note*: Remote modules are a replacement for the deprecated "remote plugin" architecture. See https://github.com/neovim/neovim/issues/27949 for details.
76
60
 
77
61
  ### Vim Plugin Support
78
62
 
data/lib/neovim/buffer.rb CHANGED
@@ -4,7 +4,7 @@ require "neovim/line_range"
4
4
  module Neovim
5
5
  # Class representing an +nvim+ buffer.
6
6
  #
7
- # The methods documented here were generated using NVIM v0.9.1
7
+ # The methods documented here were generated using NVIM v0.10.0
8
8
  class Buffer < RemoteObject
9
9
  attr_reader :lines
10
10
 
@@ -305,6 +305,17 @@ module Neovim
305
305
  @param [Hash] opts
306
306
  @return [Integer]
307
307
 
308
+ @method get_option(name)
309
+ See +:h nvim_buf_get_option()+
310
+ @param [String] name
311
+ @return [Object]
312
+
313
+ @method set_option(name, value)
314
+ See +:h nvim_buf_set_option()+
315
+ @param [String] name
316
+ @param [Object] value
317
+ @return [void]
318
+
308
319
  @method get_extmark_by_id(ns_id, id, opts)
309
320
  See +:h nvim_buf_get_extmark_by_id()+
310
321
  @param [Integer] ns_id
@@ -350,17 +361,6 @@ module Neovim
350
361
  @param [Integer] line_end
351
362
  @return [void]
352
363
 
353
- @method get_option(name)
354
- See +:h nvim_buf_get_option()+
355
- @param [String] name
356
- @return [Object]
357
-
358
- @method set_option(name, value)
359
- See +:h nvim_buf_set_option()+
360
- @param [String] name
361
- @param [Object] value
362
- @return [void]
363
-
364
364
  =end
365
365
  end
366
366
  end
data/lib/neovim/client.rb CHANGED
@@ -9,7 +9,7 @@ module Neovim
9
9
  # +RemoteObject+ subclasses (i.e. +Buffer+, +Window+, or +Tabpage+),
10
10
  # which similarly have dynamically generated interfaces.
11
11
  #
12
- # The methods documented here were generated using NVIM v0.9.1
12
+ # The methods documented here were generated using NVIM v0.10.0
13
13
  #
14
14
  # @see Buffer
15
15
  # @see Window
@@ -223,6 +223,16 @@ module Neovim
223
223
  @param [String] name
224
224
  @return [Hash]
225
225
 
226
+ @method get_option(name)
227
+ See +:h nvim_get_option()+
228
+ @param [String] name
229
+ @return [Object]
230
+
231
+ @method call_atomic(calls)
232
+ See +:h nvim_call_atomic()+
233
+ @param [Array] calls
234
+ @return [Array]
235
+
226
236
  @method create_namespace(name)
227
237
  See +:h nvim_create_namespace()+
228
238
  @param [String] name
@@ -261,11 +271,6 @@ module Neovim
261
271
  @param [Hash] opts
262
272
  @return [Hash]
263
273
 
264
- @method get_option(name)
265
- See +:h nvim_get_option()+
266
- @param [String] name
267
- @return [Object]
268
-
269
274
  @method ui_attach(width, height, options)
270
275
  See +:h nvim_ui_attach()+
271
276
  @param [Integer] width
@@ -314,6 +319,12 @@ module Neovim
314
319
  @param [Float] col
315
320
  @return [void]
316
321
 
322
+ @method ui_term_event(event, value)
323
+ See +:h nvim_ui_term_event()+
324
+ @param [String] event
325
+ @param [Object] value
326
+ @return [void]
327
+
317
328
  @method get_hl_id_by_name(name)
318
329
  See +:h nvim_get_hl_id_by_name()+
319
330
  @param [String] name
@@ -332,6 +343,11 @@ module Neovim
332
343
  @param [Hash] val
333
344
  @return [void]
334
345
 
346
+ @method get_hl_ns(opts)
347
+ See +:h nvim_get_hl_ns()+
348
+ @param [Hash] opts
349
+ @return [Integer]
350
+
335
351
  @method set_hl_ns(ns_id)
336
352
  See +:h nvim_set_hl_ns()+
337
353
  @param [Integer] ns_id
@@ -613,11 +629,6 @@ module Neovim
613
629
  See +:h nvim_list_chans()+
614
630
  @return [Array]
615
631
 
616
- @method call_atomic(calls)
617
- See +:h nvim_call_atomic()+
618
- @param [Array] calls
619
- @return [Array]
620
-
621
632
  @method list_uis
622
633
  See +:h nvim_list_uis()+
623
634
  @return [Array]
@@ -0,0 +1,30 @@
1
+ module Neovim
2
+ class RemoteModule
3
+ # The DSL exposed in +Neovim.start_remote+ blocks.
4
+ #
5
+ # @api public
6
+ class DSL < BasicObject
7
+ attr_reader :handlers
8
+
9
+ def initialize(&block)
10
+ @handlers = ::Hash.new do |h, name|
11
+ h[name] = ::Proc.new do |_, *|
12
+ raise NotImplementedError, "undefined handler #{name.inspect}"
13
+ end
14
+ end
15
+
16
+ block&.call(self)
17
+ end
18
+
19
+ # Define an RPC handler for use in remote modules.
20
+ #
21
+ # @param name [String] The handler name.
22
+ # @param block [Proc] The body of the handler.
23
+ def register_handler(name, &block)
24
+ @handlers[name.to_s] = ::Proc.new do |client, *args|
25
+ block.call(client, *args)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,42 @@
1
+ require "neovim/client"
2
+ require "neovim/event_loop"
3
+ require "neovim/logging"
4
+ require "neovim/remote_module/dsl"
5
+ require "neovim/session"
6
+
7
+ module Neovim
8
+ class RemoteModule
9
+ include Logging
10
+
11
+ def self.from_config_block(&block)
12
+ new(DSL::new(&block).handlers)
13
+ end
14
+
15
+ def initialize(handlers)
16
+ @handlers = handlers
17
+ end
18
+
19
+ def start
20
+ event_loop = EventLoop.stdio
21
+ session = Session.new(event_loop)
22
+ client = nil
23
+
24
+ session.run do |message|
25
+ case message
26
+ when Message::Request
27
+ begin
28
+ client ||= Client.from_event_loop(event_loop, session)
29
+ args = message.arguments.flatten(1)
30
+
31
+ @handlers[message.method_name].call(client, *args).tap do |rv|
32
+ session.respond(message.id, rv, nil) if message.sync?
33
+ end
34
+ rescue => e
35
+ log_exception(:error, e, __method__)
36
+ session.respond(message.id, nil, e.message) if message.sync?
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -3,7 +3,7 @@ require "neovim/remote_object"
3
3
  module Neovim
4
4
  # Class representing an +nvim+ tabpage.
5
5
  #
6
- # The methods documented here were generated using NVIM v0.9.1
6
+ # The methods documented here were generated using NVIM v0.10.0
7
7
  class Tabpage < RemoteObject
8
8
  # The following methods are dynamically generated.
9
9
  =begin
@@ -31,6 +31,11 @@ module Neovim
31
31
  See +:h nvim_tabpage_get_win()+
32
32
  @return [Window]
33
33
 
34
+ @method set_win(win)
35
+ See +:h nvim_tabpage_set_win()+
36
+ @param [Window] win
37
+ @return [void]
38
+
34
39
  @method get_number
35
40
  See +:h nvim_tabpage_get_number()+
36
41
  @return [Integer]
@@ -1,3 +1,3 @@
1
1
  module Neovim
2
- VERSION = Gem::Version.new("0.9.1")
2
+ VERSION = Gem::Version.new("0.10.0")
3
3
  end
data/lib/neovim/window.rb CHANGED
@@ -3,7 +3,7 @@ require "neovim/remote_object"
3
3
  module Neovim
4
4
  # Class representing an +nvim+ window.
5
5
  #
6
- # The methods documented here were generated using NVIM v0.9.1
6
+ # The methods documented here were generated using NVIM v0.10.0
7
7
  class Window < RemoteObject
8
8
  # Get the buffer displayed in the window
9
9
  #
@@ -171,6 +171,11 @@ module Neovim
171
171
  @param [Integer] ns_id
172
172
  @return [void]
173
173
 
174
+ @method text_height(opts)
175
+ See +:h nvim_win_text_height()+
176
+ @param [Hash] opts
177
+ @return [Hash]
178
+
174
179
  =end
175
180
  end
176
181
  end
data/lib/neovim.rb CHANGED
@@ -4,6 +4,7 @@ require "neovim/session"
4
4
  require "neovim/event_loop"
5
5
  require "neovim/executable"
6
6
  require "neovim/logging"
7
+ require "neovim/remote_module"
7
8
  require "neovim/version"
8
9
 
9
10
  # The main entrypoint to the +Neovim+ gem. It allows you to connect to a
@@ -83,6 +84,14 @@ module Neovim
83
84
  attach(EventLoop.child(argv))
84
85
  end
85
86
 
87
+ # Start a remote module process with handlers defined in the config block.
88
+ # Blocks indefinitely to handle messages.
89
+ #
90
+ # @see RemoteModule::DSL
91
+ def self.start_remote(&block)
92
+ RemoteModule.from_config_block(&block).start
93
+ end
94
+
86
95
  # Placeholder method for exposing the remote plugin DSL. This gets
87
96
  # temporarily overwritten in +Host::Loader#load+.
88
97
  #
@@ -7,9 +7,9 @@ set -eu
7
7
  case "$(echo "$RUNNER_OS" | tr "[:upper:]" "[:lower:]")" in
8
8
  macos)
9
9
  wget -nv -P /tmp \
10
- "https://github.com/neovim/neovim/releases/download/stable/nvim-macos.tar.gz"
11
- tar -C /tmp -xzf /tmp/nvim-macos.tar.gz
12
- mv /tmp/nvim-macos ./_nvim
10
+ "https://github.com/neovim/neovim/releases/download/stable/nvim-macos-x86_64.tar.gz"
11
+ tar -C /tmp -xzf /tmp/nvim-macos-x86_64.tar.gz
12
+ mv /tmp/nvim-macos-x86_64 ./_nvim
13
13
  ;;
14
14
  linux)
15
15
  mkdir -p _nvim/bin
@@ -0,0 +1,3 @@
1
+ @echo off
2
+ pushd "%~dp0\.." 2>NUL
3
+ ruby -I %CD%\lib %CD%\exe\neovim-ruby-host %*
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bash
2
+
3
+ cd "$(dirname "$0")/.."
4
+
5
+ exec ruby -I ./lib ./exe/neovim-ruby-host "$@"
@@ -21,7 +21,7 @@ env = {
21
21
  "NVIM_RPLUGIN_MANIFEST" => manifest,
22
22
  "THEMIS_VIM" => nvim,
23
23
  "THEMIS_HOME" => themis_home,
24
- "THEMIS_ARGS" => "-e -s --headless -u #{vimrc}"
24
+ "THEMIS_ARGS" => "-e --headless -u #{vimrc}"
25
25
  }
26
26
 
27
27
  FileUtils.rm_f(manifest)
@@ -30,7 +30,7 @@ Dir.chdir(root) do
30
30
  system(
31
31
  env,
32
32
  nvim,
33
- "-e", "-s", "--headless",
33
+ "-e", "--headless",
34
34
  "-u", vimrc,
35
35
  "+UpdateRemotePlugins", "+qa!"
36
36
  )
@@ -9,34 +9,18 @@ function! s:suite.before_each() abort
9
9
  \ "v:val.client")
10
10
  endfunction
11
11
 
12
- function! s:suite.get_script_host_client_info() abort
13
- let client_info = s:client_chans[1]
14
-
15
- call s:expect(sort(keys(client_info))).to_equal(
16
- \ ["attributes", "methods", "name", "type", "version"])
17
-
18
- call s:expect(client_info.attributes).to_be_dict()
19
- call s:expect(client_info.methods).to_equal({"specs": {"nargs": 1}, "poll": {}})
20
- call s:expect(client_info.name).to_equal("ruby-script-host")
21
- call s:expect(client_info.type).to_equal("host")
22
-
23
- call s:expect(client_info.version.major).to_be_number()
24
- call s:expect(client_info.version.minor).to_be_number()
25
- call s:expect(client_info.version.patch).to_be_number()
26
- endfunction
27
-
28
- function! s:suite.get_rplugin_client_info() abort
29
- let client_info = s:client_chans[0]
30
-
31
- call s:expect(sort(keys(client_info))).to_equal(
32
- \ ["attributes", "methods", "name", "type", "version"])
33
-
34
- call s:expect(client_info.attributes).to_be_dict()
35
- call s:expect(client_info.methods).to_equal({"specs": {"nargs": 1}, "poll": {}})
36
- call s:expect(client_info.name).to_equal("ruby-rplugin-host")
37
- call s:expect(client_info.type).to_equal("host")
38
-
39
- call s:expect(client_info.version.major).to_be_number()
40
- call s:expect(client_info.version.minor).to_be_number()
41
- call s:expect(client_info.version.patch).to_be_number()
12
+ function! s:suite.get_client_info() abort
13
+ for client_info in s:client_chans
14
+ call s:expect(sort(keys(client_info))).to_equal(
15
+ \ ["attributes", "methods", "name", "type", "version"])
16
+
17
+ call s:expect(client_info.attributes).to_be_dict()
18
+ call s:expect(client_info.methods).to_equal({"specs": {"nargs": 1}, "poll": {}})
19
+ call s:expect(client_info.name).to_match("ruby-\\(script\\|rplugin\\)-host")
20
+ call s:expect(client_info.type).to_equal("host")
21
+
22
+ call s:expect(client_info.version.major).to_be_number()
23
+ call s:expect(client_info.version.minor).to_be_number()
24
+ call s:expect(client_info.version.patch).to_be_number()
25
+ endfor
42
26
  endfunction
@@ -0,0 +1,13 @@
1
+ let s:suite = themis#suite("Remote module")
2
+ let s:expect = themis#helper("expect")
3
+
4
+ call themis#helper('command').with(s:)
5
+
6
+ function! s:suite.defines_commands() abort
7
+ RbSetVar set_from_rb_mod foobar
8
+ call s:expect(g:set_from_rb_mod).to_equal('foobar')
9
+ endfunction
10
+
11
+ function! s:suite.propagates_errors() abort
12
+ Throws /oops/ :RbWillRaise
13
+ endfunction
@@ -0,0 +1,11 @@
1
+ require "neovim"
2
+
3
+ Neovim.start_remote do |mod|
4
+ mod.register_handler("rb_set_var") do |nvim, name, val|
5
+ nvim.set_var(name, val.to_s)
6
+ end
7
+
8
+ mod.register_handler("rb_will_raise") do |nvim|
9
+ raise "oops"
10
+ end
11
+ end
@@ -1,7 +1,12 @@
1
1
  let s:lib_path = getcwd() . "/lib"
2
2
  let s:exe_path = getcwd() . "/exe/neovim-ruby-host"
3
3
  let g:acceptance_rtp = getcwd() . "/spec/acceptance/runtime"
4
- let g:ruby_host_prog = printf("ruby -I %s %s", s:lib_path, s:exe_path)
4
+
5
+ if has("win32") || has("win64")
6
+ let g:ruby_host_prog = getcwd() . "/script/host_wrapper.bat"
7
+ else
8
+ let g:ruby_host_prog = getcwd() . "/script/host_wrapper.sh"
9
+ endif
5
10
 
6
11
  ruby require "rspec/expectations"
7
12
  ruby include ::RSpec::Matchers.dup
@@ -0,0 +1,23 @@
1
+ local chan
2
+
3
+ local function ensure_job()
4
+ if chan then
5
+ return chan
6
+ end
7
+
8
+ chan = vim.fn.jobstart({
9
+ 'ruby',
10
+ '-I', 'lib',
11
+ 'spec/acceptance/runtime/example_remote_module.rb',
12
+ }, { rpc = true })
13
+
14
+ return chan
15
+ end
16
+
17
+ vim.api.nvim_create_user_command('RbSetVar', function(args)
18
+ vim.fn.rpcrequest(ensure_job(), 'rb_set_var', args.fargs)
19
+ end, { nargs = '*' })
20
+
21
+ vim.api.nvim_create_user_command('RbWillRaise', function(args)
22
+ vim.fn.rpcrequest(ensure_job(), 'rb_will_raise', args.fargs)
23
+ end, { nargs = 0 })
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.9.1
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Genco
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-08-13 00:00:00.000000000 Z
11
+ date: 2024-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: msgpack
@@ -160,6 +160,8 @@ files:
160
160
  - lib/neovim/plugin.rb
161
161
  - lib/neovim/plugin/dsl.rb
162
162
  - lib/neovim/plugin/handler.rb
163
+ - lib/neovim/remote_module.rb
164
+ - lib/neovim/remote_module/dsl.rb
163
165
  - lib/neovim/remote_object.rb
164
166
  - lib/neovim/ruby_provider.rb
165
167
  - lib/neovim/ruby_provider/buffer_ext.rb
@@ -174,10 +176,13 @@ files:
174
176
  - script/ci/download_nvim.sh
175
177
  - script/dump_api.rb
176
178
  - script/generate_docs.rb
179
+ - script/host_wrapper.bat
180
+ - script/host_wrapper.sh
177
181
  - script/j2mp.rb
178
182
  - script/mp2j.rb
179
183
  - script/run_acceptance.rb
180
184
  - spec/acceptance/client_info_spec.vim
185
+ - spec/acceptance/remote_module_spec.vim
181
186
  - spec/acceptance/rplugin_autocmd_spec.vim
182
187
  - spec/acceptance/rplugin_command_spec.vim
183
188
  - spec/acceptance/rplugin_function_spec.vim
@@ -196,7 +201,9 @@ files:
196
201
  - spec/acceptance/rubyfile/set_pwd_after.rb
197
202
  - spec/acceptance/rubyfile/set_pwd_before.rb
198
203
  - spec/acceptance/rubyfile_spec.vim
204
+ - spec/acceptance/runtime/example_remote_module.rb
199
205
  - spec/acceptance/runtime/init.vim
206
+ - spec/acceptance/runtime/plugin/example_remote_module.lua
200
207
  - spec/acceptance/runtime/rplugin/ruby/autocmds.rb
201
208
  - spec/acceptance/runtime/rplugin/ruby/commands.rb
202
209
  - spec/acceptance/runtime/rplugin/ruby/functions.rb
@@ -250,6 +257,7 @@ specification_version: 4
250
257
  summary: A Ruby client for Neovim
251
258
  test_files:
252
259
  - spec/acceptance/client_info_spec.vim
260
+ - spec/acceptance/remote_module_spec.vim
253
261
  - spec/acceptance/rplugin_autocmd_spec.vim
254
262
  - spec/acceptance/rplugin_command_spec.vim
255
263
  - spec/acceptance/rplugin_function_spec.vim
@@ -268,7 +276,9 @@ test_files:
268
276
  - spec/acceptance/rubyfile/set_pwd_after.rb
269
277
  - spec/acceptance/rubyfile/set_pwd_before.rb
270
278
  - spec/acceptance/rubyfile_spec.vim
279
+ - spec/acceptance/runtime/example_remote_module.rb
271
280
  - spec/acceptance/runtime/init.vim
281
+ - spec/acceptance/runtime/plugin/example_remote_module.lua
272
282
  - spec/acceptance/runtime/rplugin/ruby/autocmds.rb
273
283
  - spec/acceptance/runtime/rplugin/ruby/commands.rb
274
284
  - spec/acceptance/runtime/rplugin/ruby/functions.rb