Установить точку останова из файла инициализации .perldb - PullRequest
2 голосов
/ 03 мая 2020

Я экспериментирую с файлом .perldb r c и пытаюсь установить точку останова. Вот небольшой пример сценария, который я использую для тестирования ( p.pl ):

use feature qw(say);
use strict;
use warnings;

say "Line 5";
say "Line 6";
say "Line 7";

Затем я создал следующий файл .perldb в текущем каталоге:

parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, "b 7" }

(обратите внимание, что этот файл не должен иметь разрешения на запись кем-либо, кроме вас (то есть: chmod 644 .perldb), иначе отладчик не загрузит его). Затем я запускаю скрипт под отладчиком:

$ perl -d p.pl
Line 5
Line 6
Line 7

Как видно, точка останова в строке 7 не соблюдается. В чем здесь проблема?

1 Ответ

2 голосов
/ 03 мая 2020

Изменение ".perldb-File" на

#parse_options("NonStop=1");
sub afterinit { push @DB::typeahead, ("b 7", "c") }

должно сделать эту работу.

$ perl -d t.pl

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

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

main::(t.pl:5): say "Line 5";
auto(-2)  DB<1> b 7
auto(-1)  DB<2> c
Line 5
Line 6
main::(t.pl:7): say "Line 7";

DB<2> l
7==>b   say "Line 7";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...