Commit graph

63 commits

Author SHA1 Message Date
Ben Jackson
bd09206caf While debugging, use the correct path for breakpoints 2020-09-27 22:47:22 +01:00
Ben Jackson
778745b5c2 Add a test for ruby 2020-09-11 15:43:53 +01:00
Ben Jackson
3a79ce9ab7 Add a bash test script 2020-09-04 00:31:34 +01:00
Ben Jackson
2710ee2bfa When the start parameter is missing, the behabiour is arbitary
It seems that the behaviour of the start parameter being missing is
server (or perhaps a specific client) dependent. The specification
clearely says that it should be inserted at the column of the original
request, but the servers clearly expect either for that column to be the
beginning of an identifier or for the client to ignore the spec and
request from that position anyway.

Reading the VSCode code, we see that the 'word' before the cursor is
guessed, and if only if BOTH 'start' AND 'length' are supplied, then
they are used to determine where insertion starts, otherwise the current
'word' is used. Unclear what 'word' means in the specific contexts, but
we're relying on iskeyword.
2020-09-04 00:29:39 +01:00
Ben Jackson
3aa949431e Upgrade chrome debugger to 4.12.10 2020-09-03 22:11:57 +01:00
Ben Jackson
c1b544fb3c Allow customisation of the signs
Too many plugins use the default priority of 10 so they race/chase.
Allow uses to configure the priorities and make sure that the defaults
are documented.
2020-09-01 13:56:12 +01:00
Ben Jackson
213a02dcbe Remove junk website stuff 2020-08-15 16:41:48 +01:00
Ben Jackson
ca63c08d6a Add a way to force a str in case #json is really required in a key 2020-08-05 22:24:35 +01:00
Ben Jackson
be44a22903 Allow coercing a type in vimspector config
Initially I considered using #i, #s, etc. to coerce to specific types,
but then it wasn't clear of the semantics (particularly for bool, where
JSON bool true/false, Python bool True/False).

But it turns out that we can just coerce any key from a JSON string.
Users can _probably_ type JSON strings for most things, or use variables
to run scripts to generate them, this allows essentially complete
flexibility to define the data types needed to populate the launch spec.

The purpose of this is to allow some level of automated setup by
requesting data from the user and then (subsequently) saving the
flattneed config to the vimspector config file.
2020-08-05 22:19:38 +01:00
Ben Jackson
aa26d4bc1a Add ability to specify defaults for variables 2020-07-31 22:19:10 +01:00
raochsinai
917b737486 Custom text of Winbar buttons. 2020-07-25 16:12:27 +08:00
Ben Jackson
79a8ad40a4 Use my fork of vint; fix some lint 2020-07-16 08:33:49 +01:00
Ben Jackson
db344148ea Example of setting terminal window size sensibly 2020-07-16 08:33:49 +01:00
Ben Jackson
ebc0b3607a Neovim sigh 2020-07-16 08:33:49 +01:00
Ben Jackson
2c5937c2c1 Support basic UI customisation via a User autocommand 2020-07-16 08:33:49 +01:00
Ben Jackson
b3c86bc757 Use the original java test code 2020-07-16 08:04:03 +01:00
Ben Jackson
bdca96f663 Fix up java test 2020-07-11 14:06:32 +01:00
Ben Jackson
402071065f Update tclpro; add a test 2020-07-08 13:19:14 +01:00
Ben Jackson
0e56146726 Add installer support for CodeLLDB 2020-07-06 11:24:54 +01:00
Ben Jackson
7848629a1c Add simple rust program tested with CodeLLDB 2020-07-06 10:38:53 +01:00
Ben Jackson
6f3884253c Windows support for cpptools 2020-06-27 17:28:05 +01:00
Ben Jackson
7f625fee9f Upgrade debugpy 2020-06-08 19:58:52 +01:00
Ray Xu
d6a6184421 set GO111MODULE to off and the debug wont fail in go 1.11+ 2020-06-04 16:39:36 +10:00
Ben Jackson
c6d6c7f876 Support "multi-session" mode properly
Document remote debugging and add a test
2020-05-17 14:07:56 +01:00
Ben Jackson
dc3deadb26 Use java 11 2020-05-16 22:55:01 +01:00
Ben Jackson
0452329203 Update java debugger plugin 2020-05-13 17:18:57 +01:00
Ben Jackson
ccf427a7c8 Update java instructions now YCM has nice API for it 2020-05-07 22:28:31 +01:00
Ben Jackson
5cb9c62e7f Fix tab creation when current buffer contains no file 2020-03-28 13:07:00 +00:00
Ben Jackson
d42fd51f35 Support c-style comments in JSON
Debate rages about whether JSON should have comments. The specification
says it shouldn't but the author of JSON suggested that if you want to
use JSON for configuration, then pipe it through jsmin before parsing.

So that's what we do, using a tiny JSON minifier from
https://github.com/getify/JSON.minify/tree/python

Closes #135
2020-03-21 15:16:07 +00:00
Ben Jackson
de04598bc6 Clear exception breakpoints when calling ClearBreakpoints 2020-03-09 21:31:14 +00:00
Ben Jackson
1b7402915c Catch adapter being None and print user-friendly message: 2020-03-08 18:18:29 +00:00
Ben Jackson
68a45b5771 Fix workspace root when no vimspector conf - use dir of current file 2020-02-16 20:01:00 +00:00
Ben Jackson
a56bee7b0a Switch to debugpy over vscode-python
This is just better in every way, and the vscode-python typescript
adapter is being phased out.
2020-02-08 21:15:27 +00:00
Ben Jackson
6bcc58a39b Document how to use debugpy directly instead of vscode-python 2020-02-01 00:09:02 +00:00
Ben Jackson
018ae05de8 Add 'example' allowing simple command-line attachment 2020-01-31 16:11:36 +00:00
Ben Jackson
287286cadb Add way to install a different java debugger, though it doens't work well 2020-01-21 22:25:11 +00:00
Ben Jackson
7d046574cb Add tests for toggling breakpoint and inserting line 2019-12-14 18:03:34 +00:00
Ben Jackson
bed68aa691 Fix up the site 2019-11-06 15:53:03 +00:00
Ben Jackson
6ad172aef7 Demo of python attach 2019-10-26 13:10:44 +01:00
Ben Jackson
63f8543d8f The chrome debugger doesn't return 'line' in some stack frames. Fix a bug for expensive scopes 2019-10-06 22:19:19 +01:00
Ben Jackson
52b0ee9d49 chrome debugger 2019-10-06 22:19:19 +01:00
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