neovim 0.7.1 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
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