vim/gvim falhando ao colocar a área de transferência do X11 nos registros "+ ou"*?

vim/gvim falhando ao colocar a área de transferência do X11 nos registros "+ ou"*?

Devido aofalta de segurança com padrãoservidor vino, mudei para usarx11vncna minha caixa Linux (com Xubuntu 14.04) e SSVNCdo lado das janelas.

Com o vino, recortar e colar do windows para o Linux e windows, nas duas direções, era esquisito (1), mas quando funcionava, funcionava para todos os programas; Eu poderia usar o vimregistro "+sem problemas. eu corro (2)

autocutsel -fork 

normalmente para que as seleções "clique do meio" e ctrl-c/v sejam as mesmas.

Agora que uso x11vnc (chamado com: x11vnc -forever -repeat -safer -usepw -ssl -autoport 6000) para ter uma conexão segura e criptografada, surgiu um problema:

  1. Posso copiar no windows e colar nos terminais linux remotos, libreoffice etc. sem nenhum problema, nas duas direções.

  2. Em vim, ou gvim, qualquer tentativa de colar "+pou "*pdizE353: Nothing in register *

  3. Novamente em vimor gvim, o contrário funciona: se eu "+yypuder colar a coisa no lado do Windows.

Alguém tem alguma pista sobre esse problema? O estranho é que paste funciona em todos os lugares que verifiquei, menos em vim...

Package                 Installed       Previous        Now             State
=======================-===============-===============-===============-=====
vim                     2:7.4.052-1ubuntu3  2:7.4.052-1ubuntu3  2:7.4.052-1ubuntu3  install
vim-gnome               2:7.4.052-1ubuntu3  2:7.4.052-1ubuntu3  2:7.4.052-1ubuntu3  install

Notas de rodapé:

(1) não consigo encontrar o bug agora --- ele foi relatado. Ele para de funcionar depois de um tempo.

(2) Tentei com e sem. Sem alterações.

Responder1

Como não sei qual x11vnc você está usando (tenho três versões diferentes, existem outras), este é um tutorial para solucionar esse problema específico.

Primeiro é entender as pranchetas envolvidas. Na maioria dos casos, há quatro deles envolvidos. (Mais é possível se você usar ferramentas de gerenciamento de área de transferência.) O X11 define três áreas de transferência: Primária, Secundária e Área de Transferência. O secundário raramente é usado (e quase certamente não é problema seu), então iremos ignorá-lo. Os aplicativos que usam o clique do meio para colar (xterm, et al) normalmente usam a área de transferência principal. Os aplicativos que colam no estilo do Windows (clique em editar, clique em colar ou controle V) às vezes usam apenas a área de transferência da área de transferência. Alguns aplicativos fazem as duas coisas (o Google Chrome cola do primário com um clique do meio e da área de transferência com um controle V). Em seguida está a área de transferência do VNC (apenas uma) e a área de transferência do Windows. (Se você estiver usando um visualizador vnc rodando no X11, as coisas ficarão mais complicadas, mas isso fará sentido depois de pensar sobre isso.) A área de transferência VNC é especial porque monitora várias atualizações das outras pranchetas para mantê-las atualizadas. data. Se você ignorar a área de transferência principal, isso será bastante simples, pois a área de transferência atualizada mais recentemente será copiada para todas as outras. O desafio é que o comportamento desejado da área de transferência principal não está bem definido. Tenho visto os seguintes comportamentos de várias implementações de vnc:

  1. Ignore o primário, use apenas a área de transferência.
  2. Ignore a área de transferência, use apenas a primária.
  3. Use o mais recente para cópias de Unix para Windows, copie para ambos para cópias de Windows para Unix.
  4. Tente ser inteligente: use o primário apenas até que a área de transferência seja usada e depois use apenas a área de transferência.
  5. Tente ser mais inteligente: use o primário até que a área de transferência seja alterada, ignore o primário até que haja uma alteração no Windows e, em seguida, use o próximo alterado, ignorando novamente o primário após o uso da área de transferência.
  6. Tente ser ainda mais inteligente. (Eu nunca descobri o que eles estavam tentando fazer com este, mas geralmente fazia a coisa certa)

Em seguida estão as ferramentas. Existem duas ferramentas que considero essenciais para depurar problemas da área de transferência: um editor de texto (o bloco de notas funciona bem para isso) e o xclip. Um visualizador da área de transferência do Windows é bom, mas não essencial.

Agora o procedimento: Em cada aplicativo do grupo que você está solucionando, selecione e copie algum texto verificando o status de todas as três pranchetas acessíveis. (A área de transferência vnc é muito difícil de visualizar diretamente e não é diretamente útil, pois normalmente não armazena os dados, apenas os metadados.) responda a estas perguntas: qual área de transferência cada aplicativo usa? em que ordem eles são usados?

Esperamos que esta seja informação suficiente para você começar.

informação relacionada