คำสั่ง:bufdo
และ:vimgrepadd
คำตอบนี้จะขึ้นอยู่กับ/programming//a/11976158/1057593
อย่างไรก็ตามฉันต้องการเพิ่มไม่กี่บิต อีกครั้งคำสั่งพื้นฐานคือ
:bufdo vimgrepadd pattern %
หากรายการคำแนะนำด่วนของคุณไม่ว่างเปล่าคุณอาจต้องการล้างมันก่อน (ดู/programming//q/27385970/1057593 ) ซึ่งสามารถทำได้ด้วย
:cexpr []
vim-unimpairedจัดเตรียมการแมป]q
และ[q
วนรอบการแข่งขัน
cmdline ประวัติศาสตร์
/pattern
มันเป็นสิ่งที่ดีที่จะเข้าสู่ขั้นตอนการทำงานรูปแบบการค้นหาแยกต่างหากกับ สิ่งนี้อนุญาตให้คุณใช้คำสั่งทั่วไปจากประวัติ commandline ของคุณโดยใช้รูปแบบการค้นหาปัจจุบัน มันจะดูเหมือน
/pattern
:bufdo vimgrepadd // %
การค้นหากว้างบัฟเฟอร์ใหม่โดยทั่วไปจะเป็น
/pattern2
:bufdo<up><up>...
ฉันได้เพิ่มการแมปต่อไปนี้ใน vimrc ของฉันเพื่อใช้<C-N>
และ<C-P>
แทนปุ่มลูกศร
cmap <C-P> <Up>
cmap <C-N> <Down>
เมื่อต้องการค้นหาใช้ประวัติคำสั่งq:
แล้วและเรียกคำสั่งด้วย/bufdo<CR>
<CR>
ดูรายละเอียดเพิ่มเติมhttps://vim.fandom.com/wiki/Using_command-line_historyและหน้าความช่วยเหลือและ:h history
:h cmdline-window
คุณสามารถเพิ่มคำสั่ง reusable :copen
เพื่อดูรายการ quickfix ได้ทันทีด้วยวิธีต่อไปนี้:
:execute "bufdo vimgrepadd // %" | copen
ข้อเสนอจาก stackoverflow :bufdo vimgrepadd // % | copen
เปิดหน้าต่างที่ไม่ได้ตั้งใจหลายบานในกรณีของฉัน