พิจารณา:
apple
pear
วางเคอร์เซอร์ของคุณในบรรทัดแรกและประเภทYpผลิต:
apple
apple
pear
วางเคอร์เซอร์ของคุณบนpearบรรทัดและพิมพ์.เพื่อทำซ้ำคำสั่งสุดท้าย สิ่งนี้ซ้ำเพียงp(แทนที่จะรวมกันYp) ผลิต:
apple
apple
pear
apple
ฉันต้องการวิธีบอก.ให้ทำซ้ำคำสั่ง N ล่าสุด สิ่งที่ต้องการ2.รวมกันซ้ำYpเพื่อผลิต:
apple
apple
pear
pear
Ofc ที่ไม่ทำงาน - มันซ้ำpสองครั้ง แต่ความคิดจะเป็น "ทำซ้ำลำดับของ 2 คำสั่งสุดท้าย"
ฉันรู้ว่าฉันสามารถqบันทึกลำดับคำสั่ง -record และทำซ้ำได้@@แต่โซลูชันนี้ไม่เหมาะเพราะคุณต้องวางแผนล่วงหน้ามาตลอดในขณะที่ในทางปฏิบัติคุณมักจะไม่รู้ว่าคุณต้องทำซ้ำจนกว่าจะถึงเวลา คุณทำมันแล้ว
มีวิธีใดบ้างที่จะบรรลุสิ่งที่ฉันต้องการ
รางวัลชมเชย: หากเป็นไปไม่ได้มีวิธีการเล่นแมโครครั้งสุดท้ายซ้ำอีกครั้งหรือไม่? เช่นหากฉันพิมพ์@@เพื่อเล่นแมโครสุดท้ายของฉันฉันต้องการให้สิ่งต่อ.ไปนี้เทียบเท่ากับการพิมพ์@@อีกครั้งซึ่งไม่ได้ (เช่นหากผลลัพธ์@@ขึ้นอยู่กับบรรทัดที่คุณอยู่)
nno <silent> @@ @@:sil! call repeat#set('@@', v:count1)<CR>แต่เพื่อให้ใช้งานได้คุณต้องติดตั้งปลั๊กอินนี้: github.com/tpope/vim-repeat