Bagaimana saya bisa dengan mudah mendaftar konten register sebelum menempel?

10

Saya sering menggunakan register untuk menyalin / menempel, tetapi saya selalu lupa di mana mendaftarkan konten saya.

Apakah ada cara untuk menampilkan register sebelum menempel?

Idealnya itu akan meninggalkan register di layar ketika memilih yang kita inginkan.

nobe4
sumber

Jawaban:

14

Ini ciluk ba Plugin cukup baik untuk untuk melihat pratinjau register. Ketika Anda menekan "atau @dalam mode normal, atau ctrl-rdalam mode insert, perpecahan akan terbuka untuk menunjukkan kepada Anda konten register.

Pratinjau dari repo plugin:

ciluk ba

Tommy A
sumber
Plugin ini akan jauh lebih menjengkelkan jika binding kunci akan dapat dikonfigurasi pengguna. Mengikat ke "dan @dalam mode normal memecah semua makro yang menggunakan register. FWIW.
Sato Katsura
Hmm, saya tidak punya masalah dengan macro rekursif yang cenderung saya gunakan, bahkan dengan register yang terlibat. Plugin menonaktifkan sendiri ketika memutar ulang makro dengan @. README mencatat bahwa peta non-rekursif akan menyebabkan masalah. Saya setuju bahwa akan lebih baik jika bisa dikonfigurasi untuk hanya melihat register.
Tommy A
Berikut adalah sesuatu yang sepele yang pecah::%g/text/ normal "Ayy
Sato Katsura
Plugin telah diperbarui untuk menggunakan awalan yang dapat dikonfigurasi. github.com/junegunn/vim-peekaboo/pull/41
Tommy A
6

Saya membuat pemetaan ini untuk menampilkan daftar register dan memilih yang akan ditempelkan:

nnoremap "p :reg <bar> exec 'normal! "'.input('>').'p'<CR>

Ini menampilkan daftar register dengan :regdan menjalankan perintah normal

"Xp 

Di mana Xhasilnya input().

nobe4
sumber
2

Saya akan merekomendasikan menggunakan

:reg

Ini akan menampilkan konten semua register (Anda dapat menggulir menggunakan j dan k).

Jika Anda hanya ingin menunjukkan konten dari satu register, Anda dapat pergi ke mode dan tipe perintah

: Ctrl + r

lalu register, misalnya x register

x

yang akan menempelkan isi register ke baris perintah. Anda kemudian dapat keluar dari baris perintah setelah melihat daftar Anda.

DoYouEvenCodeBro
sumber
Apa perbedaan antara :disdan :reg? Saya selalu menggunakan yang pertama.
Philip Kearns
Tidak ada: :help :dis->:di[splay] [arg] Same as :registers. {not in Vi}
Boldewyn