Keyboard replacement with stack trace

Display a stack trace showing where keyboard was used

您现在正在关注此提交

The 'keyboard' command is great for debugging, but if you have multiple instances of keyboard, it is very difficult to tell which one is being called. This complicates debugging somewhat.

kdb() is a drop-in replacement for keyboard, and it shows a stack trace, preview of the next line to be executed, and a hyperlink to that line of code. For example, if foo() calls bar() calls baz() and we have a 'keyboard' command in baz(), the user sees

>> foo
K>>

whereas with kdb() the user sees

>> foo

baz:2 << bar:2 << foo:3
3 y = x+2;
K>>

The '3' is a hyperlink to line 3 of baz.m, and depending on settings the Matlab editor may automatically open to the appropriate kdb() statement. The only caveat is that unlike keyboard, kdb() cannot be the last statement in the function.

引用格式

Romesh (2026). Keyboard replacement with stack trace (https://ww2.mathworks.cn/matlabcentral/fileexchange/40415-keyboard-replacement-with-stack-trace), MATLAB Central File Exchange. 检索时间: .

一般信息

MATLAB 版本兼容性

  • 兼容任何版本

平台兼容性

  • Windows
  • macOS
  • Linux
版本 已发布 发行说明 Action
1.1.0.0

Updated with suggestions from Per Isakson to support packages

1.0.0.0