Eu tive um problema muito parecido, mas ao invés do nano eu estava usando o vim. Eu também compilei o tmux a partir da fonte (esse detalhe será importante). Eu tenho puxado o cabelo para fora tentando descobrir a solução e, embora eu não saiba exatamente o porquê, eu queria dar alguns passos que tentei finalmente fazer funcionar. Qual foi o meu problema (adaptado da pergunta original):
- eu abro um terminal (no CentOS 7, então gnome-terminal)
- zsh é o shell
- Então eu corro o tmux
- Edite um arquivo com vim
- Divida a exibição em vim com
:sp
- Crie um painel dividido verticalmente em tmux
- Volte para o arquivo, role para cima e para baixo no arquivo com o cursor
-
Problema: Ao rolar para baixo na viewport do vim, apenas a parte inferior da viewport é atualizada (apenas a linha em que o cursor está)
-
Problema: Ao rolar para cima na janela de visualização do vim, somente a parte superior da viewport é atualizada (somente a linha em que o cursor está)
- Às vezes, no entanto, eu consegui fazer com que a viewport inferior rolasse corretamente se eu ajustasse o zoom do terminal (
Ctrl-minus
ou Ctrl-Shift-+
)
-
Problema: Junto com isso, se eu acessasse o novo painel tmux e digitasse um monte de texto (com espaços), fosse para o início do comando e usasse a tecla delete para excluir alguns caracteres , o terminal imprimiria uma parte do comando na linha de cima como eu ainda estava editando . E eu não conseguiria ter uma noção exata do que realmente estava sendo digitado. Não é divertido.
Aqui está o que eu fiz para eventualmente consertar: Primeiro, eu sugeriria certificar-se de que o tmux está usando a configuração screen-256color
TERM. Coloque isso no seu .tmux.conf:
set -g default-terminal "screen-256color"
Agora feche todas as suas sessões tmux . Reabra o tmux e veja se isso de alguma forma resolveu o problema:
echo $TERM
Deve dizer screen-256color
. Infelizmente isso não foi o suficiente para mim, eu estava tendo os mesmos problemas.
O que finalmente corrigiu para mim foi clonar a versão mais recente do tmux (no momento da escrita, v2.8) do github, depois recompilar. Eu coloquei este novo build / binary em um diretório separado, e eis que o novo binário funcionou enquanto o antigo (versão desconhecida) ainda não funcionava. O antigo ainda era uma versão bastante recente.
Espero que isso ajude alguém.