2012-12-11 32 views
21

tôi có thể sử dụng lệnh vim như vmột} hay vi] để tự động chọn tất cả mọi thứ trong ngoặc đơn, dấu ngoặc đơn, vvChọn dần "bên trong" và/hoặc "bên ngoài" mã khối trong vim

Khi tôi có lựa chọn như vậy, có cách nào để sau đó chọn lựa chọn ngoài cùng ngoài cùng của loại đó không? (Sau đó, từ đó, trở lại "bên trong cùng" tiếp theo?)

Tôi chắc chắn 99,9% tôi đã từng biết cách thực hiện điều này - nhưng không thể tìm thấy hoặc tìm ra ở bất cứ đâu!

Trả lời

29

Chỉ cần lặp lại các phím chọn đối tượng. Đối với ví dụ của bạn, đây sẽ là va}a} hoặc vi]i].

Tôi không nghĩ rằng có một cách để sau đó giảm lựa chọn trở lại khối bên trong. Khác với việc sử dụng Esc để xóa lựa chọn, `` để quay lại trạng thái đang bắt đầu và sau đó làm lại lựa chọn ban đầu.

+0

Cảm ơn - Tôi đã khám phá ra điều đó - vẫn đang giữ một cách để "giảm" lựa chọn. Tôi khá chắc chắn (nhưng không tích cực) mà tôi đã từng biết làm thế nào để làm điều đó! : -O – Brad

+3

Bạn cũng có thể sử dụng tính trong ví dụ này để có được lựa chọn ngoài cùng, ví dụ: v2a} hoặc v2i]. – slawek

2

Tôi biết có một chút lỗi thời, nhưng bạn có đang nói về plugin vim-expand-region không?

Dù sao, tôi vẫn thích cách qqx hơn, vì nó đã được tích hợp sẵn.

+0

Plugin tuyệt vời, cảm ơn! – Armand

Các vấn đề liên quan