Commit Graph

117 Commits (66276ce630cead06c84394768927fe20490d0638)

Author SHA1 Message Date
Michael Davis 85411bed83 DAP: Make `cwd` required in RunTerminalArguments
The spec has `cwd` in `RunInTerminalRequestArguments` as non-optional:
https://microsoft.github.io/debug-adapter-protocol/specification#Reverse_Requests_RunInTerminal
2022-07-05 12:34:03 +02:00
Michael Davis 44f596334a DAP: Skip serializing `Option`s when `None`
DAP follows the same strict TypeScript interface syntax as LSP
which states:

> The document uses TypeScript interfaces in strict mode to describe
> these. This means for example that a `null` value has to be explicitly
> listed and that a mandatory property must be listed even if a falsify
> value might exist.

So we have to skip serializing any fields that end in `?` instead
of passing `null`.
2022-07-05 12:34:03 +02:00
Gokul Soumya 6e2aaed5c2
Reuse menu::Item trait in picker (#2814)
* Refactor menu::Item to accomodate external state

Will be useful for storing editor state when reused by pickers.

* Add some type aliases for readability

* Reuse menu::Item trait in picker

This opens the way for merging the menu and picker code in the
future, since a picker is essentially a menu + prompt. More
excitingly, this change will also allow aligning items in the
picker, which would be useful (for example) in the command palette
for aligning the descriptions to the left and the keybinds to
the right in two separate columns.

The item formatting of each picker has been kept as is, even though
there is room for improvement now that we can format the data into
columns, since that is better tackled in a separate PR.

* Rename menu::Item::EditorData to Data

* Call and inline filter_text() in sort_text() completion

* Rename diagnostic picker's Item::Data
2022-07-02 13:21:27 +02:00
Blaž Hrastnik 9712bbb23b
Use which to resolve lsp/dap binaries
This resolves the following issue: https://github.com/helix-editor/helix/discussions/962#discussioncomment-1580046
2022-02-24 11:38:40 +09:00
Blaž Hrastnik fd0e4b1159 dap: Reduce amount of block_on uses 2022-02-15 16:30:23 +09:00
Blaž Hrastnik bd549d8a20 Merge remote-tracking branch 'origin/master' into debug 2022-02-13 18:31:51 +09:00
Blaž Hrastnik dc8df7ba21 Make thread_picker non-blocking 2021-12-06 09:35:59 +09:00
Blaž Hrastnik 2b4de41bf0 dap: Reply to RunInTerminal 2021-12-06 09:32:21 +09:00
Blaž Hrastnik 5545f8ebb5 dap: Add RunInTerminal reverse request, support replying to requests 2021-12-03 16:09:28 +09:00
Blaž Hrastnik bcf70d8e67 dap: All of these calls don't need &mut 2021-12-03 13:29:46 +09:00
Blaž Hrastnik 43fbb6d965 Make dap_start non-blocking 2021-12-03 13:27:00 +09:00
Blaž Hrastnik 032aaffa15 dap: Split call/request in the same way LSP does 2021-12-03 12:41:07 +09:00
Blaž Hrastnik 2dbf966293 dap: Start working on runInTerminal support 2021-12-03 11:59:44 +09:00
Blaž Hrastnik 8ffafb826f dap: Rewrite breakpoints so that there's a single set maintained 2021-11-30 17:56:00 +09:00
Blaž Hrastnik 2bd8a9b39d dap: Consistently rename type as ty 2021-11-07 21:18:53 +09:00
Blaž Hrastnik 31b431bfdd dap: Remove Deref for DebuggerCapabilities
Looks like a mistake
2021-11-07 21:17:09 +09:00
Blaž Hrastnik 155c608237 dap: Drop examples 2021-11-07 18:38:27 +09:00
Blaž Hrastnik 9baddc825d dap: Get rid of excessive cloning 2021-11-07 18:38:04 +09:00
Blaž Hrastnik a5ea61433c dap: Bump helix-core 2021-11-07 00:29:43 +09:00
Blaž Hrastnik f2b709a3c3 Merge branch 'master' into debug 2021-11-07 00:28:19 +09:00
Blaž Hrastnik d6e8a44d85 dap: Fix examples 2021-10-17 14:12:03 +09:00
Blaž Hrastnik bda05ec4bf Use a newtype for ThreadId 2021-10-17 14:06:52 +09:00
Blaž Hrastnik 83a8167402 Invert core -> dap dependency 2021-10-17 13:58:11 +09:00
Blaž Hrastnik ea59f77a6b Port over parsing improvements from the LSP
We need to terminate if we ever read 0 bytes which indicates closed
stream.
2021-10-17 13:54:47 +09:00
Dmitry Sharshakov 814dcfa8d2
fix lints 2021-09-26 21:54:36 +03:00
Dmitry Sharshakov d943a51e3e
editor: add Node.js debugger 2021-09-26 21:36:06 +03:00
Dmitry Sharshakov 0e51e5fbaf
editor: support setExceptionBreakpoints 2021-09-26 10:24:58 +03:00
Dmitry Sharshakov 413e477dc2 lldb: use stdio transport by default 2021-09-06 13:49:31 +03:00
Dmitry Sharshakov 507a1f8dd6 Get breakpoint reports from debugger 2021-09-06 08:47:54 +03:00
Dmitry Sharshakov df0ea6674a examples: ensure target stopped by waiting for enter from user 2021-09-04 19:36:36 +03:00
Dmitry Sharshakov cf7237d0b9
compat: make thread IDs signed
Delve needs it
2021-09-03 23:11:06 +03:00
Blaž Hrastnik 7b61c63ece Handle stderr 2021-09-03 13:26:30 +09:00
Blaž Hrastnik b997d2cdeb dap: Allow setting breakpoints before starting the adapter 2021-09-03 13:26:30 +09:00
Blaž Hrastnik 289303a30d dap: small TODO 2021-09-03 11:48:55 +09:00
Blaž Hrastnik 42f9718f55 dap: Extract thread_picker, make pause explicitly select a thread 2021-09-03 11:43:11 +09:00
Blaž Hrastnik 27c1b3f98b dap: Extract a thread_states map 2021-09-03 11:30:25 +09:00
Dmitry Sharshakov 6265e196b7
compat: change lldb to lldb-vscode
This should be preferred ID, although now lldb-vscode works with any
2021-08-30 16:09:41 +03:00
Blaž Hrastnik 2c7b75475f dap: refactor frame handling 2021-08-30 11:07:59 +09:00
Blaž Hrastnik 986828e75c dap: Remap keys, match current thread behavior from dap-mode, switch-thread 2021-08-29 23:32:46 +09:00
Dmitry Sharshakov b42631942b
Defaults in completions, better schema 2021-08-29 14:51:47 +03:00
Dmitry Sharshakov 2d42766a71
wip: refactor parameters in UI start 2021-08-29 10:23:36 +03:00
Dmitry Sharshakov 94901b8677
Customized completion for template parameters 2021-08-28 19:11:19 +03:00
Dmitry Sharshakov b001008a69
Support templates in debug configurations 2021-08-24 20:04:14 +03:00
Dmitry Sharshakov 0e779381a8
Format 2021-08-24 12:01:58 +03:00
Dmitry Sharshakov c463142e5e
Create new debugger config format 2021-08-24 11:56:18 +03:00
Dmitry Sharshakov 34c6094604
refactor 2021-08-24 11:32:44 +03:00
Dmitry Sharshakov 2158366b24
Enable variable types in DAP config
We have this feature
2021-08-24 10:51:52 +03:00
Dmitry Sharshakov fdad7d67aa
Check capabilities for breakpoint config 2021-08-24 10:48:47 +03:00
Dmitry Sharshakov c09b15197b
fix freeze with lldb terminated event 2021-08-23 20:38:17 +03:00
Dmitry Sharshakov b5b79e3656
types: make some fields optional as in spec 2021-08-23 20:22:21 +03:00