Por que o tmux de inicialização dentro do bashrc ativa o ALT + LEFT / ALT-RIGHT, então mude o tty?

3

Estou executando o Ubuntu 17.04. Isso acontece dentro do X, depois de eu ter logado. Estou executando a instalação padrão do Ubuntu Gnome link

Eu tenho o seguinte código em ~/.bashrc

[[ -z "$TMUX" ]] && exec tmux # Launch tmux in new shells

Quando eu reinicio e faço login com isso no meu bashrc, então ALT + LEFT e ALT + RIGHT alternam para o anterior e o próximo tty, respectivamente.

Quando eu removo a linha, ALT + LEFT e ALT + RIGHT voltam ao seu comportamento habitual de voltar e avançar no meu navegador.

Estou lançando o tmux errado?

    
por AndrewVos 01.10.2017 / 20:46

2 respostas

1

Estou executando o Ubuntu 18.04 com o GNOME Shell e o X (não Wayland), não adicionei nada sobre o tmux ao meu bashrc, e estou vendo o mesmo problema. Eu não consegui localizar a causa, mas, pelo que sei, parece que algo estranho está acontecendo com o fechamento e a abertura do laptop ou do sistema para dormir. Quando eu reinicio, o problema não está mais presente. Se estivermos observando o mesmo problema, esperamos que você não esteja mais presente após a reinicialização.

    
por 31.07.2018 / 05:19
0

Correto. Esta configuração bashrc não é compatível com o restante do software que você usa atualmente. Considere o seguinte.

  1. O console do Linux implementa ALT + LEFT / ALT_RIGHT por padrão. Você pode sempre ver esse comportamento quando usa um login no console de texto. (Por exemplo, depois de CTRL + ALT + F6).
  2. O sistema gráfico aka. Servidor X, desativa esse comportamento alternando o modo de teclado do console atual do Linux (por exemplo, /dev/tty7 ) para "raw".

    Ver, por exemplo, O que é o modo de teclado não processado?

  3. Tradicionalmente, o X é sempre iniciado dentro de um shell do usuário. Essa tradição é [ab] usada para definir variáveis de ambiente como PATH (a lista de diretórios para encontrar comandos) em arquivos de configuração do shell como .bashrc , e fazer com que eles se apliquem a sessões gráficas, não apenas logins que obviamente usam shell console ou logins SSH.

    Ver, por exemplo, Qual é o status de definir variáveis de ambiente? sem ~ / .bash_profile?

  4. Muito amplamente, se você estiver em um console Linux e executar algo dentro de tmux , essa coisa vai falar com tmux (por meio de um pseudo-terminal) e não diretamente no console do Linux. Eu não sei exatamente o que acontece no seu caso, mas parece que o X pode estar rodando dentro de tmux , e isso faz com que ele continue sem encontrar o console atual para mudar para o modo raw. / li>
por 31.07.2018 / 11:33