| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
| |
Default formatting options should not be configured by the LSPC client,
the user should either configure them explicitly or use something
like editorconfig or mode lines.
|
| |
|
|
| |
Since vis 0.9 the options are exposed via the vis.options table.
|
| | |
|
| |\
| |
| |
| |
| |
| |
| | |
try to convert workspaceEdit.documentChanges to plain changes
Closes #34
See merge request muhq/vis-lspc!44
|
| |/
|
|
|
|
|
| |
We do not support workspaceEdit.documentChanges but some LSP servers
do not respect our capabilities and send them anyways.
Try to optimistically convert simple documentChanges to plain changes.
We only support simple TextDocumentEdit[].
|
| |
|
|
|
|
|
|
|
|
|
| |
The method textDocument/formatting is allowed to return null/nil which
was directly passed to vis_apply_textEdits causing an exception
when trying to iterate the textEdits table.
Only pass the result of textDocument/formatting to vis_apply_textEdits
if there is an actual result.
Fixes: e83950a7149f364b653395cdd4d9446875a7f469
|
| |
|
|
|
| |
If the result is MarkedString[] the table must have a length > 0,
because all returned object types are represented as lua tables.
|
| | |
|
| | |
|
| | |
|
| |\
| |
| |
| |
| | |
Check modified
See merge request muhq/vis-lspc!41
|
| | | |
|
| | | |
|
| |\|
| |
| |
| |
| | |
Add textDocument/formatting implementation
See merge request muhq/vis-lspc!40
|
| | |
| |
| |
| |
| |
| |
| |
| | |
This should be wired up to code that's in a pull request in the vis
repository for the default options. This PR does not yet expose
`expandtab`.
Referenced PR: https://github.com/martanne/vis/pull/717
|
| | |
| |
| |
| |
| |
| |
| | |
This is tested with the Rust language server and the Lua one. Moving
the cursor to the correct position afterwards works with Rust, but not
with Lua. Being smarter about the ranges is probably necessary for Lua
and might make other ones more robust.
|
| |/ |
|
| | |
|
| | |
|
| |
|
|
|
| |
When using vis_open_doc_pos, don't reopen the file if the path of the
opened file and the doc_pos match.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
Currently if a method call result causing the editor to jump to a new
location is received from the language server we change the current
window ('vis.win').
However this behavior is strange if the user has already switch window
the message window was opened.
Remember the window where the jump was requested and execute it in
the original window.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We can not only use the fact that we have a method call inflight with
the observed id. Because the language server may has called a method
on use with the same id.
Therefore we have to also check if the incoming message contains
a method field.
method + id -> method call
id -> method response
method -> notification
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
Send language server settings after initialization via a
workspace/didChangeConfiguration notification.
Implement a workspace/configuration handler using the values stored
in the language server settings.
Send the init_options as initializationOptions in the initialize
parameters.
|
| |\
| |
| |
| |
| | |
haskell and ocaml language servers
See merge request muhq/vis-lspc!38
|
| | | |
|
| | | |
|
| | | |
|
| |/
|
|
| |
Fixes !41.
|
| |\ |
|
| | |
| |
| |
| |
| |
| | |
vis uses vis:pipe to call vis-menu when completing filenames.
Simply copy what vis does. However, using vis:pipe does not work with
fzf. I do not understand why but the vis-menu special case seams to work.
|
| |/
|
|
|
| |
Fix the off-by-one manual range conversion by using the already available
helper function.
|
| | |
|
| |
|
|
|
|
|
| |
Apparently the version from the AUR behaves differently from
the version installed via luarocks.
Now the 100 chars column limit is actually applied.
|
| | |
|
| |
|
|
|
| |
The make targets use a shell loop which does not fail if one of
the iterations fail.
|
| | |
|
| |\
| |
| |
| |
| | |
Supported servers (typescript/dart)
See merge request muhq/vis-lspc!37
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Fixes 3e1894cd0825e028c9e37c90f8dbaa8499fdd4e3.
|
| |/
|
|
|
| |
This helps to move code out of the to big init.lua as well as
allows to use the vis-lspc version in different lua files.
|
| |
|
|
| |
Fixes: 9c0a9b4fdcb2f0912b8ec3b9f7127d660565f898
|
| |
|
|
|
|
|
|
|
|
|
|
| |
LSP defines the parameters of the initialized notifications as empty
object.
The dart language server expects that the initialize notification has an
empty params object.
Therefore, pass an empty parameter table to the initialized notification.
Tested with our fallback json implementation as well as dkjson.
Fixes !37.
|