6 use Data::Dump qw(dump);
11 use Printer::EVOLIS::Parallel;
13 my $port = '/dev/usb/lp0';
21 warn "# port $port debug $debug\n";
23 my $parallel = Printer::EVOLIS::Parallel->new( $port );
24 $Printer::EVOLIS::Parallel::debug = $debug;
25 sub cmd { $parallel->command( "\e$_[0]\r" ) }
27 my $term = Term::ReadLine->new('EVOLIS');
28 my $OUT = $term->OUT || \*STDOUT;
36 open(my $fh, '<', 'docs/commands.txt');
38 warn "# help for ", $#help + 1, " comands, grep with /search_string\n";
41 print $OUT "Printer model ", cmd('Rtp'),"\n";
42 print $OUT "Printer s/no ", cmd('Rsn'),"\n";
43 print $OUT "Kit head no ", cmd('Rkn'),"\n";
44 print $OUT "Firmware ", cmd('Rfv'),"\n";
45 print $OUT "Mac address ", cmd('Rmac'),"\n";
46 print $OUT "IP address ", cmd('Rip'),"\n";
48 while ( defined ( $_ = $term->readline('command> ')) ) {
52 print $OUT $_ foreach grep { m{$1}i } @help;
58 my $response = $parallel->command( $send );
60 $term->addhistory($_) if $response;
62 print $OUT "<answer ",dump($response),"\n";