ตัวเลือก 'switchbuf' ควรทำงานอย่างไร


10

ฉันเพิ่งค้นพบตัวเลือกswitchbufและพยายามที่จะใช้ แต่ฉันไม่สามารถพูดได้ว่าฉันไม่เข้าใจว่ามันจะทำงานอย่างไรหรือถ้ามันใช้ไม่ได้จริง ๆ บน Vim ของฉัน

เกี่ยวกับค่าที่เป็นไปได้ที่แตกต่างกัน doc พูดว่า:

useopenถ้ามีให้ข้ามไปที่หน้าต่างแรกที่เปิดซึ่ง
              มีบัฟเฟอร์ที่ระบุ (ถ้ามี)
usetab เช่นเดียวกับ "useopen" แต่ให้พิจารณาหน้าต่างในหน้าแท็บอื่นด้วย

ฉันได้ใช้ไปแล้วset switchbuf=useopen,usetabและคำสั่งต่อไปนี้ในอินสแตนซ์กลุ่มใหม่:

  • เปิดบัฟเฟอร์แรก :e file1
  • แยกหน้าจอ :split
  • เปิดบัฟเฟอร์ที่สอง :e file2
  • กลับไปที่บัฟเฟอร์แรก:e file1(ฉันเคยใช้ด้วย:bN)

คำสั่งสุดท้ายเพื่อไปที่บัฟเฟอร์แรกเปิดในการแยกที่สอง useopenจากสิ่งที่ฉันเข้าใจจากเอกสารคำสั่งที่ควรวางเคอร์เซอร์ไปที่แยกแรกที่บัฟเฟอร์ที่มีอยู่แล้วขอบคุณที่เปิดให้ พฤติกรรมก็เหมือนกันเมื่อฉันลองใช้คำสั่งเดียวกันกับแท็บแทนที่จะแยก

  • พฤติกรรมนี้เป็นสิ่งที่คาดหวังหรือไม่
  • ถ้าเป็นเช่นนั้นคุณสามารถอธิบายว่าตัวเลือกนี้ควรทำอย่างไร?
  • หากไม่ใช่ฉันรู้ว่าฉันจะต้องแก้ไขข้อบกพร่องของฉัน.vimrcแต่อาจมีการตั้งค่าทั่วไปที่รบกวนการทำงานswitchbufหรือไม่

คำตอบ:


10

'switchbuf'รู้สึกเป็นเกียรติโดยคำสั่ง quickfix (เช่น:cc) และคำสั่งการแบ่งบัฟเฟอร์ (เช่น:sb)

ไม่ส่งผลกระทบ:bufferและคำสั่งที่เกี่ยวข้องกับบัฟเฟอร์ "ปกติ" อื่น ๆ


1
อ้อเข้าใจแล้ว. ในขณะที่หมอบอกว่าThis option controls the behavior when switching between buffers.บรรทัดแรกและเพียงไม่กี่บรรทัดในภายหลังกล่าวถึงคำสั่ง quickfix และsbฉันคิดว่ามันเป็นส่วนเพิ่มเติมของคำสั่งบัฟเฟอร์ปกติ ขอบคุณ!
statox
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.