Como digitar caracteres ASCII não imprimíveis no Mac OS X Terminal? [duplicado]

16

Para me comunicar com um dispositivo do tipo serial em um soquete telnet, preciso digitar o caractere nulo (ASCII 0) e todos os outros caracteres ASCII não imprimíveis.

No Windows, mantenha pressionada a tecla ALT e digite o código ASCII.

Como faço isso no Mac OS X?

davidcann
fonte

Respostas:

18

CtrlSpace envia ASCII NUL.

No caso geral, Preferências do sistema> Teclado> Fontes de entrada , role a lista e selecione Entrada hexadecimal Unicode .

Você pode usar CmdShiftSpace(e, se desativar o uso do Spotlight CmdSpace) , para alternar entre os modos de entrada ou atribuir a ele um atalho de teclado próprio (e presumivelmente outro para retornar) em Preferências do sistema> Teclado> Atalhos do teclado .

Depois que a Entrada hexadecimal Unicode estiver ativada, mantenha pressionado Optione digite o código hexadecimal de 4 dígitos; ao liberá- Optionlo, ele deve ser digitado. Você pode permanecer nesse modo desde que não precise de nenhum caractere além U+007F(ou, é claro, digite todos eles com entrada hexadecimal, em vez de Optione edigitar é).

geekosaur
fonte
11
Ótimo, obrigado! Nota para outras pessoas: no meu sistema, a tecla de atalho padrão era Option Cmd Space.
Davidcann 17/03
Para o Mac OS X, é Shift + Alt + Espaço #
No meu caso, tive que inserir um DLEcaractere (Unicode 0x10) na linha de comando. DLEé a mesma coisa Ctrl-Pque, em qualquer programa que usa readlinevê como um comando "rolar para a entrada anterior", é o mesmo que pressionar . Para digitar um DLEcaractere no meu terminal, tive que fazê Ctrl-V-lo Opt-0-0-1-0e obtive um caractere que se parece na tela ^P.
Christopher Schultz
2

Em muitos aplicativos CLI / TUI, você pode pressionar CtrlVpara solicitar que o aplicativo aceite o próximo pressionamento de tecla como códigos de caracteres brutos, em vez de chamar sua função normal.

Ignacio Vazquez-Abrams
fonte