เมื่อฉันต้องการทำงานในโครงการที่แตกต่างกันในเวลาเดียวกันฉันมีเวิร์กโฟลว์ folowing:
- ฉันสร้างหนึ่งแท็บสำหรับแต่ละโครงการ
- ในแต่ละแท็บฉันเปิดไฟล์ที่ฉันต้องการแก้ไขซึ่งทำให้หลายบัฟเฟอร์
- Optionnaly ถ้าฉันต้องการเห็นสองไฟล์ (หรือมากกว่า) ในเวลาเดียวกันฉันสร้างหน้าต่างแยกดังนั้นฉันมีแท็บที่มีหน้าต่างที่แตกต่างกันซึ่งแสดงบัฟเฟอร์หนึ่ง
เพื่อนำทางระหว่างบัฟเฟอร์ของฉันฉันไม่ได้ใช้จริง ๆ:ls
และ:b [name or number of buffer]
ฉันได้สร้างการจับคู่ที่สะดวกทำให้ฉันสามารถสลับระหว่างบัฟเฟอร์ด้วย:bnext
และ:bprevious
วิธีการทำงานนี้ค่อนข้างดี แต่มีบางอย่างที่รบกวนฉัน: บัฟเฟอร์ถูกแชร์ระหว่างแท็บ
ถ้าผมเปิดfile1
และfile2
ในtab1
และfile3
ในtab2
ถ้าในtab1
ผมใช้เวลาหลาย:bnext
ฉันจะเห็นfile3
ในแท็บนี้ซึ่งผมไม่ต้องการที่จะ ขั้นตอนการทำงานที่ผมต้องการที่จะได้รับคือ folowing :
- เริ่มเป็นกลุ่ม (ฉันมีแท็บแรกที่มีบัฟเฟอร์อยู่):
$ vim foo
- เพิ่มบัฟเฟอร์ลงในแท็บนี้:
:e bar
- เปิดแท็บใหม่และเปลี่ยนเป็น:
:tabnew
- เปิดบัฟเฟอร์ใหม่ในแท็บนี้:
:e baz
- ถ้าฉันอยู่ในบัฟเฟอร์นี้และทำ
:bnext
หรือ:bprevious
ฉันจะอยู่ในbaz
บัฟเฟอร์ (เพราะเป็นเพียงคนเดียวในแท็บนี้) - ถ้าฉันไปที่แท็บก่อนหน้า
:tabprevious
และดำเนินการหลายครั้ง:bnext
ฉันจะสลับระหว่างfoo
และbar
บัฟเฟอร์เท่านั้น แต่จะไม่เห็นbaz
ดังนั้นคำถามของฉันมาที่นี่:มันเป็นไปได้ที่จะผูกชุดของบัฟเฟอร์ไปยังแท็บและทำให้เป็นกลุ่มที่ไม่อนุญาตให้เข้าถึงบัฟเฟอร์บางส่วนจากแท็บอื่นกว่าที่พวกเขาตั้งใจจะอยู่ใน?
หมายเหตุ:ฉันทราบว่าการใช้:b [myBuffer]
จะเป็นวิธีหนึ่งในการเก็บบัฟเฟอร์ไว้ในแท็บ แต่เมื่อฉันมีไฟล์ 3 หรือ 4 ไฟล์ที่จะแก้ไขฉันรู้สึกว่าฉันใช้การแมปของฉันเร็วกว่าการพิมพ์ชื่อบัฟเฟอร์(แม้ว่าฉันจะทำได้ พิมพ์ตัวอักษรเพียงบางส่วนให้ตรงกับชื่อบัฟเฟอร์)
alt+tab
(หรือแย่เมาส์) รู้สึกมากน้อยง่ายกว่าเปลี่ยนแท็บภายในกลุ่ม