Vim - Tìm kiếm
Tìm kiếm là hành động rất phổ biến và đó là một trong những hành động chúng tôi sử dụng hầu hết thời gian. Trong chương này, chúng ta sẽ thấy một số lệnh cho phép thực hiện các hành động này một cách hiệu quả.
Trong chương này, chúng ta sẽ thảo luận về các mục sau:
- Thiết lập tìm kiếm
- Tìm kiếm trong tệp hiện tại
- Tìm kiếm trong nhiều tệp
- Tìm kiếm trong tệp trợ giúp
Tìm kiếm cài đặt liên quan
Để thực hiện tìm kiếm gia tăng, hãy thực hiện lệnh sau:
:set incsearch
Để đánh dấu tìm kiếm, hãy thực hiện lệnh sau:
:set hlsearch
Lệnh này sẽ tự động đánh dấu các kết quả phù hợp hiện tại. Ví dụ trong hình ảnh dưới đây, từ cáo được tô sáng -
Để tắt tìm kiếm gia tăng và được đánh dấu, hãy thực hiện các lệnh sau:
:set noincsearch
:set nohlsearch
Tìm kiếm trong tệp hiện tại
Tìm kiếm theo hướng phía trước
Sử dụng các lệnh sau để thực hiện tìm kiếm theo hướng về phía trước -
Sr.No | Lệnh & Mô tả |
---|---|
1 | /<expression> Biểu thức tìm kiếm theo hướng chuyển tiếp |
2 | n Tìm lần xuất hiện tiếp theo. Điều này giống nhau và tìm tiếp theo |
3 | N Tìm lần xuất hiện trước đó. Điều này giống như tìm trước |
4 | // Lặp lại tìm kiếm chuyển tiếp trước đó |
Tìm kiếm theo hướng ngược lại
Sử dụng các lệnh sau để thực hiện tìm kiếm theo hướng ngược lại
Sr.No | Lệnh & Mô tả |
---|---|
1 | ?<expression> Biểu thức tìm kiếm theo hướng lùi |
2 | n Tìm lần xuất hiện trước đó. Cái này giống nhau và tìm cái trước |
3 | N Tìm lần xuất hiện tiếp theo. Điều này giống như tìm tiếp theo |
4 | ?? Lặp lại tìm kiếm ngược trước đó |
Tìm kiếm từ dưới con trỏ
Đặt con trỏ dưới bất kỳ từ nào và thực hiện các lệnh sau để thực hiện thao tác tìm kiếm -
Sr.No | Lệnh & Mô tả |
---|---|
1 | * Tìm kiếm lần xuất hiện tiếp theo của từ hiện tại |
2 | # Tìm kiếm lần xuất hiện trước của từ hiện tại |
Tìm kiếm trong nhiều tệp
Sử dụng lệnh vimgrep, chúng ta có thể tìm kiếm <expression> trong nhiều tệp. Ví dụ bên dưới chuỗi tìm kiếm lệnh -Jarvis trong tất cả các tệp văn bản.
:vimgrep Jarvis *.txt
Lưu ý rằng để đến lần xuất hiện tiếp theo và lần xuất hiện trước đó, chúng ta phải sử dụng các lệnh sau:
Sr.No | Lệnh & Mô tả |
---|---|
1 | :cn Chuyển đến lần xuất hiện tiếp theo của biểu thức |
2 | :cN Chuyển đến lần xuất hiện trước của biểu thức |