ssh - tela UNIX e mapas de teclado (macbook delete key em particular)

2

Ao longo dos anos, tive vários problemas de mapeamento na tela do UNIX por meio do SSH, e presumo que outros também o tenham. Minha pergunta tem duas partes:

  • Quando eu SSH no meu servidor Ubuntu Dapper (eu sei, estou me mudando para Lenny post-rush :) do meu OSX Macbook, a chave de exclusão não mapeia para backspace, mas para excluir (o que não é o correto comportamento, a exclusão da Apple é realmente backspace). Alguém mais encontrou esse comportamento? Como resolver isso?
  • Acho que eu deveria saber mais sobre como os keymaps funcionam no console do UNIX em geral. Onde posso encontrar informações gerais sobre como resolver problemas de keymap entre plataformas com o SSH?
por Eric Drechsel 05.09.2009 / 01:39

3 respostas

1

  1. Verifique em Terminal -> Settings -> Advanced e certifique-se de que sua chave de exclusão esteja enviando algo sensato. Alterne isso e veja se isso ajuda.
  2. Veja o que é $TERM quando você entra no seu servidor. Eu recebo xterm-color quando eu ssh na minha caixa Debian e screen quando estou na tela.
por 05.09.2009 / 01:55
0

Os sistemas Ubuntu Linux e UNIX em geral usam um programa chamado stty para configurar o teclado. Execute o comando "man stty" para ler a página de manual do stty. By the way, stty está na seção 1 do manual, então geeks do UNIX tendem a chamar este programa "stty (1)".

A maneira usual de personalizar teclados é editar o arquivo de inicialização do seu shell. Se você usar o shell bash, este arquivo será .bashrc. Você pode testar uma variável do shell chamada "TERM" que identifica o tipo de terminal ou emulador de terminal que você está usando. Se você não tem experiência em editar arquivos .bashrc, você pode ler sobre a sintaxe na página de manual do bash: "man bash"

Até onde eu sei, o código de chave real enviado pelo emulador de terminal da Apple provavelmente é ASCII DEL; Cabe às suas configurações stty transformar isso em backspace-apaga no shell.

Boa sorte!

    
por 05.09.2009 / 02:03
0

Você precisa criar um arquivo .inputrc no seu diretório pessoal. Confira: link .

Meu ~ / .inputrc se parece com isso (eu gosto especialmente do auto-completo sem distinção entre maiúsculas e minúsculas):

# Make fwd delete key do something useful
"\e[3~": delete-char

# Make ctrl-left and ctrl-right skip words
"\e[5C": forward-word
"\e[5D": backward-word

# ignore case in tab-autocomplete
set completion-ignore-case On
    
por 08.09.2009 / 03:25