Abra o arquivo remoto na sessão local do vim:
:e scp://user@host/relative/path/from/home.txt
Estou editando um arquivo no vim em uma máquina remota via ssh e quero copiar o texto do arquivo remoto e colá-lo em uma instância vim em execução na minha máquina local. Existe uma maneira fácil de fazer isso? Posso usar os recursos de seleção do meu emulador de terminal para selecionar o texto que está atualmente na tela, mas se minha seleção for maior do que a que cabe na tela, estou sem sorte.
Abra o arquivo remoto na sessão local do vim:
:e scp://user@host/relative/path/from/home.txt
Se você tiver permissões suficientes na máquina remota, poderá adicionar
AcceptEnv WINDOWID
para / etc / ssh / sshd_config e reinicie o sshd com
sudo /etc/init.d/ssh restart
Em seguida, na sua máquina local, adicione
ForwardX11 yes
SendEnv WINDOWID
para o seu arquivo ~ / .ssh / config
Em seguida, executando um X-aware vim na máquina remota (por exemplo, gvim -v
), você pode copiar e colar de e para a área de transferência do X. Basta selecionar visualmente o texto (por exemplo, usando V
) e colocá-lo no registro *
.
Editar
Eu esqueci de incluir a parte sobre a configuração de SendEnv WINDOWID
em seu ~ / .ssh / config, então eu adicionei isso e movi a habilitação do X forwarding da linha de comando (ssh -X
option) para o ~ /. arquivo ssh / config ( ForwardX11 yes
).
Tags ssh vim copy-paste