Para uma implementação bruta e suja, instale o pacote xsel
, que permita a interação da linha de comando com a área de transferência do X e, em seguida, coloque essas linhas em seu~/.screenrc
bind > eval writebuf "exec sh -c 'xsel -nbi </tmp/screen-exchange'"
bind y eval "exec sh -c 'xsel -bo >/tmp/screen-exchange'"
depois reinicie screen
.
Agora, quando você seleciona algo no modo de screen
cópia / rolagem e grava o buffer de colagem em um arquivo com C- a >, pode ir para o navegador e colar o conteúdo da área de transferência como de costume (por exemplo, com Ctrl- V).
Para o contrário, copie algo no seu navegador com Ctrl- C, vá para screen
e leia a área de transferência com o novo comando C- a y, depois leia o arquivo de troca de tela no buffer de colar com C- e a <, finalmente, cole onde quiser C- a ].
Para que isso funcione, a variável DISPLAY
deve estar configurada corretamente e você deve ter acesso ao servidor X. Isso não é um problema quando você está em um terminal executando no mesmo servidor X, mas se você executa screen
em um terminal virtual, por exemplo, tty1, pode ser necessário executar xhost +
no lado X export DISPLAY=:0
ou similar no terminal antes de iniciar screen
.
Como você vê, não é simples e não é à prova de balas, mas espero que possa ajudar.
Esta resposta é parcialmente inspirada na sincronização do buffer de colagem da tela GNU e na seleção X