aboutsummaryrefslogtreecommitdiff
path: root/init.lua
Commit message (Collapse)AuthorAgeFilesLines
* do not try to handle error responsesFlorian Fischer2021-11-221-1/+3
|
* fix crash in error reportingFlorian Fischer2021-11-211-1/+3
| | | | We crashed because a forgotten concatenation operator
* do not use lspc.log before lspc is initializedFlorian Fischer2021-08-291-60/+57
|
* bump version to 0.1.3v0.1.3Florian Fischer2021-08-161-1/+1
|
* move and fix parser codeFlorian Fischer2021-08-161-48/+16
| | | | | | | Move LSP message parser code into parser.lua. Fix parsing when message headers are split between to data junks. Simplify parser code using one string buffer and consuming already parsed message parts.
* write errors and warnings to the logFlorian Fischer2021-08-161-5/+10
|
* extract bindings into a seperate source fileFlorian Fischer2021-08-021-62/+3
|
* implement signatureHelpFlorian Fischer2021-07-191-1/+47
|
* open and close files with changes if necessaryFlorian Fischer2021-07-141-8/+20
|
* apply WorkspaceEdit changes in all open windowsFlorian Fischer2021-07-141-8/+13
|
* implement textDocument/renameFlorian Fischer2021-07-131-0/+120
| | | | | | | Currently only changes in the current window are applied. TODO: * apply changes in opened files by iteration all vis windows * apply changes in all files using sed or something
* add hover supportFlorian Fischer2021-07-121-2/+52
|
* Automatically open current file when showing diagnosticsv0.1.2Florian Fischer2021-07-091-3/+4
| | | | This is more consistent with the other lspc functions.
* Show warning instead of empty diagnostics messageFlorian Fischer2021-07-091-1/+5
|
* fix LSP message parsingFlorian Fischer2021-07-091-3/+3
| | | | | Don't always reset the state even if we updated it explicitly with the leftover from a complete message.
* add default keybindings from nvimFlorian Fischer2021-07-091-6/+33
|
* run lua-formatFlorian Fischer2021-07-091-2/+2
|
* add experimental diagnostic supportFlorian Fischer2021-04-021-1/+125
| | | | | | | * Diagnostics highlighting can be enabled with the vis option 'lspc-highlight-diagnostics' or by setting highlight_diagnostics to true in the lspc table. * The new vis command lspc-show-diagnostics is added which shows all diagnostics for the current line
* don't pass unused argumentsFlorian Fischer2021-04-021-5/+5
| | | | found by lua-language-server's diagnostics
* improve our location related functions and their documentationFlorian Fischer2021-04-021-16/+59
|
* use completionItem.label as default insertText as specified by LSPFlorian Fischer2021-03-211-2/+2
| | | | | | https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_completion states that if no insertText is present the label should be interpreted as inertText.
* check if a language server is available when opening a new fileFlorian Fischer2021-03-201-0/+3
|
* lspc_get_usable_ls return error if no syntax is providedFlorian Fischer2021-03-201-0/+4
|
* support goto method responses being LocationLinkFlorian Fischer2021-03-201-12/+31
|
* add capabilities parameter to initialize method callFlorian Fischer2021-03-201-1/+6
|
* responde to method calls with MethodNotFound ErrorFlorian Fischer2021-03-201-1/+26
|
* Do not crash when the server issues a method call and add a empty handlerFlorian Fischer2021-03-081-4/+17
|
* introduce a fallback to get our pid if /proc/self/stat is not availableFlorian Fischer2021-03-081-3/+19
| | | | | Obviously not all vis users are running Linux therefore vis-lspc uses sh -c "echo $PPID" as fallback if /proc/self/stat is not available.
* suppress luacheck upshadowing warnings for the event handler codeFlorian Fischer2021-03-081-5/+7
|
* fix insertText completion when issued with the cursor on a newlineFlorian Fischer2021-03-061-14/+36
| | | | | | | | | | | New algorithm: 1. check if the cursor is on a word which is a prefix of the completion 2. if not try to decrement the position because it is common than the cursor is behind the token to complete "fooba┃" 3. if found a match in 1. or 2. delete it 4. insert the new text at the current pos or the start of the deleted token Hopefully this is good enough to work in all possible corner cases
* add python language server configurationFlorian Fischer2021-03-041-1/+4
|
* add check if the configured language sever is installedFlorian Fischer2021-03-041-0/+14
|
* support completions only providing insertTextFlorian Fischer2021-03-041-4/+46
|
* introduce err and warn helper functionsFlorian Fischer2021-03-041-24/+30
|
* [lspc] check if syntax is nil when trying to start a language serverFlorian Fischer2021-02-171-2/+7
|
* [lspc] imprve mapping between languages and language serversv0.1.1Florian Fischer2021-02-171-9/+33
| | | | | | | | | Previously we managed running language servers by language but this is not practical since one language server can serve multiple languages. Clangd for example can deal with cpp and c code which frequently are used together in the same code base. Therefore we now manage running language servers by name and map syntax to language server names and to LSP languageIds as well.
* [lspc] print verbose message when receiving unexpected message from serverFlorian Fischer2021-02-171-0/+4
|
* [lspc] register file with language server when navigating to doc_posFlorian Fischer2021-02-171-0/+1
|
* [lspc] always append a new line after a log messageFlorian Fischer2021-02-171-6/+7
|
* release version 0.1.0v0.1.0Florian Fischer2021-02-161-1/+1
| | | | | | | | This is the first minor release of vis-lspc. It is now in a state that it satisfies all use cases I currently have for a LSP client implementation. This means I will not implement new features or change existing code as frequent as before.
* Support user choice and other improvementsFlorian Fischer2021-02-161-153/+251
| | | | | | | | | | | | * Add support for user choices by piping the available choices through lspc.menu_cmd which must be a dmenu|vis-menu|fzf like tool. * Mention all commands and options in the README * Add support for textDocument/references * Support opening new location in a horizonatl or vertical split * Internal refactoring * Group binding, vis command and event code * Return error messages and use vis:info only in vis commands * Fix a bug on unexpected server termination
* [lspc] add option to autostart a language server on WIN_OPEN eventsFlorian Fischer2021-02-161-3/+17
|
* [lspc] make log file configurableFlorian Fischer2021-02-161-1/+3
|
* [lspc] send textDocument/didChange notification before any textDocument/<method>Florian Fischer2021-02-151-5/+25
| | | | | | | | | | | | | We currently have no good way of detecting changes in a file, therefore we send the whole file content in a textDocument/didChange notification each time we want something from the language server. Consequences from this design: * diagnostics are not up to date till the client calls a server method * The server may need longer for its answer when it it informed about changes immediately before the client requests its service * We pass unnecessary much data between server and client which may be unpractical for huge files
* initial commitFlorian Fischer2021-02-141-0/+645