Como habilitar cores com Win32-OpenSSH e Putty?

1

Resumo

Parece haver um bug no Win32-OpenSSH que impede que as cores sejam mostradas em determinados emuladores de terminal, como PuTTY e mintty.

O Win32-OpenSSH parece substituir a sequência de escape de cor "\ 033 [32m \ 033 [40mtest" por "\ 033 [0; 39; 24; 27; 32; 40; mtest" e o problema parece ser o último ponto e vírgula antes do m. Removendo este ponto-e-vírgula, as cores são exibidas corretamente.

Detalhes

Instalei o Win32-OpenSSH-Win64 (versão 0.0.24.0) de acordo com o link .

eu defino

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH\DefaultShell="C:\Program Files\GIT\bin\bash.exe"  

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH\DefaultShellCommandOption="-c"

Fazendo login na minha máquina com

ssh localhost

Eu não obtenho saída colorida com PUTTY, e não com "Git Bash para Windows", mas eu obtenho cores com o "cmd.exe" nativo e com "Bash no Ubuntu no Subsistema para Linux" conectando ao mesmo local servidor.

O problema parece estar relacionado a seqüências de escape incomuns. O registro de todas as saídas da sessão no PuTTY mostra as seqüências de escape que são terminadas por um ponto-e-vírgula: "\ 033 [0; 39; 24; 27; 32; 40; mtest" e o PUTTY parece não ser capaz de manipulá-las. Seqüências de escape sem o ponto-e-vírgula final, por exemplo, "\ 033 [0; 39; 24; 27; 32; 40mtest" são manipuladas corretamente por PUTTY.

Essas seqüências de escape unusal parecem ser introduzidas pelo Win32-OpenSSH. Em contraste, o Servidor SSH Bitvise produz a seqüência de escape "\ 033 [32m \ 033 [40mtest".

    
por David 29.12.2017 / 10:57

0 respostas