Nicolas Petton
bbf837cea1
Fix github issue #237
* indium-interaction.el: Fix xref call for Emacs 27.1.
4 months ago
Nicolas Petton
aafb117d13
Resolve symlinks when connecting Indium
Fix GitHub issue #204
* indium-interaction.el (indium-connect, indium-launch): Use `file-truename' to
resolve the current directory so that the project root is set to a canonical
directory paph.
1 year ago
Nicolas Petton
128b160d65
Print the result of all evaluations in the echo area
* indium-interaction.el (indium-eval-buffer):
(indium-interaction--eval-node):
(indium-eval-region): Call `indium-interaction--handle-eval-result'.
(indium-interaction--handle-eval-result): Call the new hook.
* indium-interaction.el (indium-interaction-eval-hook): Rename the hook.
2 years ago
Damien Cassou
5ef09dfe96
Make it possible to evaluate an expression in a non-top call frame
Fix github #167 .
* indium-client.el (indium-client-evaluate): Add a FRAME parameter to
specify which context to evaluate an expression in.
* indium-debugger.el (indium-debugger-evaluate): Add an optional FRAME
parameter that is the current frame by default.
* indium-interaction.el (indium-eval): Use the current debugger frame
to evaluate the passed expression.
* indium-repl.el (indium-repl-inspect): (indium-repl-evaluate): Use
the current debugger frame to inspect and evaluate expressions.
* server/README.md: Describe the frameId parameter that the server now
accepts for evaluation.
* server/adapters/cdp/index.js (evaluate): Accept an optional frameId
parameter.
* server/server/runtime.js (evaluate): Accept an optional frameId
parameter.
2 years ago
Nicolas Petton
216635e134
Rewrite Indium to work as a client for the new server
2 years ago
Nicolas Petton
44099acf9b
* indium-interaction.el: Fix linting issues.
2 years ago
Nicolas Petton
841fbe249f
Globally set indium-workspace-configuration
The configuration has to be accessible outside of the context of the connection
to the backend, so set it globally.
2 years ago
Nicolas Petton
587c98ae21
Refactor closing connections when connecting
When opening a connection, make sure that any previous connection is closed
first.
* indium-interaction.el: Handle closing previous connections.
* indium-chrome.el:
* indium-nodejs.el: Do not handle closing connections (this is now always done
in indium-interaction.el).
* test/unit/indium-nodejs-test.el: Remove obsolete test.
* test/unit/indium-interaction-test.el: Add tests.
2 years ago
Nicolas Petton
df813f0f0e
* indium-interaction.el: Add missing declarations
2 years ago
Nicolas Petton
79bd4ec838
Rename inconsistent function
* indium-nodejs.el (indium-launch-nodejs): Rename function.
* indium-interaction.el: Fix reference.
2 years ago
Nicolas Petton
3e7f181dca
New commands to connect Indium
* indium-interaction.el (indium-connect, indium-launch): New commands used for
all backends using the .indium.json project file.
2 years ago
Nicolas Petton
438c1a1da9
Move interaction commands to indium-interaction
2 years ago
Nicolas Petton
2d510f084e
Remove breakpoint management from indium connections
Breakpoints are tracked with `indium-breakpoint--local-breakpoints' so there is
no need to put them in the current connection anymore.
3 years ago
Nicolas Petton
7c74f25fec
Rename some functions in elbank-breakpoint.el
3 years ago
Nicolas Petton
b1abedd99c
Run indium-interaction-update after saving buffers
* indium-interaction.el: Running the hook after saving buffers prevents any
annoying delay in saving buffers.
3 years ago
Nicolas Petton
7272f064da
Add a command to switch back to the debugger
This feature should please @DamienCassou .
* indium-interaction.el (indium-switch-to-debugger): New function, bound in
`indium-interaction-mode' to C-c d.
3 years ago
Nicolas Petton
64156069f9
Update copyright years
3 years ago
James Nguyen
4009e8c43f
Add functionality to toggle breakpoints
3 years ago
Nicolas Petton
2b1ff2742c
* indium-interaction.el: Fix a typo in a docstring
3 years ago
Nicolas Petton
e6baf19b84
Put breakpoints at column 0
* indium-interaction.el: Always move the point to the first column when adding a
breakpoint, to avoid breakpoint resolution by the runtime to be on another
line.
3 years ago
Nicolas Petton
0d3abc941e
New command `indium-eval-region`
* indium-interaction.el (indium-eval-region): New function.
* doc/Indium.texi:
* sphinx-doc/code-evaluation.rst: Add documentation for `indium-eval-region`.
3 years ago
Nicolas Petton
dcfb56bfd4
Make `indium-breakpoint-add' add breakpoints at point
3 years ago
Nicolas Petton
92dc754d97
Remove all breakpoints in a buffer before killing it
3 years ago
Nicolas Petton
e47145aa17
Run `indium-interaction-update` before saving buffers
3 years ago
Nicolas Petton
bc414bdc75
Fix issue #92
Fix `indium-add-conditional-breakpoint` to call `indium-add-breakpoint` with a
condition string.
Also add a regression test.
3 years ago
Torgeir Thoresen
16fa378c8f
Add `indium-interaction-eval-node-hook` to allow for eval hooks, e.g. for overlays
3 years ago
Nicolas Petton
7c38214a83
New command to inspect any expression
Fix #88
* `indium-inspect-expression`, bound to `C-c M-:`, let the user enter an
expression to be evaluated and inspected.
3 years ago
Nicolas Petton
5fd99f4a64
Update breakpoints and script source when a buffer is saved
Fix #85
* When saving a buffer, do the following:
- update the script source
- compile the script
- update all breakpoints in the buffer
* `set-script-source' is now always performed when a buffer is saved,
`indium-update-script-on-save' does not exist anymore.
* Update the documentation.
3 years ago
Nicolas Petton
5b5b6e344a
Improve documentation
3 years ago
Nicolas Petton
5ad6f1961e
Make sure invalid breakpoints are not added/removed
* Do not attempt to add a breakpoint on a line with an existing breakpoint.
* Do not attempt to remove non-existing breakpoints.
3 years ago
Nicolas Petton
dae41c65dc
Refactor breakpoints
* Make breakpoints a CL struct.
* Streamline the communication between the backend and indium-breakpoint.el.
* Add unit tests.
3 years ago
Nicolas Petton
5b96938f34
Make indium-connection a cl-struct
* Refactor all map-* calls to get/set properties of a connection.
* Extract functions to access the current connection.
3 years ago
Nicolas Petton
48525c2bf5
Rename indium-connection to indium-current-connection
3 years ago
Nicolas Petton
74dfcfbcbb
Add support for breakpoints in files with sourcemaps
3 years ago
Damien Cassou
26485240ac
Add "C-c b e" to edit breakpoint condition at point
3 years ago
Nicolas Petton
0324ef0699
Add unit tests for indium-repl.el
3 years ago
TatriX
9c42f01403
Repl improvements ( #56 )
* Improve REPL buffer switching
3 years ago
Nicolas Petton
ab055b09f6
Fix node before point evaluation
Handle loop nodes and empty expression nodes.
Fix #63
3 years ago
Nicolas Petton
07c3d444de
Add a command to list and jump to breakpoints
3 years ago
Nicolas Petton
28d081ef1f
Add support for menus
3 years ago
Nicolas Petton
e2c407d2f0
Remove the dependency to magit-popup
3 years ago
Nicolas Petton
402228ffac
Use a magit-popup for breakpoints actions
3 years ago
Nicolas Petton
3316f78c9d
Remove an autoload ( fix #57 )
Until Indium has proper autoloads, remove the only one present in
indium-interaction.el.
3 years ago
Nicolas Petton
0cf07787a2
Add unit tests for indium-repl.el
3 years ago
TatriX
6d490b0af4
Repl improvements ( #56 )
* Improve REPL buffer switching
3 years ago
Nicolas Petton
cfc0bbbb26
Fix linting warnings
3 years ago
Nicolas Petton
ae771ecba5
Display a message when activating/deactivating breakpoints
3 years ago
Nicolas Petton
ce3f0963fc
Add support for deactivating breakpoints
3 years ago
TatriX
aeca678a05
Add indium-update-script-source-hook ( #46 )
* Add a new hook `indium-update-script-source-hook` to be run after each script update.
* Add documentation for the new hook.
3 years ago
Nicolas Petton
f29f6742ee
Set live JS update to C-c C-k
3 years ago