Simpan makro yang baru saja dibuat di vimrc

14

Terkadang saya membuat makro. Terkadang saya membuat makro yang sama beberapa kali.

Terkadang saya bosan membuat makro yang sama lagi. Bisakah saya menyimpan makro? Bisakah saya memuat pengaturan makro? Bisakah saya membuat makro dan menyimpannya selamanya?

sensorario
sumber

Jawaban:

17

Ya kamu bisa! Ada beberapa cara untuk melakukan ini. Secara default, semua register akan disimpan ke file viminfo Anda , dan dimuat setelah Anda memulai vim. Ini cara termudah. Namun, ini tidak mudah. Setiap register akan hilang jika Anda secara tidak sengaja mencatat / menariknya.

Cara yang lebih baik untuk menyimpan makro tertentu adalah dengan memasukkannya ke dalam .vimrc. Misalnya, katakanlah Anda ingin foodisimpan ke makro a. Ini dapat dicapai dengan:

let @a='foo'

di vimrc Anda. Jika makro Anda sudah dibuat, Anda bisa mengetik

ilet @a='<C-r><C-r>a'<esc>

untuk menempelkan isi makro saat ini, jika Anda tidak ingin mengetik semuanya lagi.


Terima kasih kepada Andrew Keeton yang telah menunjukkan <C-r><C-r>

James
sumber
Anda mungkin ingin menggunakan <C-r><C-r>(dua, bukan satu) untuk memasukkan teks secara harfiah
Andrew Keeton
1
@AndrewKeeton Ooh, peningkatan besar. Terima kasih telah memberi tahu saya tentang hal itu
James
<c-r><c-r>tidak akan berfungsi jika makro Anda berisi urutan kunci khusus seperti <c-right>, "aptidak memiliki masalah ini.
dedowsdi