ฉันจะปิดแท็บที่เปิดอยู่ทั้งหมดได้ในครั้งเดียวได้อย่างไร


403

หากฉันเปิด 10 แท็บฉันต้องปิดแต่ละแท็บโดยใช้ ": q" แยกกัน

ฉันจะปิดพวกเขาทั้งหมดในครั้งเดียวได้อย่างไร

คำตอบ:


595

วิธีที่สั้นที่สุด / ง่ายที่สุด / เร็วที่สุดคือ:

:qa

หากต้องการบันทึกงานในทุกแท็บและออก:

:wqa

29
: wqa สามารถทำให้ง่ายขึ้นเพียง: xa
MattK

144
ไม่เคยใช้:xไม่เคยไม่เคยไม่เคย คุณจะพลาดวันหนึ่งและทำการ:Xเข้ารหัสไฟล์ของคุณและคุณจะไม่รู้จักกุญแจ
Aaron McMillin

29
@AaronMcMillin ฉันใช้: x ตลอดเวลาและไม่เคยเข้ารหัสไฟล์โดยไม่ตั้งใจ
Singlestone

13
ดีสำหรับฉันแน่นอน! ฉันอาจจะเป็นข้อยกเว้น อย่างน้อยฉันก็เป็นจุดข้อมูล ไม่เคยพูดว่า "ไม่เคยไม่เคย" นั่นคือคำขวัญของฉัน :)
Singlestone

16
@AaronMcMillin: ฉันรู้ว่านี้เป็นคำถามที่เก่า แต่อย่างน้อยในกลุ่มปัจจุบันของฉันคุณจะต้อง (1) ประเภทตัวพิมพ์ใหญ่X(2) ตั้งใจใส่รหัสผ่าน (3) ตั้งใจป้อนเดียวกันรหัสผ่านอีกครั้งก่อนหน้านี้จะเป็น ปัญหา. ฉันไม่เห็นว่าเป็นไปได้มาก ...
jwd

203

ฉันมักจะใช้:tabo( :tabonly) เพื่อปิดแท็บอื่น ๆ ทั้งหมด


14
“ ปิดแท็บอื่น ๆ ทั้งหมด” ทำได้เร็วกว่ามากโดย“: เปิด” (สำหรับ“ เท่านั้น” คือ“ หน้าต่างเดียวที่จะแสดง”) :)
Bombe

8
@ Bombe: สำหรับฉันมันไม่ทำงานเช่นกัน :onปิดหน้าต่างเท่านั้นไม่ใช่แท็บอย่างน้อยใน vim ของฉัน 7.3.3
Boldewyn

1
:taboคือว่าสิ่งที่ผมกำลังมองหา ฉันจะลงคะแนนให้คุณ 30 ครั้งถ้าทำได้ :)
Justin บังคับ

สิ่งนี้มีประโยชน์ด้านที่ยังคงเก็บแท็บทั้งหมดในรายการบัฟเฟอร์ :lsคุณสามารถดูได้ด้วย ดังนั้นคุณสามารถกู้คืนแท็บได้ในภายหลังถ้าต้องการ หรือแปลงเป็นหน้าต่าง ฯลฯ
wisbucky

24

สามารถทำได้ด้วยคำสั่งต่อไปนี้ (ในโหมดปกติหรือโหมดหลบหนี):

:tabdo :q

"tabdo" เห็นได้ชัดว่าดำเนินการคำสั่งสำหรับแท็บที่เปิดอยู่ทั้งหมด


หมายเหตุนี่ไม่ใช่คำตอบของฉัน ฉันย้ายสิ่งนี้ออกจากคำถามที่ไม่ใช่ต้นฉบับไปที่นี่
mmcdole


15

คุณสามารถใช้คำสั่ง Vim Exเหล่านี้เพื่อออกจาก Windows หลาย ๆ อันและบัฟเฟอร์ :

  1. :qa :qall

    ออกเป็นกลุ่มยกเว้นมีบางบัฟเฟอร์ที่เปลี่ยนไป (ใช้:bmodเพื่อไปยังบัฟเฟอร์ที่แก้ไขถัดไป) เมื่อ 'autowriteall' :wqallถูกตั้งค่าทั้งหมดบัฟเฟอร์เปลี่ยนแปลงจะถูกเขียนเช่น

  2. :conf qa :confirm qall

    ออกเป็นกลุ่ม แสดงพรอมต์เมื่อมีการเปลี่ยนแปลงบัฟเฟอร์บางส่วน :confirmดู

  3. :qa! :qall!

    ออกเป็นกลุ่ม การเปลี่ยนแปลงใด ๆ กับบัฟเฟอร์หายไป โปรดดูเพิ่มเติม:cquitว่าทำเช่นเดียวกัน แต่ออกด้วยค่าที่ไม่ใช่ศูนย์

  4. :quita :quitall :quita! :quitall!

    :qallเช่นเดียวกับ

  5. :wqa :wqall :xa :xall

    เขียนบัฟเฟอร์ที่เปลี่ยนแปลงทั้งหมดและออกจากกลุ่ม หากมีบัฟเฟอร์ที่ไม่มีชื่อไฟล์ซึ่งอ่านได้อย่างเดียวหรือไม่สามารถเขียนได้ด้วยเหตุผลอื่น Vim จะไม่ออกจากการทำงาน

  6. :conf wqa :confirm wqall :conf xa :confirm xall

    เขียนบัฟเฟอร์ที่เปลี่ยนแปลงทั้งหมดและออกจากกลุ่ม แสดงพรอมต์เมื่อบัฟเฟอร์บางอย่างอ่านได้อย่างเดียวหรือไม่สามารถเขียนได้ด้วยเหตุผลอื่น :confirmดู

  7. :wqa! :xa! :wqall! :xall!

    เขียนบัฟเฟอร์ที่ถูกเปลี่ยนทั้งหมดแม้แต่ตัวที่อ่านได้อย่างเดียวและออกจากกลุ่ม หากมีบัฟเฟอร์ที่ไม่มีชื่อไฟล์หรือไม่สามารถเขียนได้ด้วยเหตุผลอื่น Vim จะไม่ออกจากการทำงาน

หากต้องการอ่านเกี่ยวกับสิ่งเหล่านี้ใน Vim ให้พิมพ์คำสั่ง Ex ต่อไปนี้

:help window-exit


0

นี่คือวิธี Dark Side ของการปิด VIM INSTANCES ทั้งหมดบน Linux / Mac

:!killall vim -9

อย่าใช้มัน มันทำในสิ่งที่คุณถาม แต่อาจไม่ใช่วิธีที่ดีที่สุด แต่เป็นวิธีที่สนุก

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