core icon indicating copy to clipboard operation
core copied to clipboard

[Question] 请问 ide-debug 对应 core 代码库的哪个文件

Open zhuzeyu22 opened this issue 10 months ago • 7 comments

我想修改 debug command,在命令前后做操作,但是注册的时候 不太清楚命令 debug.start 是在什么时候注册的,在其他模块做 commands.afterExecuteCommand 的注册的时候,似乎是失效了,因此想问问看,应该怎么改比较好???

请问 ide-debug 对应 core 代码库的哪个文件,我的想法是通过源码进行替换,但是全替换文件太多了,因此想先看看是怎么实现的,再想想怎么解决。

zhuzeyu22 avatar Apr 09 '24 01:04 zhuzeyu22

可以看一下这里,执行的代码在这里 https://github.com/opensumi/core/blob/a53fac57ec78743997f602682e661ba9594ec99e/packages/debug/src/browser/debug-session-manager.ts#L284

另外也可以考虑注册一个 task 之后通过调试配置的 preLaunchTask 去执行特定操作。

erha19 avatar Apr 09 '24 01:04 erha19

CommandRegistry 有个 beforeExecuteCommand 函数,可以对各种 command 命令做前置处理 image

Ricbet avatar Apr 09 '24 01:04 Ricbet

可以看一下这里,执行的代码在这里

https://github.com/opensumi/core/blob/a53fac57ec78743997f602682e661ba9594ec99e/packages/debug/src/browser/debug-session-manager.ts#L284

另外也可以考虑注册一个 task 之后通过调试配置的 preLaunchTask 去执行特定操作。

因为命令是不能重复注册的,所以我注销之后马上又重新注册了一遍,强行做了命令注册的更新,请问会对其他模块的before after 这类的关联操作有影响吗?

zhuzeyu22 avatar Apr 09 '24 01:04 zhuzeyu22

beforeExecuteCommand 这里我又尝试了下,生效了,很开心

zhuzeyu22 avatar Apr 09 '24 01:04 zhuzeyu22

@zhuzeyu22 感觉你需要这个东西 https://github.com/opensumi/core/pull/3468

erha19 avatar Apr 09 '24 01:04 erha19

@erha19 感觉 debug tools 里面没有调用 DEBUG_COMMANDS.START 里面的命令,命令注册进去了,但是没有调用到

zhuzeyu22 avatar Apr 09 '24 03:04 zhuzeyu22

@erha19 这里遇到个问题 DebugToolbarService 里面 reload 直接调用的是 doRestart 函数对 this.model.restart(); 这里拦截不到。很烦

zhuzeyu22 avatar Apr 09 '24 09:04 zhuzeyu22

此问题已被自动标记为已过时,如果没有进一步的活动,它将被关闭。谢谢您的贡献。 This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Jun 08 '24 09:06 stale[bot]