2012-05-26 30 views
11

Tôi đang sử dụng các tùy chọn incsearchhlsearch. Tất cả các kết quả phù hợp được đánh dấu sau khi tôi nhấn enter, nhưng chỉ có kết quả phù hợp khi tôi nhập. Tôi muốn làm nổi bật tất cả các kết quả phù hợp khi tôi nhập.Vim: đánh dấu tất cả các kết quả phù hợp trong incsearch

Làm cách nào để có hành vi đó?

+0

Tôi đã rối tung xung quanh trong Sublime Text hôm nay (Tôi là một người dùng ST hạnh phúc cho đến khi tôi khám phá lại Vim) và đây là điều tôi muốn thấy ở Vim cuối cùng –

+0

có thể trùng lặp [Emacs style highlighting for incremental search in vim ] (http://stackoverflow.com/questions/4791584/emacs-style-highlighting-for-incremental-search-in-vim). Câu trả lời nên được hợp nhất – cfi

Trả lời

7

Thật không may, điều này là không thể mà không cần viết tìm kiếm của riêng bạn trong Vimscript (chụp mỗi phím qua getchar(), nêu bật qua :match), hoặc vá lõi mã nguồn Vim trong C.

Lý do đây không phải là thực hiện có lẽ là để giữ cho incsearch linh hoạt và ngay lập tức.

+1

Tôi đặt cược ai đó có thể tìm ra cách để thực hiện điều này một cách không đồng bộ và chỉ sử dụng các chu kỳ miễn phí để điền vào phần còn lại của các kết quả phù hợp (và chỉ những cái có thể nhìn thấy trong bộ đệm, dù sao đi nữa). Bạn có biết nếu kiến ​​trúc của Vim sẽ cho vay tốt với loại điều đó, hay việc tính toán phải chặn sau khi được kích hoạt bởi mỗi khóa? –

+1

@StevenLu Vim vốn đã đơn luồng, vì vậy điều này có thể khó khăn. –

+0

@StevenLu Đây là hành vi mặc định trong Emacs, vì vậy tôi sẽ giả định nó không phải là khó để đạt được trong Vim quá. – Xdxter

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