Commit graph

137 commits

Author SHA1 Message Date
Ben Jackson
d2ed8a828c Use popup_filter_menu for the keyboard-popup rather than 100% our own 2021-02-21 17:01:41 +00:00
Ben Jackson
fccafd6739 FixUp: border characters - indicate that the corner can be dragged 2021-02-21 17:01:41 +00:00
Ben Jackson
64f2c8eb01 Use a fancy single line border in vim popup when we can 2021-02-21 17:01:41 +00:00
Ben Jackson
cb174c176d Disable wrapping long lines in neovim popup too 2021-02-21 17:01:41 +00:00
Ben Jackson
2d082cc923 Use a more generous maximum size for the popup (TODO: option for this ?) 2021-02-21 17:01:41 +00:00
dsych
0d703779dc evaluating select range 2021-02-21 17:01:41 +00:00
Ben Jackson
cfae062da1 Disable cursorLine for the hover-only popup 2021-02-21 17:01:41 +00:00
Ben Jackson
0895c5e829 Add 1 cell of padding to the x direction which makes the popup more readable 2021-02-21 17:01:41 +00:00
Ben Jackson
052d63dee5 Fix mouse interraction with the popup - don't handle events outside the window 2021-02-21 17:01:41 +00:00
dsych
93568ba05d removing test code 2021-02-21 17:01:41 +00:00
dsych
3c857cebf4 dynamically adjusting window size for nvim's floating window based on the buffer size 2021-02-21 17:01:41 +00:00
dsych
cb441be7bc allowing resizing and dragging with a mouse 2021-02-21 17:01:41 +00:00
dsych
04a5e889f9 making sure that float window is not modifiable inside nvim 2021-02-21 17:01:41 +00:00
dsych
b95ae00054 enabling a close button for popup 2021-02-21 17:01:41 +00:00
dsych
4617250f41 adding border to popup 2021-02-21 17:01:41 +00:00
dsych
0ced5eb1d4 splitting mouse and cursor filtering to avoid trapping keyboard for hover 2021-02-21 17:01:41 +00:00
dsych
747ad9b804 removing literal dictionary syntax, as it is not included in nvim-4.4 2021-02-21 17:01:41 +00:00
dsych
d2990d7bae making sure to open popup relative to cursor 2021-02-21 17:01:41 +00:00
dsych
819d6366ac fully implemented the hover function for vim 2021-02-21 17:01:38 +00:00
dsych
4e994968ff added popup support for vim, still need to figure out how to expand variables 2021-02-21 17:00:47 +00:00
dsych
7432be9532 implemented dynamic float windows for nvim 2021-02-21 17:00:47 +00:00
dsych
07858cc250 adding on the fly eval of inside a floating window 2021-02-21 17:00:47 +00:00
dsych
4c0ba92ac6 working on variables view 2021-02-21 17:00:47 +00:00
dsych
7c4eef9096 finally got float window working with variable evaluation 2021-02-21 17:00:47 +00:00
Ben Jackson
4206d0e57c Use 127.0.0.1 rather than localhost to avoid issues with ipv6, and long timeout connecting the socket 2021-01-08 15:54:49 +00:00
Ben Jackson
8e2d352eb8 Fix local adapter specs
Somehow we lost the ability to define adapters in the local
.vimspector.json, I think when GetConfigurations was added.

Put that feature back.
2020-11-30 10:19:02 +00:00
Ben Jackson
c769e8a479 Fix up the tests to work in linux container too 2020-11-22 14:13:14 +00:00
Ben Jackson
53b1d12447 Allow setting the current thread, use a sign to highlight the line with the current thread 2020-11-22 14:13:14 +00:00
Ben Jackson
f0785c11f2 Allow pausing individual threads (in theory) 2020-11-22 14:13:14 +00:00
Emmanuel Thompson
d5b9411256 Add a GetConfigurations function 2020-11-06 12:05:14 -05:00
Ben Jackson
80985148e7 Add "run to cursor" support
We add a 'temporary' option to line breakpionts and try and clear any
temporary breakpionts on the line we end up stopping on. This might not
be art, but _probably_ works in almost all cases that matter.

it's a bit hacky the way we have to push the reason around, but we don't
know where we stopped until we actually get the stack trace response and
SetCurrentFrame

Move temporary breakpionts to match server response

Also delete any existing ones when adding a new one and add tests for
run-to-cursor.

Only continue after we successfully set the breakpoints. This makes it
work in go
2020-10-23 22:53:04 +01:00
Ben Jackson
0d112d70a0 Add SetLineBreakpoint and ClaerLineBreakpoint APIs
These are useful for running tests (i.e. ensure there's a breakpiont at
the start of the test) and/or other programmatic usages.

They will also be needed for setting temporary breakpionts.
2020-10-17 22:40:08 +01:00
Ben Jackson
1b9763a4fc Minor improvements to console usage
Display failures and stop adding random text which makes the (very
useful) CodeLLDB interface look messy
2020-10-10 16:20:55 +01:00
Ben Jackson
4e5011fe1b Make command line completion work too 2020-09-04 01:18:59 +01:00
Ben Jackson
45f0b68d87 Remove slow debugging code 2020-09-04 00:52:36 +01:00
Ben Jackson
1ace7b648e FixUp: vint 2020-09-04 00:49:37 +01:00
Ben Jackson
0867edd81c FixUp: Correct return values from omnifunc 2020-09-04 00:37:39 +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
97bdb0d0cc Show launch failure reason in the splash 2020-09-03 22:09:22 +01:00
Ben Jackson
733843a6d4 Support completion for console and watches.
Add omnifunc for prompt buffers

This synchronous completion can be used with any completion system
including built-in CTRL-X CTRL-O.

The filetype of the prompt buffers is set to VimspectorPrompt so that it
can be identified by completion systems. For example, this works well
with YCM:

let g:ycm_semantic_triggers =  {
  \   'VimspectorPrompt': [ '.', '->', ':', '<' ]
  \ }
2020-09-03 17:48:46 +01:00
Ben Jackson
51cc6c4d3a Add VimspectorToggleLog 2020-08-28 14:32:17 +01:00
Ben Jackson
d86b42bf5b Allow VimspectorShowOutput with no argument 2020-07-31 22:19:10 +01:00
Ben Jackson
8f5b928e4b Allow a statically configured list of gadgets
Useful for storing config in source control
2020-07-23 16:37:03 +01:00
Ben Jackson
29cb5c914b Add bang versions of install commands to leave the output open 2020-07-22 22:18:19 +01:00
Ben Jackson
26d7e95adc Fix windows installer issues - use symlinks not junctions and fix dumb use of PIPE with check_call 2020-07-22 19:27:42 +01:00
Ben Jackson
000f7a9232 Prettify the output with some syntax and quiet option 2020-07-22 14:40:23 +01:00
Ben Jackson
4144631d03 Add :VimspectorUpdate 2020-07-22 12:50:44 +01:00
Ben Jackson
98bef3db03 Fix - don't switch windows/buffers to create a new hidden buffer 2020-07-22 10:54:06 +01:00
Ben Jackson
cd5ca37ce1 Neovim support 2020-07-22 10:52:48 +01:00
Ben Jackson
05bbafd60c Close the intaller output when complete 2020-07-22 10:52:48 +01:00