VNC – Habilitando área de transferência

Servidores X utilizam dois esquemas para copiar texto entre aplicativos, o primeiro (obsoleto) é o cutbuffer. Um buffer simples em que qualquer aplicação pode armazenar dados.

Aplicações de desktop recentes (GNOME, KDE, XFCE, etc…) utilizam dois tipos de seleções: PRIMARY e CLIPBOARD. A seleção PRIMARY é utilizada quando seleciona-se um texto com o mouse, e utiliza-se o botão do meio para colar. A seleção CLIPBOARD, é utilizada ao utilizar o menu Editar / Copiar, Editar / Colar presente na maioria dos aplicativos gráficos. Por padrão o autocutsel utiliza o esquema CLIPBOARD, não sendo necessárias alterações, caso necessário deve ser utilizado o parãmetro -s PRIMARY por exemplo.

Os clientes VNC Windows mantém a sincronização de área de trabalho com o cutbuffer, e não com os esquemas de seleção PRIMARY / CLIPBOARD. Como as novas aplicações não utilizam cutbuffer, as mesmas nunca serão sincronizadas.

Para solucionar o problema, o autocutsel verifica as mudanças do cutbuffer, como dos esquemas PRIMARY / CLIPBOARD. Quando o CLIPBOARD é alterado, este altera o cutbuffer e vice-versa.

A configuração deve ser realizada no arquivo ~/.vnc/xstartup, a seguir um exemplo utilizando o ambiente de trabalho XFCE:

user@host:/home/user$ cat .vnc/xstartup
 #!/bin/sh
 xrdb $HOME/.Xresources
 xsetroot -solid grey
 autocutsel -fork
 startxfce4

A opção -fork, executa o autocutsel como  um daemon, recomendado para a utilização de scripts de inicialização do X. Após as alterações, a área de transferência irá funcionar sem problemas entre clientes Windows e servidores GNU/Linux.

Referência: http://www.nongnu.org/autocutsel/

Sem categoria