Commit graph

22 commits

Author SHA1 Message Date
Ben Jackson
0b0388d075 Simple tests for node debugger 2019-10-06 19:24:48 +01:00
Ben Jackson
b64946e34c Remember user choices
There are 2 things we ask for input for:

- input variables
- exception breakpoints

It's irritating to have to repeat yourself when going through the
edit/debug loop.

Howver, cacheing has some quirks and disadvantages - they key one being
when to clear the cache. To resolve this we take two slightly different
approaches:

1. For input variables, we remember the choice of the user, but present
that only as the default, so they can just hit enter to accept it. We
already rememeber the choices for the length of the debug session (i.e.
across 'restart' calls).

2. For exception breakpoints, we remember the choices for as long as the
current session is running.

This allows users to hit the 'restart' button without being prompted at
all.

Meanwhile, we also remove the (broken) support for exception breakpoint
matchers and state the server default for exception breakpoint filters.
2019-10-05 22:20:33 +01:00
Ben Jackson
dcc2c6c365 Manual python test 2019-08-04 15:20:54 +01:00
Ben Jackson
adfce8d30e First attempt to make vscode-go work 2019-07-31 18:43:46 +01:00
Ben Jackson
a4db7008df Add and document why mono debugger doesn't work 2019-06-23 21:39:27 +01:00
Ben Jackson
a894ae0126 Add minimal test case for csharp 2019-06-22 16:48:29 +01:00
Ben Jackson
e1625ced2f add example vimrc 2019-05-19 20:24:56 +01:00
Ben Jackson
132b284dcd Improve tests 2019-05-16 21:08:18 +01:00
Ben Jackson
a2fac43d29 Move rarely useful script out of the way 2019-05-16 21:05:50 +01:00
Ben Jackson
3ce0185328 Add more code to test app for java 2019-02-12 21:44:00 +00:00
Ben Jackson
6f805db24b Add extra conf for c project 2019-01-05 10:39:05 +00:00
Ben Jackson
5060b0821e Split c test json file. Still doesn't work for some reason 2018-12-20 13:44:37 +00:00
Ben Jackson
14603ae72f Support java debugging
The java architecture is a little different:

- the debugger is a jdt.ls extension bundle.
- to start the server, you send a startDebugSession command to jdt.ls
- this returns a tcl port to connect to for DAP

Loading of jdt.ls and the extension are out of scope for vimspector
currently and instead you can tell it to ask you for a port to connect
to.

After connexting to that port, vimspector works as normal.

To support TCP/IP was pretty simple: we provide the same API from
vimscript as the job-based (stdin/out) comms layer, but instead just
directly use a channel.

The only wrinkle was that the java debug adapter broke the protocol on
runInTerminal and didn't return a 'cwd', so we make one up.
2018-12-20 00:29:45 +00:00
Ben Jackson
800c945b7a remove accidentally created submodules 2018-06-09 22:38:53 +01:00
Ben Jackson
920db068c6 Use a prompt buffer for adding watches
This very new feature makes it kind of nice to add new watches in the
place where they will appear, keeping the eye in the same screen
location.
2018-06-09 22:33:22 +01:00
Ben Jackson
ba0c11392d Fix python debugger again 2018-05-28 22:22:00 +01:00
Ben Jackson
171e1b58d5 Squash some distrating warnings 2018-05-22 23:00:26 +01:00
Ben Jackson
b249b3c9e3 Add missing python test file 2018-05-22 01:26:11 +01:00
Ben Jackson
2c5caf9cf5 Ignore some build output 2018-05-20 21:12:04 +01:00
Ben Jackson
f55dc8cd8e StepOut and Continue 2018-05-20 16:18:40 +01:00
Ben Jackson
8437397491 Actually connect to a real debug server and add some basic debugging
UI is totally placeholder
Step over/step in are the only supported commands
Hardcoded launch config using a specific debug adapter that happened to
work
Adds a trivial log file hack and fixes the protocol handler for bytes
2018-05-20 15:11:58 +01:00
Ben Jackson
cd2ccedcb6 Talk to a job from python
Very very basic inital checkin to show a way to talk to/from a Vim job
using python (mainly), and to parse the sort of messages that LSP and
VSCode debugger protocol speak (i.e. similar to http messages).

Very hacky, sort of holds together for what it is.
2018-05-16 02:31:23 +01:00