2012-11-03 50 views
3

perl调试器总是说:“编辑器支持可用”,相信每个人都可以看到这个,但是怎么用呢?如何使用perl调试器*支持的*编辑器?

my-computer$perl -de2 

Loading DB routines from perl5db.pl version 1.33 
Editor support available. 

Enter h or `h h' for help, or `man perldebug' for more help. 

main::(-e:1): 2 
    DB<1> 

顺便说一下,我在Linux/Ubuntu natty机器上得到了上述提示。

回答

6

该消息有点令人困惑。它告诉你它可以支持在编辑器内运行的,而不是有一个特殊的Perl调试器编辑器。

Perl调试器可以检测它是否正在与终端通话或是否在编辑器中运行。这可以控制许多事情,其中​​最重要的是调试器是否打印任何内容或将其留给编辑器来处理显示。如果您真的好奇,请通过the debugger code查看$slave_editor

为什么感觉需要通知用户这个...我做了一点挖掘和调试器used to only support emacs debugging。它比通知用户“Emacs支持可用”更有用一些某些编辑器某处将与调试器一起工作。 emacs消息来自with the first version of the debugger sprung fully formed from the head of Ilya

Perl调试器实际上也是三个实体。 perl5db.pl脚本,DB API,以及这两种语言本身的调试挂钩。编辑者可以使用perl5db.pl,或者可以直接使用数据库进行对话。

有几个编辑器可以挂钩Perl调试器。一个是emacs,您可以通过打开Perl程序并使用M-x perldb开始。 KomodoPadre也有调试器的支持。

+0

VimDebug项目中也有vim支持:https://github.com/kablamo/VimDebug – yko