ดำเนินการเนื้อหาบัฟเฟอร์เป็น vimscript


10

ฉันมีnofileบัฟเฟอร์ที่มี vimscript และฉันต้องการดำเนินการ อย่างไรก็ตาม:so % จะไม่ทำงานเนื่องจากต้องใช้ไฟล์ที่บันทึกไม่ใช่บัฟเฟอร์ มีคำสั่ง vim ให้ทำตามค่าเริ่มต้นหรือไม่? หากไม่สามารถสร้างฟังก์ชั่นที่ทำสิ่งเดียวกันได้หรือไม่?

คำตอบ:


13

ใช่คุณสามารถงัดบัฟเฟอร์ทั้งหมดด้วยggyGหรือและดำเนินการด้วย:%y:@"

ในระยะสั้น:

:%y|@"<CR>

ใช้ในการทำแผนที่:

nnoremap <key> :%y|@"<CR>

ใช้ในคำสั่งที่ยืดหยุ่นที่ทำงานกับบัฟเฟอร์ทั้งหมดโดยค่าเริ่มต้นหรือช่วงตัวเลือก:

command! -bar -range=% Foo execute <line1> . ',' . <line2> . 'y|@"'

คุณมีโคลอนที่หายไปในคำสั่งแรก
Vitor

นอกจากนี้สิ่งนี้จะขัดขวางการ"ลงทะเบียน ฉันคิดว่าคุณสามารถใช้การลงทะเบียนอื่นได้หากคุณต้องการหรือคุณสามารถบันทึกการ"ลงทะเบียนและเรียกคืนได้ในภายหลัง
EvergreenTree
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.