A tela GNU não envia caracteres de controle do arquivo de configuração, mas quando configurada manualmente


1

Meu .screenrc tem a seguinte linha:

escape ^Jj

No entanto, não consigo enviar um ^ J literal em uma sessão de tela com base nisso!

  • Versão: Versão da tela 4.06.02 (GNU) 23-Oct-17
  • Anfitrião: Linux baseado em Debian

C-j ? mostra Command key: ^J Literal ^J: j

Curiosamente, quando defino a chave usando C-j :escape ^Jj, POSSO enviar o caractere de controle com êxito.

Alguém pode explicar o que pode estar acontecendo aqui?

Respostas:


0

Eu suspeito que você esteja em um caso de canto muito específico. Ctrl-J é o código da tecla Enter (avanço de linha) e, portanto, parece screenestar tratando isso especialmente.

Eu posso digitar ls Rete recebo uma listagem de diretório. Mas agora, sentado no prompt Retvazio , se eu tentar digitar, nada acontece até que eu prossiga com um jpara enviar um feed de linha literal.

Minha forte recomendação seria simplesmente não tentar usar essa chave específica como chave de comando screen. (Minha preferência pessoal é a de ^Lque não colide com nada útil; digitar ctrlL Lnas raras ocasiões em que preciso é perfeitamente aceitável.)


Não vejo o comportamento que você está descrevendo: o Retpersonagem vazio . Além disso, uso Cj como meu personagem de controle há mais de dez anos. Isso significa que vou precisar de algum convincente para mudar (especialmente como eu recebo meu comportamento desejado usandoC-j :escape ^Jj
Realraptor

Ooh: no meu sistema C-v <ret>produz ^M, o que explica o comportamento diferente do que descreve o triplo.
Realraptor

A tecla Ret concreta tradicionalmente produz, ^Mmas no Unix isso é remapeado para ^J. Isso também depende das configurações do seu terminal.
Tripleee
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.