как запустить отладчик Perl как простой STDIN/STDOUT REPL без манипуляций со строкой чтения/декораций/tty и т. д.?
Я хотел бы сделать что-то в bash, например:
coproc myPerlDebuggerServer { perl -d -e 42; }
затем поговорите с этим сопроцессом через функции оболочки, чтобы получить мой собственный интерактивный интерфейс для отладчика.
Конечно, это не работает, потому чтоperl -d -e 42
использует декорации/readlin/terminal/etc.
Я нашел Devel::REPL, но при его сборке с помощью cpanm произошел сбой, и в любом случае я бы хотел сохранить знакомые команды из perl -d. Мне просто нужно, чтобы он напечатал достаточно отличительное приглашение, чтобы, когда я узнаю, что он закончил отвечать :)
Предложения?
1 ответ
Предложения?
вы можете общаться с perl5db.pl через сокеты, именно так осуществляется интеграция отладчика в IDE. Следовательно, вы можете создать любой интерфейс, который захотите.
См. https://perldoc.perl.org/perl5db.pl#SOCKET-HANDLING .
Также Devel::ptkdb (https://metacpan.org/pod/Devel::ptkdb) пример интерфейса TkGUI с отладчиком.
FWIW: Ваш вопрос довольно размыт, и я думаю, что это проблема XY, но вы об этом просили.