vim / gvim non riesce a inserire gli appunti X11 nei registri “+ o” *?


15

A causa della mancanza di sicurezza con il server vino standard , sono passato a usare x11vnc sul mio box Linux (con Xubuntu 14.04) e SSVNC sul lato Windows.

Con vino, taglia e incolla da Windows a Linux e Windows, nelle due direzioni, era traballante (1) ma quando ha funzionato, ha funzionato per ogni programma; Potrei usare il vimregistro "+senza problemi. Corro (2)

autocutsel -fork 

normalmente in modo che le selezioni "clic centrale" e ctrl-c / v siano le stesse.

Ora che uso x11vnc (chiamato con:) x11vnc -forever -repeat -safer -usepw -ssl -autoport 6000per avere una connessione sicura e crittografata, è sorto un problema:

  1. Posso copiare su Windows e incollare i terminali Linux remoti, libreoffice ecc. Senza alcun problema, in entrambe le direzioni.

  2. In vim, o gvim, qualsiasi tentativo di incollare con "+po "*pdiceE353: Nothing in register *

  3. Di nuovo in vimo gvim, viceversa funziona: se "+yyriesco a incollare la cosa sul lato di Windows.

Qualcuno ha qualche idea su questo problema? La cosa strana è che la pasta funziona ovunque ho controllato ma in 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

Note:

(1) non riesco a trovare il bug ora --- è segnalato. Smette di funzionare dopo un po '.

(2) Ho provato con e senza. Nessun cambiamento.


Ho avuto molti problemi con x11vnc relativi a localizzazioni di lingue diverse su host e client, in particolare durante il controllo dei guest vmware tramite vnc sul server. Alla fine l'ho risolto installando un server nomachine sul sistema host. So che questa probabilmente non è la soluzione che hai in mente, ma nomachine e nxclient sono entrambi sicuri, molto veloci e tutto è incanalato attraverso ssh.
Floyd,

2
Non uso vnc, ma ho risolto tutti i miei problemi con l'interoperabilità degli appunti tra vim e sistemi operativi tramite: (1) usando set clipboard=unnamedplusin ogni Linux che uso (2) alias vim='gvim -v'nei miei .bashrc(per aggirare determinate distribuzioni compilando vim senza il supporto degli appunti X) (3) set clipboard=unnamedin windows. Spero che sia d'aiuto.
Patryk Obara,

@PatrykObara proverà ... la prossima volta dovrò usare un PC Windows. Ora ho solo una configurazione Linux e nessun problema ... Grazie.
Rmano,

Risposte:


1

Dato che non so quale x11vnc stai usando (ne ho tre diverse versioni, ce ne sono altre) questo è un tutorial per risolvere questo specifico problema.

Il primo è capire gli appunti coinvolti. Nella maggior parte dei casi, quattro sono coinvolti. (È possibile utilizzare altri strumenti di gestione degli Appunti.) X11 definisce tre Appunti: Primario, Secondario e Appunti. Il secondario viene usato raramente (e quasi sicuramente non è un tuo problema), quindi lo ignoreremo. Le applicazioni che usano il clic centrale per incollare (xterm, et al) normalmente usano gli appunti primari. Le applicazioni che eseguono un incolla in stile Windows (fai clic su modifica, fai clic su incolla o controlla V) a volte utilizzano solo gli Appunti. Alcune applicazioni fanno entrambe le cose (le paste di Google Chrome dalle primarie con un clic centrale e dagli appunti con una V di controllo). Il prossimo è negli Appunti VNC (solo uno) e ci sono gli Appunti di Windows. (Se stai usando un visualizzatore vnc in esecuzione su X11, le cose si complicano, ma avrà senso dopo averci pensato. ) gli Appunti VNC sono speciali in quanto tengono traccia di vari aggiornamenti degli altri Appunti per tenerli aggiornati. Se ignori gli appunti principali, questo è abbastanza semplice in quanto gli appunti aggiornati più di recente vengono copiati in tutti gli altri. La sfida è che il comportamento desiderato degli appunti primari non è ben definito. Ho visto i seguenti comportamenti di varie implementazioni vnc:

  1. Ignora il primario, usa solo gli appunti.
  2. Ignora gli Appunti, usa solo il primario.
  3. Usa il più recente per le copie da unix a Windows, copia in entrambe per Windows per unificare le copie.
  4. Cerca di essere intelligente: usa il primario solo fino a quando non viene utilizzato gli Appunti, quindi usa solo gli Appunti.
  5. Cerca di essere più intelligente: usa il primario fino a quando gli Appunti non vengono cambiati, quindi ignora il primario fino a quando non si verifica una modifica da Windows, quindi usa il successivo modificato, ignorando nuovamente il primario dopo l'uso degli Appunti.
  6. Cerca di essere ancora più intelligente. (Non ho mai capito cosa stessero cercando di fare con questo, ma di solito ha fatto la cosa giusta)

Il prossimo è gli strumenti. Esistono due strumenti che ritengo essenziali per il debug degli Appunti: un editor di testo (il blocco note funziona bene per questo) e xclip. Un visualizzatore di Appunti di Windows è bello ma non essenziale.

Ora la procedura: da ciascuna applicazione del gruppo che stai risolvendo, seleziona e copia del testo verificando lo stato di tutti e tre gli appunti accessibili. (Gli Appunti di VNC sono molto difficili da visualizzare direttamente e non sono utili in quanto normalmente non memorizzano i dati, ma solo i metadati.) Rispondi a queste domande: quali Appunti utilizza ciascuna applicazione? quale ordine sono usati?

Spero che questa sia un'informazione sufficiente per iniziare.


Grazie! Sfortunatamente non posso testare in questo momento, ho quasi abbandonato Windows dai miei PC ;-). Proverò qualche indagine non appena sarò costretto a usare di nuovo Windows ...
Rmano
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.