e597fee2e5
feat(lsp): rename_symbol: decode and normalize file uri
2025-01-16 22:22:34 +01:00
Travis Staloch
bfdeffc70f
lsp-rename: minor cosmetic cleanups
2025-01-16 22:04:38 +01:00
Travis Staloch
1c37de6c29
feat(lsp): buffer renames in order to send a single, atomic message
2025-01-16 22:04:38 +01:00
Travis Staloch
1fd4455adb
feat(lsp): initial support for textDocument/rename
...
flow keybinds: changes f2 from toggle_input_mode to rename_symbol and
moves toggle_input_mode command to ctrl+shift+f2 (since ctrl+f2 is
already bound to insert_command_name)
the replacement text is hard coded for now. i've checked that replace
works with zls and pylsp which send WorkspaceEdit response messages in
different shapes - zls sends shape `{"changes": {}}` while pylsp sends
`{"documentChanges": []}`.
currently the 'rename_symbol_item' commands are sent one at a time.
however they should be buffered and be performed between one
buf_for_update, update_buf pair. this will be addressed in a follow up.
2025-01-16 22:04:35 +01:00
286316b494
feat: process completion response messages and send results to editor
2024-12-18 21:57:04 +01:00
502710cadb
fix: disable markdown in LSP responses
...
Until we have a markdown renderer...
2024-12-18 21:46:36 +01:00
d83d3a62bb
refactor: improve error codes return from LSP client
2024-12-12 16:55:23 +01:00
26694e9b08
feat: support LSPs that use string IDs
2024-11-14 15:38:43 +01:00
d60ad49f84
feat: improve did_change performance with an arena
2024-10-29 21:30:19 +01:00
d05fbcae37
feat: add more tracy zones to project_manager.did_change
2024-10-29 20:58:22 +01:00
3b4c81c706
feat: add open_previous_file command
...
closes #56
2024-10-24 18:27:30 +02:00
2c3e8179dc
fix: don't claim to support inlayHint and codeLens refresh in lsp init
...
This avoids noise when running rust-analyser.
2024-10-14 17:57:19 +02:00
dc25a0ea14
refactor: improve handling and reporting of project manager and lsp errors
2024-10-14 17:56:39 +02:00
593b202b16
feat: add support for CRLF EOL mode
2024-09-25 20:06:06 +02:00
ee7fb21cee
fix: add missing error set
2024-09-19 22:03:27 +02:00
0542fdc680
refactor: use explicit error sets in MessageFilter and project_manager
2024-09-19 21:54:18 +02:00
97501c4ec7
feat: hightlight returned range in LSP hover responses
2024-09-10 21:47:13 +02:00
d5494c492b
feat: reset info view content on empty hover response
2024-09-10 21:21:33 +02:00
c894ae6dea
feat: add support for LSP hover requests
2024-09-10 20:22:31 +02:00
2060588a28
feat: respond to client/registerCapability requests with a null result
2024-09-05 22:15:07 +02:00
7b812d73ea
refactor: change a -> allocator
2024-09-02 14:31:49 +02:00
267ccdd069
fix: do not restore project MRU history for files that don't exist
2024-08-30 22:03:18 +02:00
c01576412a
refactor: prefer orelse to if(pred) |x| x else y
2024-08-29 13:13:45 +02:00
32f00daf76
fix: disable some LSP requests that we don't actually support
2024-08-27 19:18:20 +02:00
282d673026
feat: display location list if LSP goto requests return multiple results
...
Also, refactor LSP goto commands to use a shared implementation.
2024-08-25 15:20:10 +02:00
xdBronch
9e59e808ba
add more goto commands
2024-08-25 15:03:23 +02:00
bd27db46d1
feat: open most recent file on project switch
2024-08-19 22:44:57 +02:00
231e4ccb88
feat: add open_recent_project and change_project commands
2024-08-19 20:35:05 +02:00
ea31e414ee
refactor: clean-up command naming
2024-08-18 17:59:28 +02:00
4127cf8bcf
feat: show diagnostics in the file list view if they refer to another file
2024-08-18 16:21:38 +02:00
f10559c635
feat: add details to find references results file list view
2024-08-17 23:26:46 +02:00
78489e31f6
feat: add find all references LSP command
2024-08-16 00:02:42 +02:00
2b90fe66e8
fix(windows): translate LSP paths back to standard windows paths
2024-08-08 23:07:36 +02:00
5eeeb837ad
fix(windows): remove leading slash from LSP URIs on windows
2024-08-08 22:26:37 +02:00
cbe785b967
fix(windows): use os native path separator when encoding LSP URIs
2024-08-08 22:25:39 +02:00
9d9d9388b9
feat(open_recent): always size open recent file list to longest known file path
2024-08-08 21:37:16 +02:00
4b694d4f0f
fix(windows): use std.fs.path.isAbsolute in Project.make_URI
2024-07-09 19:26:18 +02:00
f9bbc7f582
feat(LSP): add some logging of LSP start/stop
2024-07-08 22:41:34 +02:00
4e5fbf479d
fix(LSP): don't append absolute paths to project director in Project.make_URI
2024-07-08 21:53:18 +02:00
6d44081fa2
feat: add fallbacks for LSPs that send incomplete diagnostics
...
Yes, I'm lookin at you super...
2024-07-06 00:13:48 +02:00
1b6d4b350e
fix(windows): unbreak recent files fuzzy find on windows
2024-06-27 20:15:24 +02:00
049fc3874a
feat: fix match highlighting in simple_query_recent_files
2024-06-27 18:59:08 +02:00
032982c1e8
refactor: rework error handling to simplifiy command implementation and provide better back traces
2024-06-26 23:29:39 +02:00
830000579b
feat(lsp): add initial support for LSP completion requests
2024-06-25 21:12:29 +02:00
6ece4c14b5
fix: language server did_change diff calculation
2024-05-08 23:56:00 +02:00
ef57339258
feat: add support for language server window/showMessage notifications
2024-04-20 23:47:34 +02:00
e41c2d34f7
feat: render diagnostics (part 1)
2024-04-17 23:26:19 +02:00
cc607089df
feat: process textDocument/publishDiagnostics notifications from language server
2024-04-16 23:22:47 +02:00
07571ef363
refactor: load persisted projects before file system scan
...
This should improve usability for very large projects.
2024-04-15 23:07:03 +02:00
9eb6dd3be4
fix: send sigterm to languages servers on exit
...
Not all language servers willingly exit if we just close stdin. Eventually
we will follow the protocol's shutdown process, but for now we just send a
sigterm.
2024-04-15 21:15:26 +02:00