Come posso copiare e incollare il testo da un VIM remoto in un VIM locale?


12

Sto modificando un file in VIM su un computer remoto tramite ssh e voglio copiare il testo dal file remoto e incollarlo in un'istanza di VIM in esecuzione sul mio computer locale. C'è un modo semplice per farlo? Posso usare le funzioni di selezione del mio emulatore di terminale per selezionare il testo che è attualmente sullo schermo, ma se la mia selezione è più ampia di quella che può adattarsi allo schermo, sono sfortunato.


Risposte:


23

Apri il file remoto nella sessione vim locale:

  :e scp://user@host/relative/path/from/home.txt

Mi piace. Bello e semplice.
Chev,

Ottimo consiglio! Questo può scp://essere riconosciuto altrove o è solo VIM?
Frozen Flame,

1
@FrozenFlame: credo che sia specifico per l'app. MA non sarei sorpreso se un grande DE come KDE o Gnome imponesse il supporto per questo schema in ogni app.
nperson325681,

1
Per percorsi assoluti::e scp://user@host//tmp/file.txt
Simon A. Eugster,

9

Se si dispone di autorizzazioni sufficienti sul computer remoto, è possibile aggiungere

AcceptEnv WINDOWID

su / etc / ssh / sshd_config e riavvia sshd con

sudo /etc/init.d/ssh restart

Quindi sul tuo computer locale aggiungi

ForwardX11 yes
SendEnv WINDOWID

nel tuo file ~ / .ssh / config

Quindi eseguendo un vim compatibile con X sul computer remoto (ad esempio, gvim -v), è possibile copiare e incollare negli e negli Appunti X. Basta selezionare visivamente il testo (ad esempio, usando V) e inserirlo nel *registro.

modificare

Ho dimenticato di includere la parte relativa all'impostazione SendEnv WINDOWIDnel tuo ~ / .ssh / config, quindi l'ho aggiunto e ho spostato l'abilitazione dell'inoltro X dalla riga di comando ( -Xopzione ssh ) al file ~ / .ssh / config ( ForwardX11 yes).


Avevo bisogno di installare il pacchetto xauth perché questo funzionasse su Debian.
leo,

con questo posso copiare localmente e incollare da remoto. C'è un modo di fare anche il contrario? Grazie!
Paschalis,
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.