Mengingat saya memiliki sekelompok perintah seperti:
augroup MyGroup
autocmd CursorMoved * silent call MyCommandOne()
augroup END
Saya ingin menonaktifkan semua perintah otomatis di MyGroup untuk sementara waktu dan kemudian mengaktifkannya kembali.
Apakah ada yang bisa saya lakukan dengan grup? Secara khusus, apakah ada cara untuk menonaktifkan seluruh grup sekaligus? Jika tidak, apa yang dapat saya lakukan untuk menonaktifkan perintah individual?
Melihat bantuan, saya hanya melihat beberapa opsi:
augroup!
akan menghapus seluruh grup: Saya rasa ini tidak benar karena saya ingin mengaktifkannya kembali. (Tapi mungkin ada cara untuk mendefinisikan kembali grup dengan mudah?):noautocmd
hanya akan menonaktifkan callback untuk doa satu kali perintah. (Dan itu menonaktifkan semua autocmds, bukan yang ditentukan)eventignore
membahas peristiwa yang mengikat, bukan perintah: itu terdengar seperti menonaktifkan semua perintah terikat untuk peristiwa tertentu, bukan hanya satu perintah atau grup yang dapat saya tentukan.
Bagaimana ini dilakukan?
Dari sini , tampaknya ini mencapainya:
sumber
Bagi siapa pun yang tidak memiliki persyaratan poster asli untuk dapat mengembalikannya
augroup
,:autocmd! <augroup name>
adalah perintah untuk menghapus semuanyaautocmd
dalamaugroup
, misalnya:sumber