ebb7fb399e
fix: support TextEdit responses to completion requests
...
In addition to InsertReplaceEdit responses.
This improves completion with OmniSharp and possibly others.
2025-10-02 14:58:32 +02:00
42b7ae46a0
fix: open competion palette after all completions are received
2025-10-01 21:29:05 +02:00
e6b39c274c
refactor: lots and lots of writergate changes
2025-09-24 22:30:18 +02:00
76600bc6bd
fix: handle completion items with no insert and/or replace coordinates
...
superhtml fix
2025-09-13 20:06:04 +02:00
67b214675f
refactor: log issues in LSP completion item messages
2025-09-13 20:05:28 +02:00
dad954da1a
fix: don't falsely claim to support LSP pull diagnostics
...
closes #285
2025-08-22 22:24:32 +02:00
21bd1e58a8
refactor: output LSP client messages to log
...
Regular message only if lsp_output "verbose".
2025-08-20 21:15:38 +02:00
69ea495495
feat: add config option lsp_output "quiet" to reduce LSP log verbosity
...
Set the option to "verbose" to re-enable logging of LSP show/logMessage requests.
2025-08-20 21:00:24 +02:00
ab0a8f3c2c
feat: show file type icon in open_file completion
2025-08-09 22:20:17 +02:00
ca33259ba4
feat: return file type and icon along with file names from the project manager
2025-08-09 18:06:49 +02:00
67fc1581d3
feat: refresh open_recent palette when the project is done loading the file list
2025-08-05 10:23:53 +02:00
0ce522828d
build: update thespian for new cbor
2025-07-23 12:25:43 +02:00
1e33d128e7
feat: add Project.unsupported_lsp_request() method
2025-07-20 18:42:24 +02:00
5d256413da
refactor: dynamically allocate LSP client handles
2025-07-19 00:05:41 +02:00
50145dd176
feat: update cbor to add support for allocating extraction of arrays
2025-07-14 18:02:22 +02:00
006e1ddb45
fix: remove multithreaded buffer access in project_manager
...
Until we have proper multithreaded buffer lifetime management we should avoid
accessing buffers that may have been deleted already.
2025-06-03 18:14:00 +02:00
8934bf5cd0
feat(completion): forward completion entries to current editor
2025-05-26 22:47:26 +02:00
1eb36696d2
fix: prefer targetSelectionRange over targeRange if both are provided by LSP
...
This prevents rust-analyser sending goto_definition to the very beginning of the
definition, including doc comments and attributes.
closes #261
2025-05-15 11:40:10 +02:00
22b29b15b9
refactor: remove unneeded sort_files_by_mtime() calls in Project
2025-04-22 21:29:05 +02:00
ba5dc35913
feat: load project file list from git if available
...
If the loading project has a git repository we now load the file list from git
instead of scanning the directory tree. This gives us automatic .gitignore
support.
2025-04-22 21:21:09 +02:00
f76085325a
feat: query project files via git (part 1)
2025-04-21 21:43:29 +02:00
4cb84e25b3
refactor: improve Project.zig logging
2025-04-21 21:26:31 +02:00
c3cda5b7fe
build: update thespian to use separate cbor package
2025-03-26 20:41:44 +01:00
6d58ecb324
feat: make LSPs fully async
2025-03-24 22:07:38 +01:00
db0bf4571e
fix: get_mru_position should not hang if file not found in project
2025-02-23 21:54:28 +01:00
30de4ddcc6
fix: row & column in get_mru_position
2025-02-22 22:20:11 +01:00
2a76da6cf6
feat: make mru file position lookup synchronous
2025-02-22 22:12:21 +01:00
5f7b28db5f
refactor: store file positions in project in a struct
2025-02-22 22:11:53 +01:00
910331868e
feat(project): add --no-persist to prevent new project persisting
2025-02-09 21:46:51 +01:00
26e91262ed
feat(tasks): trace project task updates
2025-01-26 21:06:52 +01:00
0f6be55dbd
refactor: improve usefullness of trace-level 1
2025-01-26 17:01:33 +01:00
a1df51a16c
fix(project): don't abort early on project restore_state
...
And add traces for project write_state/restore_state.
2025-01-26 15:32:01 +01:00
2f7bee1bef
feat(task): add project tasks
2025-01-25 20:32:01 +01:00
42bc301426
fix(win32 gui): fix windows build broken by rename_symbol
2025-01-19 14:03:38 +01:00
f659fcf586
feat(lsp): rename_symbol: add checks to file uri decoding
2025-01-16 23:40:10 +01:00
00efee6c02
fix(lsp): rename_symbol: fix error.InvalidMessage on multifile responses
2025-01-16 23:24:48 +01:00
155c1f663d
feat(lsp): rename_symbol: treat out-of-file edits as references
2025-01-16 23:02:52 +01:00
a449e0ec97
feat(lsp): rename_symbol: add cursors at rename points for interactive rename
2025-01-16 22:23:03 +01:00
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