neovim 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +8 -0
  4. data/.travis.yml +4 -3
  5. data/CHANGELOG.md +11 -0
  6. data/README.md +10 -13
  7. data/Rakefile +18 -3
  8. data/appveyor.yml +4 -1
  9. data/{bin → exe}/neovim-ruby-host +0 -0
  10. data/lib/neovim/buffer.rb +34 -36
  11. data/lib/neovim/client.rb +121 -36
  12. data/lib/neovim/connection.rb +7 -1
  13. data/lib/neovim/event_loop.rb +3 -2
  14. data/lib/neovim/message.rb +1 -1
  15. data/lib/neovim/remote_object.rb +5 -2
  16. data/lib/neovim/ruby_provider.rb +2 -2
  17. data/lib/neovim/ruby_provider/vim.rb +6 -5
  18. data/lib/neovim/session.rb +11 -1
  19. data/lib/neovim/tabpage.rb +8 -15
  20. data/lib/neovim/version.rb +1 -1
  21. data/lib/neovim/window.rb +17 -33
  22. data/neovim.gemspec +4 -4
  23. data/script/dump_api.rb +1 -1
  24. data/script/generate_docs.rb +6 -7
  25. data/script/run_acceptance.rb +1 -1
  26. data/script/validate_docs.rb +1 -1
  27. data/spec/acceptance/ruby_spec.vim +13 -11
  28. data/spec/acceptance/rubydo_spec.vim +9 -0
  29. data/spec/acceptance/rubyfile/curbuf_ivar_get.rb +1 -1
  30. data/spec/acceptance/rubyfile/curbuf_ivar_set.rb +1 -1
  31. data/spec/acceptance/rubyfile/define_foo.rb +1 -1
  32. data/spec/acceptance/rubyfile/nested_inner.rb +1 -1
  33. data/spec/acceptance/rubyfile/set_pwd_after.rb +1 -1
  34. data/spec/acceptance/rubyfile/set_pwd_before.rb +1 -1
  35. data/spec/acceptance/rubyfile_spec.vim +15 -13
  36. data/spec/acceptance/runtime/init.vim +2 -2
  37. data/spec/helper.rb +1 -6
  38. data/spec/neovim/buffer_spec.rb +6 -0
  39. data/spec/neovim/client_spec.rb +7 -0
  40. data/spec/neovim/connection_spec.rb +30 -4
  41. data/spec/neovim/event_loop_spec.rb +6 -0
  42. data/spec/neovim/session_spec.rb +6 -0
  43. data/spec/support.rb +1 -1
  44. metadata +8 -23
  45. data/.coveralls.yml +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 97582ab6b5d7a61143cc0d0e3e1a5ffec8b6c292
4
- data.tar.gz: 1b6c5905f2c870f4fd77490a144a32337f0eef11
2
+ SHA256:
3
+ metadata.gz: 3c5af6d8f53a3684d8f7fe623c4d8f21ec8aaad9358984e963d956f31a2cb13b
4
+ data.tar.gz: b4dfd461df1568f5b7068ea4a874061af968b85b25f2fee5e12a0f58f6531e2c
5
5
  SHA512:
6
- metadata.gz: 01f995a41e2ece2e05228762b8e0d9ca36428bbf6bf896eb388e19b34869ede4d972395d5300381e4f4706e0426bafc6f82f0abd053aab4fa157b232db190f15
7
- data.tar.gz: e55008b53e7d042c631032455be96e81715256b1c2763c98f23a7891b44b89e88c1e4a449232bba9716a280844766c03666e346bc2943e6b025b9fc12a6234e8
6
+ metadata.gz: 31bccc282bc735d1595c4d7d63d31359d81e69fbae197593f14ef9bb6828cb33b0f767ab102f2ce3e3cb87cf693140f775c9e977de32b4f553e499c326725f03
7
+ data.tar.gz: f81473f7655cb6a3398fc5e91775220e116d38957c0172c29898aa7e1bf743de24708e0b1757e10c2a0227a80ae93b5ad9e3f8c3f43eae77ed1f0d00790dc8bd
data/.gitignore CHANGED
@@ -21,3 +21,4 @@ spec/workspace
21
21
  spec/acceptance/runtime/flavors
22
22
  spec/acceptance/runtime/rplugin_manifest.vim
23
23
  vendor/bundle
24
+ bin
@@ -2,8 +2,10 @@ AllCops:
2
2
  Exclude:
3
3
  - _neovim/**/*
4
4
  - spec/acceptance/**/*
5
+ - spec/workspace/**/*
5
6
  - vendor/**/*
6
7
  - script/**/*
8
+ - bin/**/*
7
9
 
8
10
  Layout/EndOfLine:
9
11
  EnforcedStyle: lf
@@ -69,6 +71,9 @@ Naming/AccessorMethodName:
69
71
  Exclude:
70
72
  - lib/neovim/client.rb
71
73
 
74
+ Naming/UncommunicativeMethodParamName:
75
+ Enabled: false
76
+
72
77
  Security/Eval:
73
78
  Exclude:
74
79
  - lib/neovim/ruby_provider.rb
@@ -107,6 +112,9 @@ Style/SpecialGlobalVars:
107
112
  Style/StringLiterals:
108
113
  EnforcedStyle: double_quotes
109
114
 
115
+ Style/StringLiteralsInInterpolation:
116
+ EnforcedStyle: double_quotes
117
+
110
118
  Style/SymbolArray:
111
119
  EnforcedStyle: brackets
112
120
 
@@ -1,4 +1,5 @@
1
1
  language: ruby
2
+ cache: bundler
2
3
  sudo: false
3
4
  dist: trusty
4
5
 
@@ -14,9 +15,9 @@ rvm:
14
15
 
15
16
  before_install:
16
17
  - eval "$(curl --connect-timeout 30 --retry 3 -Ss https://raw.githubusercontent.com/neovim/bot-ci/master/scripts/travis-setup.sh) nightly-x64"
17
- - gem update --system
18
- - gem update bundler
18
+ - gem update --system --conservative || (gem install "rubygems-update:~>2.7" --no-document && update_rubygems)
19
+ - gem install --remote bundler
19
20
  - bundle --version
20
21
 
21
- env: REPORT_COVERAGE=1 NVIM_RUBY_LOG_LEVEL=DEBUG NVIM_RUBY_LOG_FILE=ci.log
22
+ env: NVIM_RUBY_LOG_LEVEL=DEBUG NVIM_RUBY_LOG_FILE=ci.log
22
23
  script: bundle exec rake --trace
@@ -1,3 +1,14 @@
1
+ # 0.8.0
2
+
3
+ - Allow `Buffer#append` to take a string with newlines
4
+ - Use non-strict line indexing in `:rubydo` to prevent line deletions from
5
+ throwing exceptions
6
+ - Performance optimizations:
7
+ - Cache RPC method lookups and store them in a set
8
+ - Only flush writes before reading in the event loop
9
+ - Delete request handlers after invoking them
10
+ - Refresh provider globals in a single RPC request
11
+
1
12
  # 0.7.1
2
13
 
3
14
  - Fix `uninitialized constant Neovim::RubyProvider::StringIO`
data/README.md CHANGED
@@ -1,12 +1,9 @@
1
1
  # Neovim Ruby
2
2
 
3
- [![Travis](https://travis-ci.org/alexgenco/neovim-ruby.svg?branch=master)](https://travis-ci.org/alexgenco/neovim-ruby)
4
- [![Build status](https://ci.appveyor.com/api/projects/status/wp7agvgcxxcguj6h/branch/master?svg=true)](https://ci.appveyor.com/project/alexgenco/neovim-ruby/branch/master)
5
- [![Coverage Status](https://coveralls.io/repos/alexgenco/neovim-ruby/badge.svg)](https://coveralls.io/r/alexgenco/neovim-ruby)
6
- [![Code Climate](https://codeclimate.com/github/alexgenco/neovim-ruby/badges/gpa.svg)](https://codeclimate.com/github/alexgenco/neovim-ruby)
3
+ [![Travis](https://travis-ci.org/neovim/neovim-ruby.svg?branch=master)](https://travis-ci.org/neovim/neovim-ruby)
4
+ [![Build status](https://ci.appveyor.com/api/projects/status/wp7agvgcxxcguj6h/branch/master?svg=true)](https://ci.appveyor.com/project/neovim/neovim-ruby/branch/master)
7
5
  [![Gem Version](https://badge.fury.io/rb/neovim.svg)](https://badge.fury.io/rb/neovim)
8
- [![Dependency Status](https://gemnasium.com/badges/github.com/alexgenco/neovim-ruby.svg)](https://gemnasium.com/github.com/alexgenco/neovim-ruby)
9
- [![Inline docs](http://inch-ci.org/github/alexgenco/neovim-ruby.svg?branch=master)](http://inch-ci.org/github/alexgenco/neovim-ruby)
6
+ [![Inline docs](http://inch-ci.org/github/neovim/neovim-ruby.svg?branch=master)](http://inch-ci.org/github/neovim/neovim-ruby)
10
7
 
11
8
  Ruby bindings for [Neovim](https://github.com/neovim/neovim).
12
9
 
@@ -41,7 +38,7 @@ require "neovim"
41
38
  client = Neovim.attach_unix("/tmp/nvim.sock")
42
39
  ```
43
40
 
44
- Refer to the [`Neovim` docs](http://www.rubydoc.info/github/alexgenco/neovim-ruby/master/Neovim) for other ways to connect to `nvim`, and the [`Neovim::Client` docs](http://www.rubydoc.info/github/alexgenco/neovim-ruby/master/Neovim/Client) for a summary of the client interface.
41
+ Refer to the [`Neovim` docs](http://www.rubydoc.info/github/neovim/neovim-ruby/master/Neovim) for other ways to connect to `nvim`, and the [`Neovim::Client` docs](http://www.rubydoc.info/github/neovim/neovim-ruby/master/Neovim/Client) for a summary of the client interface.
45
42
 
46
43
  ### Plugins
47
44
 
@@ -73,7 +70,7 @@ end
73
70
 
74
71
  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.
75
72
 
76
- Refer to the [`Neovim::Plugin::DSL` docs](http://www.rubydoc.info/github/alexgenco/neovim-ruby/master/Neovim/Plugin/DSL) for a more complete overview of the `Neovim.plugin` DSL.
73
+ Refer to the [`Neovim::Plugin::DSL` docs](http://www.rubydoc.info/github/neovim/neovim-ruby/master/Neovim/Plugin/DSL) for a more complete overview of the `Neovim.plugin` DSL.
77
74
 
78
75
  ### Vim Plugin Support
79
76
 
@@ -81,16 +78,16 @@ The Neovim gem also acts as a compatibility layer for Ruby plugins written for `
81
78
 
82
79
  ## Links
83
80
 
84
- * Source: <http://github.com/alexgenco/neovim-ruby>
85
- * Bugs: <http://github.com/alexgenco/neovim-ruby/issues>
86
- * CI: <http://travis-ci.org/alexgenco/neovim-ruby>
81
+ * Source: <http://github.com/neovim/neovim-ruby>
82
+ * Bugs: <http://github.com/neovim/neovim-ruby/issues>
83
+ * CI: <http://travis-ci.org/neovim/neovim-ruby>
87
84
  * Documentation:
88
85
  * Latest Gem: <http://rubydoc.info/gems/neovim>
89
- * Master: <http://rubydoc.info/github/alexgenco/neovim-ruby/master/frames>
86
+ * Master: <http://rubydoc.info/github/neovim/neovim-ruby/master/frames>
90
87
 
91
88
  ## Contributing
92
89
 
93
- 1. Fork it (http://github.com/alexgenco/neovim-ruby/fork)
90
+ 1. Fork it (http://github.com/neovim/neovim-ruby/fork)
94
91
  2. Create your feature branch (`git checkout -b my-new-feature`)
95
92
  3. Commit your changes (`git commit -am 'Add some feature'`)
96
93
  4. Push to the branch (`git push origin my-new-feature`)
data/Rakefile CHANGED
@@ -16,7 +16,9 @@ namespace :spec do
16
16
  namespace :acceptance do
17
17
  desc "Install acceptance spec dependencies"
18
18
  task :deps do
19
- sh "bundle exec vim-flavor update --vimfiles-path=spec/acceptance/runtime"
19
+ Bundler.with_clean_env do
20
+ sh "bundle exec vim-flavor update --vimfiles-path=spec/acceptance/runtime"
21
+ end
20
22
  end
21
23
  end
22
24
  end
@@ -33,8 +35,21 @@ namespace :docs do
33
35
  end
34
36
  end
35
37
 
36
- task default: [:style, "spec:functional", "spec:acceptance", "docs:validate"]
38
+ namespace :scripts do
39
+ desc "Validate script syntax"
40
+ task :validate do
41
+ sh "ruby -c #{File.expand_path("script/*.rb", __dir__)}"
42
+ end
43
+ end
44
+
45
+ task default: [
46
+ :style,
47
+ :"docs:validate",
48
+ :"scripts:validate",
49
+ :"spec:functional",
50
+ :"spec:acceptance"
51
+ ]
37
52
 
38
53
  def run_script(script_name, *args)
39
- ruby File.expand_path("../script/#{script_name}.rb", __FILE__), *args
54
+ ruby File.expand_path("script/#{script_name}.rb", __dir__), *args
40
55
  end
@@ -7,13 +7,16 @@ environment:
7
7
  - RUBY_VERSION: 23
8
8
  - RUBY_VERSION: 22
9
9
 
10
+ cache:
11
+ - vendor/bundle
12
+
10
13
  install:
11
14
  - set SSL_CERT_FILE=C:/ruby24-x64/ssl/cert.pem
12
15
  - set PATH=C:\Ruby%RUBY_VERSION%\bin;C:\tools\neovim\Neovim\bin;%PATH%
13
16
  - set NVIM_RUBY_LOG_LEVEL=DEBUG
14
17
  - set NVIM_RUBY_LOG_FILE=%cd%\ci.log
15
18
  - choco install neovim --pre -fy --ignore-dependencies
16
- - bundle install
19
+ - bundle install --path vendor/bundle
17
20
 
18
21
  build: off
19
22
 
File without changes
@@ -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.2.2
7
+ # The methods documented here were generated using NVIM v0.3.1
8
8
  class Buffer < RemoteObject
9
9
  attr_reader :lines
10
10
 
@@ -91,7 +91,7 @@ module Neovim
91
91
  window = @session.request(:nvim_get_current_win)
92
92
  cursor = window.cursor
93
93
 
94
- set_lines(index, index, true, [str])
94
+ set_lines(index, index, true, [*str.split($/)])
95
95
  window.set_cursor(cursor)
96
96
  str
97
97
  end
@@ -135,101 +135,100 @@ module Neovim
135
135
 
136
136
  # The following methods are dynamically generated.
137
137
  =begin
138
- @method line_count(buffer)
138
+ @method line_count
139
139
  See +:h nvim_buf_line_count()+
140
- @param [Buffer] buffer
141
140
  @return [Integer]
142
141
 
143
- @method get_lines(buffer, start, end, strict_indexing)
142
+ @method attach(send_buffer, opts)
143
+ See +:h nvim_buf_attach()+
144
+ @param [Boolean] send_buffer
145
+ @param [Hash] opts
146
+ @return [Boolean]
147
+
148
+ @method detach
149
+ See +:h nvim_buf_detach()+
150
+ @return [Boolean]
151
+
152
+ @method get_lines(start, end, strict_indexing)
144
153
  See +:h nvim_buf_get_lines()+
145
- @param [Buffer] buffer
146
154
  @param [Integer] start
147
155
  @param [Integer] end
148
156
  @param [Boolean] strict_indexing
149
157
  @return [Array<String>]
150
158
 
151
- @method set_lines(buffer, start, end, strict_indexing, replacement)
159
+ @method set_lines(start, end, strict_indexing, replacement)
152
160
  See +:h nvim_buf_set_lines()+
153
- @param [Buffer] buffer
154
161
  @param [Integer] start
155
162
  @param [Integer] end
156
163
  @param [Boolean] strict_indexing
157
164
  @param [Array<String>] replacement
158
165
  @return [void]
159
166
 
160
- @method get_var(buffer, name)
167
+ @method get_var(name)
161
168
  See +:h nvim_buf_get_var()+
162
- @param [Buffer] buffer
163
169
  @param [String] name
164
170
  @return [Object]
165
171
 
166
- @method get_changedtick(buffer)
172
+ @method get_changedtick
167
173
  See +:h nvim_buf_get_changedtick()+
168
- @param [Buffer] buffer
169
174
  @return [Integer]
170
175
 
171
- @method get_keymap(buffer, mode)
176
+ @method get_keymap(mode)
172
177
  See +:h nvim_buf_get_keymap()+
173
- @param [Buffer] buffer
174
178
  @param [String] mode
175
179
  @return [Array<Hash>]
176
180
 
177
- @method set_var(buffer, name, value)
181
+ @method get_commands(opts)
182
+ See +:h nvim_buf_get_commands()+
183
+ @param [Hash] opts
184
+ @return [Hash]
185
+
186
+ @method set_var(name, value)
178
187
  See +:h nvim_buf_set_var()+
179
- @param [Buffer] buffer
180
188
  @param [String] name
181
189
  @param [Object] value
182
190
  @return [void]
183
191
 
184
- @method del_var(buffer, name)
192
+ @method del_var(name)
185
193
  See +:h nvim_buf_del_var()+
186
- @param [Buffer] buffer
187
194
  @param [String] name
188
195
  @return [void]
189
196
 
190
- @method get_option(buffer, name)
197
+ @method get_option(name)
191
198
  See +:h nvim_buf_get_option()+
192
- @param [Buffer] buffer
193
199
  @param [String] name
194
200
  @return [Object]
195
201
 
196
- @method set_option(buffer, name, value)
202
+ @method set_option(name, value)
197
203
  See +:h nvim_buf_set_option()+
198
- @param [Buffer] buffer
199
204
  @param [String] name
200
205
  @param [Object] value
201
206
  @return [void]
202
207
 
203
- @method get_number(buffer)
208
+ @method get_number
204
209
  See +:h nvim_buf_get_number()+
205
- @param [Buffer] buffer
206
210
  @return [Integer]
207
211
 
208
- @method get_name(buffer)
212
+ @method get_name
209
213
  See +:h nvim_buf_get_name()+
210
- @param [Buffer] buffer
211
214
  @return [String]
212
215
 
213
- @method set_name(buffer, name)
216
+ @method set_name(name)
214
217
  See +:h nvim_buf_set_name()+
215
- @param [Buffer] buffer
216
218
  @param [String] name
217
219
  @return [void]
218
220
 
219
- @method is_valid(buffer)
221
+ @method is_valid
220
222
  See +:h nvim_buf_is_valid()+
221
- @param [Buffer] buffer
222
223
  @return [Boolean]
223
224
 
224
- @method get_mark(buffer, name)
225
+ @method get_mark(name)
225
226
  See +:h nvim_buf_get_mark()+
226
- @param [Buffer] buffer
227
227
  @param [String] name
228
228
  @return [Array<Integer>]
229
229
 
230
- @method add_highlight(buffer, src_id, hl_group, line, col_start, col_end)
230
+ @method add_highlight(src_id, hl_group, line, col_start, col_end)
231
231
  See +:h nvim_buf_add_highlight()+
232
- @param [Buffer] buffer
233
232
  @param [Integer] src_id
234
233
  @param [String] hl_group
235
234
  @param [Integer] line
@@ -237,9 +236,8 @@ module Neovim
237
236
  @param [Integer] col_end
238
237
  @return [Integer]
239
238
 
240
- @method clear_highlight(buffer, src_id, line_start, line_end)
239
+ @method clear_highlight(src_id, line_start, line_end)
241
240
  See +:h nvim_buf_clear_highlight()+
242
- @param [Buffer] buffer
243
241
  @param [Integer] src_id
244
242
  @param [Integer] line_start
245
243
  @param [Integer] line_end
@@ -1,6 +1,7 @@
1
1
  require "neovim/api"
2
2
  require "neovim/current"
3
3
  require "neovim/session"
4
+ require "set"
4
5
 
5
6
  module Neovim
6
7
  # Client to a running +nvim+ instance. The interface is generated at
@@ -8,7 +9,7 @@ module Neovim
8
9
  # +RemoteObject+ subclasses (i.e. +Buffer+, +Window+, or +Tabpage+),
9
10
  # which similarly have dynamically generated interfaces.
10
11
  #
11
- # The methods documented here were generated using NVIM v0.2.2
12
+ # The methods documented here were generated using NVIM v0.3.1
12
13
  #
13
14
  # @see Buffer
14
15
  # @see Window
@@ -44,7 +45,7 @@ module Neovim
44
45
 
45
46
  # Extend +methods+ to include RPC methods.
46
47
  def methods(*args)
47
- super | rpc_methods
48
+ super | rpc_methods.to_a
48
49
  end
49
50
 
50
51
  # Access to objects belonging to the current +nvim+ context.
@@ -104,15 +105,17 @@ module Neovim
104
105
  private
105
106
 
106
107
  def rpc_methods
107
- @api.functions_for_object(self).map(&:method_name)
108
+ @rpc_methods ||=
109
+ @api.functions_for_object(self).map(&:method_name).to_set
108
110
  end
109
111
 
110
112
  public
111
113
 
112
114
  # The following methods are dynamically generated.
113
115
  =begin
114
- @method ui_attach(height, options)
116
+ @method ui_attach(width, height, options)
115
117
  See +:h nvim_ui_attach()+
118
+ @param [Integer] width
116
119
  @param [Integer] height
117
120
  @param [Hash] options
118
121
  @return [void]
@@ -121,120 +124,150 @@ module Neovim
121
124
  See +:h nvim_ui_detach()+
122
125
  @return [void]
123
126
 
124
- @method ui_try_resize(height)
127
+ @method ui_try_resize(width, height)
125
128
  See +:h nvim_ui_try_resize()+
129
+ @param [Integer] width
126
130
  @param [Integer] height
127
131
  @return [void]
128
132
 
129
- @method ui_set_option(value)
133
+ @method ui_set_option(name, value)
130
134
  See +:h nvim_ui_set_option()+
135
+ @param [String] name
131
136
  @param [Object] value
132
137
  @return [void]
133
138
 
134
- @method command
139
+ @method command(command)
135
140
  See +:h nvim_command()+
141
+ @param [String] command
136
142
  @return [void]
137
143
 
138
- @method get_hl_by_name(rgb)
144
+ @method get_hl_by_name(name, rgb)
139
145
  See +:h nvim_get_hl_by_name()+
146
+ @param [String] name
140
147
  @param [Boolean] rgb
141
148
  @return [Hash]
142
149
 
143
- @method get_hl_by_id(rgb)
150
+ @method get_hl_by_id(hl_id, rgb)
144
151
  See +:h nvim_get_hl_by_id()+
152
+ @param [Integer] hl_id
145
153
  @param [Boolean] rgb
146
154
  @return [Hash]
147
155
 
148
- @method feedkeys(mode, escape_csi)
156
+ @method feedkeys(keys, mode, escape_csi)
149
157
  See +:h nvim_feedkeys()+
158
+ @param [String] keys
150
159
  @param [String] mode
151
160
  @param [Boolean] escape_csi
152
161
  @return [void]
153
162
 
154
- @method input
163
+ @method input(keys)
155
164
  See +:h nvim_input()+
165
+ @param [String] keys
156
166
  @return [Integer]
157
167
 
158
- @method replace_termcodes(from_part, do_lt, special)
168
+ @method replace_termcodes(str, from_part, do_lt, special)
159
169
  See +:h nvim_replace_termcodes()+
170
+ @param [String] str
160
171
  @param [Boolean] from_part
161
172
  @param [Boolean] do_lt
162
173
  @param [Boolean] special
163
174
  @return [String]
164
175
 
165
- @method command_output
176
+ @method command_output(command)
166
177
  See +:h nvim_command_output()+
178
+ @param [String] command
167
179
  @return [String]
168
180
 
169
- @method eval
181
+ @method eval(expr)
170
182
  See +:h nvim_eval()+
183
+ @param [String] expr
171
184
  @return [Object]
172
185
 
173
- @method call_function(args)
186
+ @method execute_lua(code, args)
187
+ See +:h nvim_execute_lua()+
188
+ @param [String] code
189
+ @param [Array] args
190
+ @return [Object]
191
+
192
+ @method call_function(fn, args)
174
193
  See +:h nvim_call_function()+
194
+ @param [String] fn
175
195
  @param [Array] args
176
196
  @return [Object]
177
197
 
178
- @method execute_lua(args)
179
- See +:h nvim_execute_lua()+
198
+ @method call_dict_function(dict, fn, args)
199
+ See +:h nvim_call_dict_function()+
200
+ @param [Object] dict
201
+ @param [String] fn
180
202
  @param [Array] args
181
203
  @return [Object]
182
204
 
183
- @method strwidth
205
+ @method strwidth(text)
184
206
  See +:h nvim_strwidth()+
207
+ @param [String] text
185
208
  @return [Integer]
186
209
 
187
210
  @method list_runtime_paths
188
211
  See +:h nvim_list_runtime_paths()+
189
212
  @return [Array<String>]
190
213
 
191
- @method set_current_dir
214
+ @method set_current_dir(dir)
192
215
  See +:h nvim_set_current_dir()+
216
+ @param [String] dir
193
217
  @return [void]
194
218
 
195
219
  @method get_current_line
196
220
  See +:h nvim_get_current_line()+
197
221
  @return [String]
198
222
 
199
- @method set_current_line
223
+ @method set_current_line(line)
200
224
  See +:h nvim_set_current_line()+
225
+ @param [String] line
201
226
  @return [void]
202
227
 
203
228
  @method del_current_line
204
229
  See +:h nvim_del_current_line()+
205
230
  @return [void]
206
231
 
207
- @method get_var
232
+ @method get_var(name)
208
233
  See +:h nvim_get_var()+
234
+ @param [String] name
209
235
  @return [Object]
210
236
 
211
- @method set_var(value)
237
+ @method set_var(name, value)
212
238
  See +:h nvim_set_var()+
239
+ @param [String] name
213
240
  @param [Object] value
214
241
  @return [void]
215
242
 
216
- @method del_var
243
+ @method del_var(name)
217
244
  See +:h nvim_del_var()+
245
+ @param [String] name
218
246
  @return [void]
219
247
 
220
- @method get_vvar
248
+ @method get_vvar(name)
221
249
  See +:h nvim_get_vvar()+
250
+ @param [String] name
222
251
  @return [Object]
223
252
 
224
- @method get_option
253
+ @method get_option(name)
225
254
  See +:h nvim_get_option()+
255
+ @param [String] name
226
256
  @return [Object]
227
257
 
228
- @method out_write
258
+ @method out_write(str)
229
259
  See +:h nvim_out_write()+
260
+ @param [String] str
230
261
  @return [void]
231
262
 
232
- @method err_write
263
+ @method err_write(str)
233
264
  See +:h nvim_err_write()+
265
+ @param [String] str
234
266
  @return [void]
235
267
 
236
- @method err_writeln
268
+ @method err_writeln(str)
237
269
  See +:h nvim_err_writeln()+
270
+ @param [String] str
238
271
  @return [void]
239
272
 
240
273
  @method list_bufs
@@ -245,8 +278,9 @@ module Neovim
245
278
  See +:h nvim_get_current_buf()+
246
279
  @return [Buffer]
247
280
 
248
- @method set_current_buf
281
+ @method set_current_buf(buffer)
249
282
  See +:h nvim_set_current_buf()+
283
+ @param [Buffer] buffer
250
284
  @return [void]
251
285
 
252
286
  @method list_wins
@@ -257,8 +291,9 @@ module Neovim
257
291
  See +:h nvim_get_current_win()+
258
292
  @return [Window]
259
293
 
260
- @method set_current_win
294
+ @method set_current_win(window)
261
295
  See +:h nvim_set_current_win()+
296
+ @param [Window] window
262
297
  @return [void]
263
298
 
264
299
  @method list_tabpages
@@ -269,20 +304,24 @@ module Neovim
269
304
  See +:h nvim_get_current_tabpage()+
270
305
  @return [Tabpage]
271
306
 
272
- @method set_current_tabpage
307
+ @method set_current_tabpage(tabpage)
273
308
  See +:h nvim_set_current_tabpage()+
309
+ @param [Tabpage] tabpage
274
310
  @return [void]
275
311
 
276
- @method subscribe
312
+ @method subscribe(event)
277
313
  See +:h nvim_subscribe()+
314
+ @param [String] event
278
315
  @return [void]
279
316
 
280
- @method unsubscribe
317
+ @method unsubscribe(event)
281
318
  See +:h nvim_unsubscribe()+
319
+ @param [String] event
282
320
  @return [void]
283
321
 
284
- @method get_color_by_name
322
+ @method get_color_by_name(name)
285
323
  See +:h nvim_get_color_by_name()+
324
+ @param [String] name
286
325
  @return [Integer]
287
326
 
288
327
  @method get_color_map
@@ -293,18 +332,64 @@ module Neovim
293
332
  See +:h nvim_get_mode()+
294
333
  @return [Hash]
295
334
 
296
- @method get_keymap
335
+ @method get_keymap(mode)
297
336
  See +:h nvim_get_keymap()+
337
+ @param [String] mode
298
338
  @return [Array<Hash>]
299
339
 
340
+ @method get_commands(opts)
341
+ See +:h nvim_get_commands()+
342
+ @param [Hash] opts
343
+ @return [Hash]
344
+
300
345
  @method get_api_info
301
346
  See +:h nvim_get_api_info()+
302
347
  @return [Array]
303
348
 
304
- @method call_atomic
349
+ @method set_client_info(name, version, type, methods, attributes)
350
+ See +:h nvim_set_client_info()+
351
+ @param [String] name
352
+ @param [Hash] version
353
+ @param [String] type
354
+ @param [Hash] methods
355
+ @param [Hash] attributes
356
+ @return [void]
357
+
358
+ @method get_chan_info(chan)
359
+ See +:h nvim_get_chan_info()+
360
+ @param [Integer] chan
361
+ @return [Hash]
362
+
363
+ @method list_chans
364
+ See +:h nvim_list_chans()+
365
+ @return [Array]
366
+
367
+ @method call_atomic(calls)
305
368
  See +:h nvim_call_atomic()+
369
+ @param [Array] calls
306
370
  @return [Array]
307
371
 
372
+ @method parse_expression(expr, flags, highlight)
373
+ See +:h nvim_parse_expression()+
374
+ @param [String] expr
375
+ @param [String] flags
376
+ @param [Boolean] highlight
377
+ @return [Hash]
378
+
379
+ @method list_uis
380
+ See +:h nvim_list_uis()+
381
+ @return [Array]
382
+
383
+ @method get_proc_children(pid)
384
+ See +:h nvim_get_proc_children()+
385
+ @param [Integer] pid
386
+ @return [Array]
387
+
388
+ @method get_proc(pid)
389
+ See +:h nvim_get_proc()+
390
+ @param [Integer] pid
391
+ @return [Object]
392
+
308
393
  =end
309
394
  end
310
395
  end