Salin / tempel di vim tanpa X

8

Dalam vim, "+ppasta dari clipboard sistem. Namun, ketika bekerja jarak jauh melalui SSH pada kotak non-GUI, ini tidak tersedia.

Apakah mungkin menerapkan copy / paste di lingkungan ini?

Hanya menyalin teks dari terminal tidak cukup, karena itu juga akan menyalin hal-hal yang di luar ruang lingkup file (misalnya, jika menggunakan tmux, itu menyalin layar penuh karena itu semua teks biasa).

o_o_o--
sumber

Jawaban:

1

Satu solusi menggunakan file awal (diakses dari jarak jauh) untuk mentransfer teks:

Jika Anda dapat SSH kembali ke sistem Anda sendiri, Anda bisa :split scp://hostname/path/to/file, letakkan teks yang ditarik di sana, dan :write.

Jika Anda bisa menggunakan SSH dari sistem Anda ke kotak server, buka Vim secara lokal dan akses file awal dari server: vim scp://server/path/to/file(atau cukup gunakan scplangsung).

Ini semua diaktifkan oleh plugin netrw yang dikirimkan bersama Vim.

Ingo Karkat
sumber
0

Di MacOS, ketika SSH dari mesin A ke mesin B dan menggunakan vim di mesin B, saya menambahkan ini ke .vimrc saya di mesin B:

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

Dengan cara itu, dalam mode normal, isi * register jika vim @ machine_B disalin ke clipboard lokal mesin A, dengan asumsi Anda telah mengatur Vim dengan benar dengan + clipboard dan * register

Linh
sumber