Copie / cole no vim sem o X


8

No vim, "+ppastas da área de transferência do sistema. No entanto, ao trabalhar remotamente sobre SSH em uma caixa que não seja da GUI, isso não está disponível.

É possível implementar copiar / colar nesse ambiente?

Simplesmente copiar texto do terminal não é suficiente, porque ele também copia coisas que estão além do escopo do arquivo (por exemplo, se estiver usando o tmux, ele copia a tela inteira porque é apenas texto sem formatação).

Respostas:


1

Uma solução alternativa é usar arquivos de rascunho (acessados ​​remotamente) para transferir o texto:

Caso você possa fazer o SSH de volta ao seu próprio sistema, basta :split scp://hostname/path/to/filecolocar o texto arrancado lá e :write.

Se você pode simplesmente usar o SSH do seu sistema para a caixa do servidor, abra o Vim localmente e acesse o arquivo de rascunho no servidor: vim scp://server/path/to/file(ou apenas use scpdiretamente).

Tudo isso é ativado pelo plugin netrw que acompanha o Vim.


0

No MacOS, quando SSH da máquina A para a máquina B e usando o vim na máquina B, adiciono isso ao meu .vimrc na máquina B:

nmap yr :call system("ssh $machineA_IP pbcopy", @*)<CR>

Dessa forma, no modo normal, o conteúdo de * register se vim @ machine_B for copiado para a área de transferência local da máquina A, supondo que você tenha configurado o Vim corretamente com + clipboard e * register

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.