Emulando Alt códigos ASCII no Linux

2

Eu tenho um Alphasmart Neo, que emula um teclado quando conectado a um computador para enviar arquivos de texto. Basicamente funciona como um digitador muito rápido. Quando ele atinge um caractere acentuado, ele tenta usar as combinações de teclas alt do Windows para inseri-las.

Por exemplo, o caractere é é enviado como Alt + 0 2 3 3 . É claro que isso só envia bobagens no Linux porque ele trata os caracteres especiais de maneira diferente.

Não consigo alterar o modo como os arquivos são enviados do dispositivo.

Eu queria saber se havia uma maneira de emular temporariamente essas teclas Alt do Windows no Linux para que os arquivos fossem enviados corretamente.

    
por Andrea 20.06.2018 / 12:03

2 respostas

0

Portanto, parece haver uma solução alternativa. O console do Linux ( Ctrl + Alt + F1 ) permite que os códigos Alt e enviar um arquivo para lá funcionem.

No entanto, eu esperava emular isso na GUI. Mas parece ser muito difícil fazer isso, a menos que alguma programação de baixo nível esteja habilitada. Não aceitarei esta resposta por algumas horas, caso alguém tenha outra solução.

    
por 20.06.2018 / 12:23
0

Não é exatamente o que você está pedindo, mas é semelhante o suficiente para provavelmente funcionar:

Muitos (mas não todos) frameworks IME (incluindo ibus e fctix) no Linux suportam uma biblioteca chamada m17n para fornecer IMEs. A biblioteca m17n fornece um grupo de IMEs fáceis de usar (incluindo novas aparições de teclado para lidar com vários idiomas). Um deles, chamado simplesmente de "Unicode", faz quase exatamente a mesma coisa que os códigos alternativos. As únicas duas diferenças são:

  • Os códigos Alt dependem da página de códigos do seu sistema para aplicativos herdados. O IME m17n 'Unicode' usa pontos de código hexadecimais Unicode, que são 100% consistentes, não importa o que mais o sistema esteja configurado.
  • Os códigos Alt exigem que você segure a tecla Alt e use o teclado numérico para inserir os dígitos. O IME m17n 'Unicode' usa Ctrl-U como a sequência do acionador e permite inserir o código da maneira que você quiser (desde que corresponda ao código hexadecimal necessário).

Assim, para o seu exemplo de letra latina minúscula 'e' com sotaque agudo, a seqüência exata do IME 'Unicode' do m17m seria Ctrl-U 0 0 e 9 . Numericamente, o número hexadecimal 00e9 é realmente idêntico ao valor decimal 0233 usado para o código Alt equivalente com CP1252. Este é o caso da maioria dos primeiros 256 caracteres em Unicode, já que eles geralmente combinam com CP1252 em ordem e posição. Esta equivalência não se sustenta, no entanto, em números maiores.

Outros IMEs fornecidos pelo m17n que podem ser de interesse potencial para você incluem 'Latin-Post' e 'Latin-Pre' que permitem adicionar caracteres específicos antes ou depois de uma carta para produzir sinais diacríticos ou letras especiais (para isso você usaria e' ou 'e respectivamente), e 'RFC 1345', que usa mnemônicos RFC 1345 para permitir inserindo uma grande maioria dos caracteres amplamente utilizados do Unicode BMP (e usaria o mesmo e' do método 'Latin-Post').

    
por 20.06.2018 / 21:12