Bài viết này cung cấp một hướng dẫn chuyên sâu về các tính năng tìm kiếm mạnh mẽ, các chế độ Visual Mode, và lệnh
thay thế (substitute) trong Vim. Đây là những công cụ thiết yếu giúp tăng tốc độ điều hướng và chỉnh sửa văn bản,
đặc biệt là trong các tệp mã nguồn lớn.
Vượt ra ngoài các lệnh di chuyển cơ bản, Vim cung cấp một bộ công cụ nâng cao để định vị và thao tác trên các vùng văn bản lớn một cách hiệu quả. Khả năng tìm kiếm của Vim không chỉ dừng lại ở việc tìm một chuỗi ký tự, mà còn có thể được kết hợp với các lệnh chỉnh sửa để thực hiện thay đổi phức tạp. Tương tự, Visual Mode biến các thao tác trên khối văn bản trở nên trực quan và mạnh mẽ.
Bài viết này sẽ giúp bạn:
Thực hiện tìm kiếm xuôi, ngược và điều hướng giữa các kết quả.
Sử dụng Visual Mode (dạng dòng và khối) để chọn và chỉnh sửa văn bản.
Áp dụng lệnh substitute để tìm và thay thế văn bản một cách linh hoạt.
Kết hợp các kỹ thuật này để tạo ra một quy trình làm việc hiệu quả.
Tìm kiếm là một trong những tính năng được sử dụng thường xuyên nhất trong Vim, không chỉ để tìm kiếm mà còn là một công cụ "motion" (di chuyển) cực kỳ mạnh mẽ.
Tìm kiếm xuôi (Forward Search): Sử dụng phím /. Gõ / theo sau bởi từ khóa bạn muốn tìm và nhấn Enter. Con trỏ sẽ nhảy đến kết quả khớp đầu tiên từ vị trí hiện tại xuống cuối tệp.
Ví dụ:
/usb_stick
Tìm kiếm ngược (Backward Search): Sử dụng phím ?. Tương tự như tìm kiếm xuôi nhưng theo hướng từ vị trí hiện tại lên đầu tệp.
Di chuyển giữa các kết quả:
n (next): Nhảy tới kết quả khớp tiếp theo theo cùng chiều tìm kiếm.
N (Next, ngược chiều): Nhảy tới kết quả khớp trước đó (ngược chiều tìm kiếm).
Đây là lúc sức mạnh thực sự của Vim được thể hiện. Bạn có thể coi một lượt tìm kiếm như một lệnh "motion".
Xóa đến một từ khóa:d/pattern sẽ xóa từ vị trí con trỏ đến khi bắt đầu từ khóa pattern.
Ví dụ:
# Xóa mọi thứ từ vị trí hiện tại đến từ "chunks"d/chunks
Thay đổi đến một từ khóa:c/pattern sẽ xóa văn bản như trên và đưa bạn vào Chế độ Chèn.
Ví dụ:
# Thay đổi mọi thứ đến từ "tasks"c/tasks
Tối ưu hóa hiển thị
Để các kết quả tìm kiếm luôn được tô sáng, hãy bật tùy chọn hlsearch. Thêm vào đó, việc tùy chỉnh màu sắc cho kết
quả tìm kiếm giúp tăng cường khả năng nhận diện, đặc biệt là kết quả khớp gần nhất với con trỏ.
Visual Mode cho phép bạn chọn một vùng văn bản và áp dụng lệnh lên toàn bộ vùng đó, tương tự như việc bôi đen bằng chuột trong các trình soạn thảo khác.
Thành thạo tìm kiếm, Visual Mode và lệnh substitute sẽ thay đổi hoàn toàn cách bạn tương tác với văn bản trong Vim. Thay vì thực hiện các chỉnh sửa lặp đi lặp lại một cách thủ công, bạn có thể ra lệnh cho Vim thực hiện chúng một cách chính xác và nhanh chóng.
Hãy dành thời gian luyện tập kết hợp các kỹ thuật này: tìm một từ khóa bằng /, nhảy đến các kết quả bằng n, chọn một đoạn bằng Visual Mode, và thực hiện thay thế hàng loạt bằng :s.