aboutsummaryrefslogtreecommitdiff
path: root/init.lua
Commit message (Collapse)AuthorAgeFilesLines
...
* fix diagnostics line highlightingFlorian Fischer2023-10-061-4/+3
| | | | | | | | Range highlighting used the vis_range and line highlighting the LSP range. Do not touch old code you no longer understand because you think you are apparently smarter than your past self! Fixes: efd5262f2c45d3289e482b1091d3c1d44cf67a42
* use vis default formatting optionsFlorian Fischer2023-10-061-2/+4
| | | | Since vis 0.9 the options are exposed via the vis.options table.
* adapt communicate API released with vis 0.9Florian Fischer2023-10-061-3/+3
|
* support highlighting the line number of available diagnosticsv0.2.0Florian Fischer2023-10-061-6/+32
|
* try to convert workspaceEdit.documentChanges to plain changesFlorian Fischer2023-08-291-1/+12
| | | | | | | 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[].
* do not index a nil value when no formatting edits are returnedFlorian Fischer2023-08-291-1/+4
| | | | | | | | | | | 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
* fix hover result determinationFlorian Fischer2023-08-291-1/+1
| | | | | If the result is MarkedString[] the table must have a length > 0, because all returned object types are represented as lua tables.
* Add function to open a file to lspc objectMichiel van den Heuvel2023-08-281-1/+7
|
* Remove duplicate command_register callMichiel van den Heuvel2023-08-281-10/+0
|
* Fix filename escaping when opening a fileMichiel van den Heuvel2023-08-281-2/+6
|
* Offer to save current file before opening new oneMichiel van den Heuvel2023-07-201-0/+8
|
* Move confirmation and selection functions upMichiel van den Heuvel2023-06-301-79/+79
|
* Make formatting options sort of configurableMichiel van den Heuvel2023-06-291-1/+6
| | | | | | | | 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
* Add textDocument/formatting implementationMichiel van den Heuvel2023-06-291-0/+53
| | | | | | | 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.
* fix format of license file headersFlorian Fischer2023-06-251-4/+5
|
* fix the license headers to reflect the used GPL licenseFlorian Fischer2023-06-241-1/+14
|
* Avoid screen flicker when navigating within fileMichiel van den Heuvel2023-06-121-3/+7
| | | | | When using vis_open_doc_pos, don't reopen the file if the path of the opened file and the doc_pos match.
* fix log file creation for paths including spacesFlorian Fischer2023-06-111-1/+1
|
* jump to document position in the original windowFlorian Fischer2023-04-151-8/+11
| | | | | | | | | | 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.
* distinguish between method call and method responseFlorian Fischer2023-01-181-1/+1
| | | | | | | | | | | | | 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
* remove superfluous function parameterFlorian Fischer2023-01-141-1/+1
|
* support configuration and initializationOptions per language serverFlorian Fischer2023-01-141-11/+48
| | | | | | | | | | | 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.
* make vis-menu and vertical selection the default menu cmdFlorian Fischer2023-01-111-2/+1
|
* add context parameter to textDocument/references callFlorian Fischer2023-01-091-2/+8
| | | | Fixes !41.
* Merge branch 'fix-vis-menu-cursors'Florian Fischer2023-01-051-3/+11
|\
| * allow cursor keys when using vis-menuFlorian Fischer2023-01-041-3/+11
| | | | | | | | | | | | 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 completions using textEditFlorian Fischer2023-01-041-10/+1
|/ | | | | Fix the off-by-one manual range conversion by using the already available helper function.
* make format using the luarocks version of luaformatterFlorian Fischer2023-01-041-29/+19
| | | | | | | Apparently the version from the AUR behaves differently from the version installed via luarocks. Now the 100 chars column limit is actually applied.
* move client config and capabilities into separate fileFlorian Fischer2023-01-021-70/+3
| | | | | 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.
* use local variable instead of a global oneFlorian Fischer2023-01-021-1/+1
| | | | Fixes: 9c0a9b4fdcb2f0912b8ec3b9f7127d660565f898
* fix initialized notification parametersFlorian Fischer2023-01-021-1/+4
| | | | | | | | | | | | 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.
* fix textDocumentSync.save ServerCapability checkFlorian Fischer2023-01-021-1/+2
| | | | | | | | | | | | The ServerCapability textDocumentSync is optional and may be of kind TextDocumentSyncOptions | TextDocumentSyncKind; If a server uses TextDocumentSyncKind which is a integer enum our .save check fails. Test if it is save to use textDocumentSync as table before checking the save capability. Fixes !35.
* bump versionv0.1.5Florian Fischer2023-01-011-1/+1
|
* fix typo in commentFlorian Fischer2023-01-011-1/+1
|
* fix passed InitializeParamsFlorian Fischer2023-01-011-3/+3
| | | | | Correct the name of two parameters and ensure that the required parameter 'rootUri' is always set to null.
* move server configurations into a seperate fileFlorian Fischer2022-08-011-13/+1
|
* support window/showMessage notificationsFlorian Fischer2022-07-291-0/+18
| | | | | | | Introduce a new configuration message_level to control the messages displayed. The option message_level ranges from 1 - 4 (Error - Log) and corresponds to LSP's MessageType namespace.
* Update init.luaJorge Gomez2022-07-091-1/+1
|
* send clientCapabilitiesFlorian Fischer2022-02-201-4/+39
| | | | | | | Be nicer to the language servers by providing our capabilities so maybe we get more deterministic results. We do not support dynamicRegistration, markdown or workDoneProgress.
* support hoverResults containing MarkedString[]Florian Fischer2022-02-201-2/+16
| | | | | | python-language-server sends a list of MarkedStrings containing the signature as python code-block and the doc string as string. https://github.com/palantir/python-language-server/issues/836
* reformat ls_map tables as a table literalMatěj Cepl2021-12-281-9/+10
|
* add Lua LSP server configurationMatěj Cepl2021-12-281-1/+5
|
* try multiple json implementationsFlorian Fischer2021-12-271-10/+18
| | | | | We try 'json', 'cjson' and 'dkjson' in that order before using our bundled fallback implementation.
* actually use python-lsp-server binaryFlorian Fischer2021-12-271-1/+1
|
* change default python language server to pylspFlorian Fischer2021-12-271-2/+3
|
* bump version to 0.1.4v0.1.4Florian Fischer2021-12-131-1/+1
|
* use capture_cmd where possibleFlorian Fischer2021-12-131-7/+1
|
* improve default loggingFlorian Fischer2021-12-131-3/+44
| | | | | | | | | | | | I use to have logging enabled to be able to debug weird vis-lspc behavior right away. But I got annoyed by vis-lspc cluttering all my directories with vis-lspc.log files. So vis-lspc will no write its log files to $XDG_DATA_HOME/vis-lspc/<iso-date>-<cwd-basename>.log if lspc.log_file is not set by the user. This patch also introduces a helper to run a program and capture its output.
* add menu-/ confirm-cmd optionsFlorian Fischer2021-12-081-0/+10
|
* fix ff92a0f1fca0f0db5b00022fc2ac41579ac5ab24Florian Fischer2021-12-061-1/+1
| | | | Don't use a global variable.