<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/runtime/lua, branch stable</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>fix(lsp): fix handler signature, tests</title>
<updated>2021-09-26T22:15:03+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2021-09-26T21:21:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=14cdaca6a8180c6e3079cd2e73fa75a5eb5253da'/>
<id>14cdaca6a8180c6e3079cd2e73fa75a5eb5253da</id>
<content type='text'>
- not necessary on master: got lost in the vim.lsp.diagnostic =&gt; vim.diagnostic migration
- fix tests which accidentally depended on previous session
- ref #15504
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- not necessary on master: got lost in the vim.lsp.diagnostic =&gt; vim.diagnostic migration
- fix tests which accidentally depended on previous session
- ref #15504
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lsp): allow root_dir to be nil (#15430)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>Mathias Fußenegger</name>
<email>mfussenegger@users.noreply.github.com</email>
</author>
<published>2021-08-19T16:15:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=7b0ae589f0a703359db4e52733e3998987de4123'/>
<id>7b0ae589f0a703359db4e52733e3998987de4123</id>
<content type='text'>
According to the protocol definition `rootPath`, `rootUri` and
`workspaceFolders` are allowed to be null.

Some language servers utilize this to provide "single file" support.
If all three are null, they don't attempt to index a directory but
instead only provide capabilities for a single file.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
According to the protocol definition `rootPath`, `rootUri` and
`workspaceFolders` are allowed to be null.

Some language servers utilize this to provide "single file" support.
If all three are null, they don't attempt to index a directory but
instead only provide capabilities for a single file.</pre>
</div>
</content>
</entry>
<entry>
<title>lsp(start_client): Allow passing custom workspaceFolders to the LSP (#15132)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>sim</name>
<email>simrats169169@gmail.com</email>
</author>
<published>2021-07-20T20:00:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8ec5bc91262a73192cc63fe1ab25719cba139caa'/>
<id>8ec5bc91262a73192cc63fe1ab25719cba139caa</id>
<content type='text'>
Some language servers *cough*rust-analyzer*cough* need an empty/custom
workspaceFolders for certain usecases. For example, rust-analyzer
needs an empty workspaceFolders table for standalone file support
(See https://github.com/rust-analyzer/rust-analyzer/pull/8955).

This can also be useful for other languages that need to commonly
open a certain directory (like flutter or lua), which would help
prevent spinning up a new language server altogether.

In case no workspaceFolders are passed, we fallback to what we had
before.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some language servers *cough*rust-analyzer*cough* need an empty/custom
workspaceFolders for certain usecases. For example, rust-analyzer
needs an empty workspaceFolders table for standalone file support
(See https://github.com/rust-analyzer/rust-analyzer/pull/8955).

This can also be useful for other languages that need to commonly
open a certain directory (like flutter or lua), which would help
prevent spinning up a new language server altogether.

In case no workspaceFolders are passed, we fallback to what we had
before.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lsp): check if buffer is valid in changetracking (#15505)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>Jose Alvarez</name>
<email>j.alvarez11@icloud.com</email>
</author>
<published>2021-08-28T09:57:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=959cf5e53c79e79794e09c5f6260094ff66f0ffa'/>
<id>959cf5e53c79e79794e09c5f6260094ff66f0ffa</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lsp): avoid ipairs on non-sequential tables (#15059)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>Michael Lingelbach</name>
<email>m.j.lbach@gmail.com</email>
</author>
<published>2021-07-11T18:34:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=dc15b3a92c9b6af1a985fa5b62f04177795e58df'/>
<id>dc15b3a92c9b6af1a985fa5b62f04177795e58df</id>
<content type='text'>
ipairs terminates on the first nil index when iterating over table keys:

for i,k in ipairs( {[1] = 'test', [3] = 'test'} ) do
  print(i, k)
end

prints:
1 test

Instead, use pairs which continues iterating over the entire table:

for i,k in pairs( {[1] = 'test', [3] = 'test'} ) do
  print(i, k)
end

prints:
1 test
3 test</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ipairs terminates on the first nil index when iterating over table keys:

for i,k in ipairs( {[1] = 'test', [3] = 'test'} ) do
  print(i, k)
end

prints:
1 test

Instead, use pairs which continues iterating over the entire table:

for i,k in pairs( {[1] = 'test', [3] = 'test'} ) do
  print(i, k)
end

prints:
1 test
3 test</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lsp): improve vim.lsp.util.apply_text_edits (#15561)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>hrsh7th</name>
<email>hrsh7th@gmail.com</email>
</author>
<published>2021-09-18T20:19:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=18375c6df609d4e89640c609490a85110852795c'/>
<id>18375c6df609d4e89640c609490a85110852795c</id>
<content type='text'>
- Fix the cursor position after applying TextEdits
- Support reversed range of TextEdit
- Invoke nvim_buf_set_text one by one
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Fix the cursor position after applying TextEdits
- Support reversed range of TextEdit
- Invoke nvim_buf_set_text one by one
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lsp): improve logging (#15636)</title>
<updated>2021-09-26T18:28:28+00:00</updated>
<author>
<name>Michael Lingelbach</name>
<email>m.j.lbach@gmail.com</email>
</author>
<published>2021-09-15T18:35:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=7b1315fe61131f787d9351ecd444346b95f5e49c'/>
<id>7b1315fe61131f787d9351ecd444346b95f5e49c</id>
<content type='text'>
* Simplify rpc encode/decode messages to rpc.send/rcp.receive
* Make missing handlers message throw a warning
* Clean up formatting style in log
* Move all non-RPC loop messages to trace instead of debug
* Add format func option to log to allow newlines in per log entry
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Simplify rpc encode/decode messages to rpc.send/rcp.receive
* Make missing handlers message throw a warning
* Clean up formatting style in log
* Move all non-RPC loop messages to trace instead of debug
* Add format func option to log to allow newlines in per log entry
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lsp): update lsp-handler signature in call_hierarchy (#15738)</title>
<updated>2021-09-26T17:25:17+00:00</updated>
<author>
<name>Mathias Fußenegger</name>
<email>mfussenegger@users.noreply.github.com</email>
</author>
<published>2021-09-21T22:05:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=27bac13be66946e2cb2912a44185d18b0f856a32'/>
<id>27bac13be66946e2cb2912a44185d18b0f856a32</id>
<content type='text'>
This fixes the handler signature and also prevents n+1 requests firing
if there are multiple clients.

(The first `prepareCallHierarchy` handler is called once per client,
each invocation used `buf_request` to make more requests using *all*
clients)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes the handler signature and also prevents n+1 requests firing
if there are multiple clients.

(The first `prepareCallHierarchy` handler is called once per client,
each invocation used `buf_request` to make more requests using *all*
clients)</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lsp): adapt codelens resolve to handler signature change (#15578)</title>
<updated>2021-09-26T17:25:17+00:00</updated>
<author>
<name>Mathias Fußenegger</name>
<email>mfussenegger@users.noreply.github.com</email>
</author>
<published>2021-09-06T15:30:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d26d489e2e5986c8201af8e3e1e8b860adb57afc'/>
<id>d26d489e2e5986c8201af8e3e1e8b860adb57afc</id>
<content type='text'>
Follow up to https://github.com/neovim/neovim/pull/15504</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Follow up to https://github.com/neovim/neovim/pull/15504</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lsp): update workspace/applyEdit handler signature (#15573)</title>
<updated>2021-09-26T17:25:17+00:00</updated>
<author>
<name>Jose Alvarez</name>
<email>j.alvarez11@icloud.com</email>
</author>
<published>2021-09-05T19:48:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=a6eab6e25e57c10baabc4c061fe6a9339614c8f4'/>
<id>a6eab6e25e57c10baabc4c061fe6a9339614c8f4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
