Como posso identificar e lidar com caracteres de controle e teclas de seta no Perl?
-
20-09-2019 - |
Pergunta
Quero implementar os recursos da linha de comando, como em um terminal Linux. Eu vi isso no comando FTP também.
- Se eu pressionar a guia, preciso listar os comandos.
- Se eu pressionar os caracteres de controle, preciso obter esses caracteres com base, farei alguma ação.
- E se eu der algum comandos, ele deve executar.
Para isso eu tentei com Termo :: ReadKey Isso está no modo não canônico. Mas aqui estou enfrentando mais problemas, como se eu pressionar algum personagem ou flecha de controle, tenho três caracteres. Para a seta para cima, obtive ASCII 27 91 65.
Alguém pode me ajudar a sair desse problema?
Solução 3
Eu tenho um módulo Perl para resolver meus requisitos completamente. isso é Termo :: Shellui.
Obrigado por todas as suas entradas.
E se você tiver outra solução, é sempre bem -vindo.
Outras dicas
Infelizmente, o genérico Termo :: readline A interface não inclui recursos de conclusão personalizáveis. Você precisa escolher uma implementação específica da ReadLine para isso.
Termo :: readline :: gnu, Termo :: readline :: perl, e Termo :: readline :: zoid são todos capazes de realizar a conclusão personalizada. Termo :: readline :: gnu é provavelmente o melhor documentado. Termo :: readLine :: Perl está praticamente sem documentos, e não tenho experiência com termo :: readline :: zoid.
Eu acho que você seria melhor servido por Termo :: readline.