Làm cách nào để đóng tất cả các tab đang mở cùng một lúc?


403

Nếu tôi có 10 tab được mở, tôi phải đóng từng tab bằng cách sử dụng ": q" riêng biệt.

Làm thế nào tôi có thể đóng tất cả chúng cùng một lúc?

Câu trả lời:


595

Cách ngắn nhất / đơn giản nhất / nhanh nhất sẽ là:

:qa

Để lưu công việc trong tất cả các tab và thoát:

:wqa

29
: wqa có thể được đơn giản hóa thành: xa
MattK

144
Không bao giờ sử dụng :xkhông bao giờ không bao giờ. Bạn sẽ làm hỏng một ngày nào đó và :Xmã hóa tệp của mình và bạn sẽ không biết khóa.
Aaron McMillin

29
@AaronMcMillin Tôi sử dụng: x mọi lúc và chưa bao giờ vô tình mã hóa một tệp.
Singlestone

13
Tốt cho tôi thực sự! Tôi có thể là ngoại lệ. Tôi ít nhất là một điểm dữ liệu. Không bao giờ nói "không bao giờ không bao giờ", đó là phương châm của tôi. :)
Singlestone

16
@AaronMcMillin: Tôi biết đây là một câu hỏi cũ, nhưng ít nhất trên Vim hiện tại của tôi, bạn sẽ phải (1) nhập chữ hoa X(2) vô tình nhập mật khẩu, (3) vô tình nhập lại cùng một mật khẩu, trước khi điều này xảy ra vấn đề. Tôi không thấy điều đó rất có thể ...
jwd

203

Tôi thường sử dụng :tabo( :tabonly) để đóng tất cả các tab khác.


14
Càng đóng tất cả các tab khác, thì Cameron còn đạt được tốc độ nhanh hơn nhiều: :)
Bombe

8
@Bombe: đối với tôi nó cũng không hoạt động. :onchỉ đóng các cửa sổ , không đóng các tab, ít nhất là trong vim 7.3.3 của tôi.
Boldewyn

1
:tabochính xác là những gì tôi đang tìm kiếm. Tôi sẽ nâng bạn 30 lần nếu tôi có thể. :)
Justin Force

Điều này có một lợi ích phụ là nó vẫn giữ tất cả các tab trong danh sách bộ đệm. Bạn có thể thấy chúng với :ls. Vì vậy, bạn vẫn có thể khôi phục các tab sau nếu bạn muốn. Hoặc chuyển đổi chúng sang windows, v.v.
wvducky

24

Điều đó có thể được thực hiện bằng lệnh sau (ở chế độ bình thường hoặc thoát):

:tabdo :q

"tabdo" rõ ràng thực thi lệnh cho tất cả các tab đang mở.


Lưu ý, đây không phải là câu trả lời của tôi. Tôi chuyển câu hỏi này ra khỏi câu hỏi ban đầu xuống đây.
mmcdole

18

Thêm vào những gì fuentesjr nói:

:qa!

Sẽ buộc thoát khỏi tất cả các tab, nếu bạn không quan tâm đến việc tiết kiệm.


15

Bạn có thể sử dụng bất kỳ lệnh Vim Ex nào để thoát nhiều Windows và bộ đệm :

  1. :qa :qall

    Thoát Vim, trừ khi có một số bộ đệm đã được thay đổi. (Sử dụng :bmodđể đi đến bộ đệm sửa đổi tiếp theo). Khi 'autowriteall' được đặt, tất cả các bộ đệm đã thay đổi sẽ được viết, như thế nào :wqall.

  2. :conf qa :confirm qall

    Thoát Vim. Đưa ra lời nhắc khi một số bộ đệm đã được thay đổi. Xem :confirm.

  3. :qa! :qall!

    Thoát Vim. Mọi thay đổi về bộ đệm đều bị mất. Cũng thấy :cquit, nó làm tương tự nhưng thoát với giá trị khác không.

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

    Tương tự như :qall.

  5. :wqa :wqall :xa :xall

    Viết tất cả các bộ đệm đã thay đổi và thoát Vim. Nếu có bộ đệm không có tên tệp, chỉ đọc hoặc không thể ghi vì lý do khác, Vim sẽ không thoát.

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

    Viết tất cả các bộ đệm đã thay đổi và thoát Vim. Đưa ra lời nhắc khi một số bộ đệm chỉ đọc hoặc không thể được viết vì lý do khác. Xem :confirm.

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

    Viết tất cả các bộ đệm đã thay đổi, ngay cả những bộ đệm chỉ đọc và thoát Vim. Nếu có bộ đệm không có tên tệp hoặc không thể được ghi vì lý do khác, Vim sẽ không thoát.

Để đọc về những điều này trong Vim, hãy gõ lệnh Ex sau

:help window-exit


0

Đây là một cách tối kỵ trong việc đóng TẤT CẢ CÁC VỊ TRÍ VIM trên Linux / Mac

:!killall vim -9

Đừng sử dụng nó. Nó làm những gì bạn yêu cầu nhưng có lẽ không phải là cách tốt nhất nhưng là cách thú vị

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.