How can I identify and handle control characters and arrow keys in Perl?
-
20-09-2019 - |
Question
I want to implement the command line features like in a linux terminal. I saw this in ftp command also.
- If I press tab I need to list the commands.
- If I press control characters I need to get that characters based on that I will do some action.
- And if I give any commands it should execute.
For this I tried with Term::ReadKey that is in non-canonical mode. But here I am facing more problems like if I press any control character or arrow I got three characters. For the up arrow I got ASCII 27 91 65.
Can anyone help me out of this problem?
Solution 3
I got one Perl module to solve my requirement fully. that is Term::ShellUI.
Thanks for all your inputs.
And If you have any other solution is always welcome.
OTHER TIPS
Unfortunately, the generic Term::ReadLine interface doesn't include customizable completion features. You have to pick a particular readline implementation for that.
Term::ReadLine::Gnu, Term::ReadLine::Perl, and Term::ReadLine::Zoid are all capable of performing custom completion. Term::ReadLine::Gnu is probably the best documented. Term::ReadLine::Perl is virtually undocumented, and I have no experience with Term::ReadLine::Zoid.
I think you'd be best served by Term::Readline.