Como ler em chaves especiais com o Win32 :: Console?

Quando eu pressionar oUp-key, este script (Termo :: TermKey) saídasYou pressed: <Up> .

<code>#!/usr/bin/env perl
use warnings;
use 5.012;
use Term::TermKey;

my $tk = Term::TermKey->new( \*STDIN );
say "Press any key";
$tk->waitkey( my $key );
say "You pressed: <" . $tk->format_key( $key, 0 ) . ">";
</code>

Como eu poderia alcançar o mesmo resultado comWin32 :: Console?
Eu tentei isso, mas funcionou apenas em teclas "normais" comol,k... mas não com chaves comoUp, Delete...

<code>use Win32::Console;

my $in = Win32::Console->new(STD_INPUT_HANDLE);
$in->Mode(ENABLE_PROCESSED_INPUT);
my $result = $in->InputChar(1);
say "<$result>";
</code>

Como eu poderia fazer chaves de trabalho comoUp, Delete... também comWin32::Console?

questionAnswers(1)

yourAnswerToTheQuestion