aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Handle writes to closed language-server pipesMatěj Cepl11 days1-2/+9
| | | | | | | A language server can exit and close its communication pipe before vis-lspc sends its next RPC message. The resulting Lua file-handle error escapes the RPC function and interrupts editing. Catch failures from write and flush, log the server name and error, and return false instead.
* check if capabilities.textDocumentSync.save is indexableFlorian Fischer11 days1-1/+2
| | | | Fixes: 35ef46023670e94617b3a5ea49591a2ee5808c0e
* support textDocumentSync.save.includeText capabilityFlorian Fischer12 days1-0/+3
|
* support feature detection for vis ui styling APIMatěj Cepl13 days3-5/+37
| | | | | | | | | | In builds of vis packaged without a git tree (such as openSUSE OBS RPM builds), vis.API defaults to 0. Checking `vis.API > 3215` therefore fails even when the new vis.ui styling API is present. Check for the existence of `vis.ui.style_define` and `vis.ui.style_push` directly, and accept an optional window object in util.style_define for backward compatibility with older versions.
* send empty array containing null if no configuration is availableFlorian Fischer2026-09-221-1/+1
|
* implement backward compatible style handlingFlorian Fischer2026-07-154-6/+20
| | | | Remove diagnostic_style_id and use vis.ui:style_push to obtain one.
* supported-servers.lua: remove whitespaceFlorian Fischer2026-06-141-1/+1
| | | | Fixes: cc2c4f60093a6cd98af3e6f0f0b4a30e4b804099
* Merge branch 'zls' into 'main'Florian Fischer2026-06-141-0/+4
|\ | | | | | | | | supported-servers.lua: add zig language server See merge request muhq/vis-lspc!67
| * supported-servers.lua: add zig language serversahil2026-06-141-0/+4
|/
* use the correct names of the position conversion functionsFlorian Fischer2026-05-301-4/+4
|
* export lspc_select as lspc:selectFlorian Fischer2026-05-142-5/+16
| | | | | | | | This allows external code to reuse the select method. Example visrc.lua: local lspc = require('plugins/vis-lspc') local choice = lspc:select({'A', 'B', 'C', '6'})
* support vis' new option get-callbackFlorian Fischer2026-05-142-30/+70
|
* run make formatFlorian Fischer2026-05-131-1/+1
| | | | FIXES: ee7d98607dc67b08cf554e2cfb7442407f94ce38
* Merge branch 'Topoetry-show_message-info'Florian Fischer2026-04-222-15/+19
|\
| * made 1 line message be displayed with vis:infoTopoetry2026-04-222-15/+19
| | | | | | | | made the documentation for `show_message` clearer
* | fix custom ls workspace root detectionFlorian Fischer2026-04-201-1/+1
|/ | | | | | | | | find_root_uri should consider the root configuration option for each language server, however currently non-existent table member is checked. Reported-By: lieks Suggested-By: lieks
* mention textDocument/documentSymbol supportFlorian Fischer2026-01-301-0/+1
|
* remove syntax highlighting from the navigation windowFlorian Fischer2026-01-301-0/+3
|
* improve navigation windowsFlorian Fischer2026-01-303-79/+72
| | | | | | | Remove broken autoscrolling. Add commands to control a code/navigation window pair. Support multiple navigation window pairs. Improve default navigation window keybindings.
* make navigation window configurable and add key bindingsFlorian Fischer2026-01-303-32/+137
|
* add < o> binding for lspc-navigation-window commandFlorian Fischer2026-01-301-0/+4
|
* support navigating a file by its symbols in a seperate windowFlorian Fischer2026-01-302-0/+148
|
* Merge branch 'settings' into 'main'Florian Fischer2026-01-115-26/+386
|\ | | | | | | | | Add a sophisticated settings subsystem See merge request muhq/vis-lspc!54
| * settings: do not send empty settings arrays to the serverFlorian Fischer2025-11-301-2/+7
| | | | | | | | | | LSP requires that the result array of a workspace/configure call must include null if the client can not provide any configuration.
| * log the actual global settingsFlorian Fischer2025-11-301-1/+1
| |
| * append numbered members when mergingFlorian Fischer2025-11-302-16/+16
| | | | | | | | | | Overriding numbered members is not intuitive. Merging {1} and {2} should return {1,2} not {2}.
| * do not apply unspecified sections to project local settingsFlorian Fischer2025-11-301-1/+5
| |
| * implement more sophisticated settingsFlorian Fischer2025-11-303-19/+275
| |
| * add language server configuration to its object tableFlorian Fischer2025-11-301-7/+8
| |
| * add table helper utility functionsFlorian Fischer2025-11-302-0/+94
|/
* add missing punctuationFlorian Fischer2025-11-301-2/+2
|
* remove usable LS check from highlight_diagnosticsFlorian Fischer2025-11-121-5/+0
| | | | | | Highlighting diagnostics does not need a LS. However, there should only be diagnostics if a LS is available. But, this is already checked when looking at the open file.
* only try to de-flatten a configuration section if it is presentFlorian Fischer2025-11-121-6/+9
| | | | | | Harper send requests like this {"jsonrpc":"2.0","method":"workspace/configuration","params":{"items":[{}]},"id":0} containing a single empty item.
* Merge branch 'diagnostic-nav-bindings' into 'main'Florian Fischer2025-11-122-0/+10
|\ | | | | | | | | Add default bindings for diagnostics navigation See merge request muhq/vis-lspc!66
| * Add default bindings for diagnostics navigationRubén Santos2025-11-122-0/+10
|/
* parse LSP messages containing a Content-Type headerFlorian Fischer2025-09-062-2/+19
|
* fix(empty file): fixes ls trying to open an empty fileJason Fuchs2025-09-021-1/+1
|
* Merge branch 'fix_last_char_range' into 'main'Florian Fischer2025-07-274-16/+33
|\ | | | | | | | | | | | | fix conversion of last newline selections Closes #52 See merge request muhq/vis-lspc!63
| * add autoconfirm_edits configuration optionFlorian Fischer2025-07-123-16/+21
| | | | | | | | | | Some language servers replace the whole file content on an edit, thus producing potentially really big diffs not suitable for review and user confirmation. So some users may just accept the changes proposed from the language server.
| * add special case for the gopls empty file rangeFlorian Fischer2025-07-021-3/+7
| |
| * fix conversion of last byte selectionsFlorian Fischer2025-07-021-0/+8
|/ | | | | | | | If a language server sends a selection including the last byte, the line number will be one greater than the actual number of lines. Those selections are not converted by our algorithm iterating all lines. Add a special case to still convert them. Fixes: f5c2043
* Merge branch 'fix-select-location-format' into 'main'Florian Fischer2025-07-021-2/+2
|\ | | | | | | | | Fix non-integers for position in select location See merge request muhq/vis-lspc!62
| * Fix non-integers for position in select locationMichiel van den Heuvel2025-07-021-2/+2
| |
* | Merge branch 'pull-diagnostics' into 'main'Florian Fischer2025-07-022-1/+44
|\ \ | |/ |/| | | | | Add pull diagnostics See merge request muhq/vis-lspc!61
| * Add pull diagnosticsMichiel van den Heuvel2025-07-022-1/+44
|/
* declare test target as phonyFlorian Fischer2025-06-081-1/+1
|
* fix the line number detection with tabsFlorian Fischer2025-06-083-3/+48
| | | | | If a line includes tabs add the visually added space for each tab stop to the line length in order to detect a wrapped line.
* Merge branch 'merge-event-subscriptions' into 'main'Florian Fischer2025-05-161-15/+18
|\ | | | | | | | | Coalesce some event subscriptions See merge request muhq/vis-lspc!60
| * Coalesce some event subscriptionsMichiel van den Heuvel2025-05-151-15/+18
|/
* Merge branch 'sel_to_pos_v2' into 'main'Florian Fischer2025-05-152-42/+97
|\ | | | | | | | | | | | | Change vis_sel_to_pos to vis internals or to count lines itself Closes #38 See merge request muhq/vis-lspc!58