Untuk situasi di mana Anda membutuhkan vim untuk dimuat penuh seolah-olah Anda memulainya secara manual, ini berfungsi:
vim -c "autocmd! CursorHold * <commands to run>"
Sebagai contoh, saya ingin mengarahkan output :map
ke file dari shell, tetapi saya ingin menangkap pemetaan yang vim-airline ciptakan hanya setelah itu ditampilkan tabline-nya (baris di atas menunjukkan semua buffernames terbuka.) Karena sepertinya melakukan ini tidak sinkron, hanya menjalankan -c
redirect ke file tidak memberikan waktu untuk membuat pemetaan. Mungkin ada cara yang lebih baik, tetapi ini bekerja untuk saya, terutama karena saya sudah updatetime
menetapkan ke 100
(0,1 detik), yang mempengaruhi berapa lama sampai CursorHold
acara tersebut menyala. Secara default, vim menetapkannya menjadi 4 detik.
vim -c "autocmd! CursorHold * set nomore | redir! > mapNew | map | redir END | q"
vim +BundleInstall +qall!
.