Skip to content

Commit 58ef86f

Browse files
committed
Pin/Unpin ObjectId, error message stackcall processed correctly
1 parent 7375291 commit 58ef86f

File tree

4 files changed

+814
-697
lines changed

4 files changed

+814
-697
lines changed

README.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ Use <kbd>C-c C-d r</kbd> to remove breakpoint.
241241
Once first breakpoint is added to the project, buffer named `* Breakpoints *` is created. This buffer displays all existing breakpoints in a project. Pressing <kbd>D</kbd> on breakpoint line deletes the breakpoint. Pressing <kbd>RET</kbd> on breakpoint line shows GDScript file with that breakpoint in other buffer.
242242

243243
When any breakpoint exists, running project will automatically start debugger server (if one isn't already running) and connect to it.
244-
Debugger server runs on `localhost` with port specified by `gdscript-debug-port` customizable variable (`9010` by default).
244+
Debugger server runs on `localhost` with port specified by `gdscript-debug-port` customizable variable (`6010` by default).
245245

246246
Once breakpoint is hit in your code, Emacs will show two special buffers with information related to a position of the breakpoint:
247247

@@ -267,7 +267,8 @@ On breakpoint hit Debug Hydra will be displayed below `* Stack frame vars *` and
267267
### Debug Hydra
268268

269269
```
270-
n next c continue m step b breakpoints s stack v vars i inspector t scene-tree d details q quit
270+
n next c continue m step b breakpoints s stack v vars i inspector t scene-tree d details
271+
o pin u unpin q quit
271272
```
272273

273274
- <kbd>n</kbd> - Jump to next line and stops there
@@ -277,19 +278,23 @@ n next c continue m step b breakpoints s stack v vars i inspector t scene
277278
- <kbd>v</kbd> - Show `* Stack frame vars *` buffer
278279
- <kbd>i</kbd> - Show `* Inspector *` buffer
279280
- <kbd>t</kbd> - Show `* Scene tree *` buffer
280-
- <kbd>d</kbd> - Fetch details for all `ObjectId`s present in `* Stack frame vars *` and `* Inspector *` buffers and redisplay them.
281+
- <kbd>d</kbd> - Fetch details for all `ObjectId`s present in `* Stack frame vars *` and `* Inspector *` buffers and redisplay them
282+
- <kbd>o</kbd> - Pin current `self` `ObjectId` in `* Inspector *` buffer. It stays displayed until it cease to exists or until it get unpinned
283+
- <kbd>u</kbd> - Unpin currently pinned `ObjectId`
281284
- <kbd>q</kbd> - Close Debug Hydra
282285

283286
### `* Stack frame vars *` buffer
284287

285288
Main source of information about running program. Contains information about locals/members/globals variables.
286289

287290
- Press <kbd>TAB</kbd> to toggling oneline/multiline display for selected types
288-
- Press <kbd>RET</kbd> on `ObjectId` line to display its details
291+
- Press <kbd>RET</kbd> on `ObjectId` line to display its details in `* Inspector *`buffer
289292
- Press <kbd>l</kbd> to display `* Stack dump *` buffer
290293
- Press <kbd>d</kbd> to display additional details for `ObjectId` variables
291294
- Press <kbd>p</kbd> to go to previous line
292295
- Press <kbd>n</kbd> to go to next line
296+
- Press <kbd>o</kbd> to pin current `ObjectId` in `* Inspector *` buffer
297+
- Press <kbd>u</kbd> to unpin currently pinned `ObjectId`
293298
- Press <kbd>q</kbd> to close the buffer
294299

295300
### `* Inspector *` buffer
@@ -303,6 +308,8 @@ Contains information about inspected object. By default `self` variable from `*
303308
- Press <kbd>d</kbd> to display additional details for `ObjectId` variables
304309
- Press <kbd>p</kbd> to go to previous line
305310
- Press <kbd>n</kbd> to go to next line
311+
- Press <kbd>o</kbd> to pin current `ObjectId` in `* Inspector *` buffer
312+
- Press <kbd>u</kbd> to unpin currently pinned `ObjectId`
306313
- Press <kbd>q</kbd> to close the buffer
307314

308315
### `* Stack dump *` buffer
@@ -325,3 +332,12 @@ Contains list of all existing breakpoints.
325332
- Press <kbd>TAB</kbd> to display `* Stack dump *` buffer
326333
- Press <kbd>D</kbd> to delete the breakpoint
327334
- Press <kbd>q</kbd> to close the buffer
335+
336+
### `* Scene tree *` buffer
337+
338+
Contains tree visualisation of all `ObjectId`s in the running program.
339+
340+
- Press <kbd>RET</kbd> to open corresponding `ObjectId` in `* Inspector *` buffer
341+
- Press <kbd>p</kbd> to go to previous line
342+
- Press <kbd>n</kbd> to go to next line
343+
- Press <kbd>q</kbd> to close the buffer

gdscript-comint.el

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
(require 'comint)
3838
(require 'compile)
3939
(require 'gdscript-customization)
40+
(require 'gdscript-debug)
4041
(require 'gdscript-format)
4142
(require 'gdscript-utils)
4243

@@ -47,6 +48,7 @@
4748
comint-mode-map))
4849
(define-key map (kbd "C-a") 'comint-bol)
4950
(define-key map (kbd "C-c r") 'gdscript-hydra-show)
51+
(define-key map (kbd "C-c n") 'gdscript-debug-hydra)
5052
map)
5153
"Basic mode map for `godot-mode'.")
5254

0 commit comments

Comments
 (0)