Vim trong Linux là một trình soạn thảo văn bản được sử dụng rộng rãi bởi các nhà phát triển và quản trị hệ thống trên toàn thế giới. Không chỉ nổi bật với khả năng tùy chỉnh cao, Vim còn cung cấp nhiều chế độ làm việc và các lệnh hữu ích giúp việc chỉnh sửa tệp trở nên nhanh chóng và hiệu quả. Trong bài viết này, Vietnix sẽ cùng bạn sẽ khám phá từ cơ bản đến nâng cao về Vim trong Linux!
Vim trong Linux là gì?
Vim (viết tắt của vi improved) là một trình soạn thảo văn bản nổi tiếng, được sử dụng rộng rãi trên hầu hết các hệ điều hành Unix (kể cả Linux, BSD), Windows và macOS. Được sáng tạo bởi Bill Joy vào năm 1976, Vim ban đầu chủ yếu phục vụ cho việc lập trình, code, chỉnh sửa file cấu hình và các tác vụ liên quan.
Đến cuối thập niên 1980, Vim đã được nâng cấp bởi lập trình viên người Hà Lan Bram Moolenaar, biến nó thành một công cụ mạnh mẽ hơn với nhiều tính năng bổ sung và hỗ trợ cả giao diện văn bản lẫn đồ họa.
Tính đến thời điểm hiện tại, Vim nổi tiếng với hiệu suất cao và khả năng dễ dàng tùy biến. Đặc biệt, Vim là một phần mềm miễn phí và mã nguồn mở, cho phép người dùng hoàn toàn điều khiển bằng bàn phím mà không cần dùng đến menu hay chuột. Ví dụ, để chèn văn bản vào file, người dùng chỉ cần nhấn phím i và gõ các lệnh mong muốn.
6 ưu điểm của trình soạn thảo Vim
- Phần mềm được phổ biến và được cài đặt ở mọi nơi: Vim thường được cài đặt mặc định trên hầu hết các bản phân phối Linux và có sẵn trên hầu hết các hệ thống Unix-like. Bất kể bạn sử dụng hệ điều hành nào, Vim luôn sẵn sàng để sử dụng.
- Tốc độ nhanh chóng và hiệu quả: Giao diện dựa trên bàn phím của Vim cho phép bạn chỉnh sửa văn bản với tốc độ và hiệu suất vượt trội. Đặc biệt, khi đã thành thạo các lệnh và phím tắt, bạn sẽ tiết kiệm được rất nhiều thời gian so với việc sử dụng chuột.
- Tính linh hoạt, khả năng tùy biến cao: Vim cho phép bạn tùy chỉnh từ plugin đến phím tắt và nhiều cài đặt khác, tạo nên một môi trường làm việc linh hoạt và phù hợp với nhu cầu của mỗi cá nhân.
- Khả năng mở rộng, linh hoạt nâng cao hiệu : Dù bạn làm việc với một file văn bản nhỏ hay lớn, Vim vẫn đảm bảo hiệu suất phản hồi nhanh và mở rộng tốt, đảm bảo ổn định.
- Hỗ trợ đa dạng giao diện: Vim hỗ trợ cả giao diện người dùng điều khiển bằng văn bản (TUI) và giao diện người dùng đồ họa (GUI), mang lại sự lựa chọn linh hoạt cho người dùng cho giao diện ưa thích, quen thuộc của họ,
- Phím tắt dòng lệnh đơn giản: Các lệnh và phím tắt trong Vim rất dễ nhớ và sử dụng. Ví dụ, i để chèn văn bản, d để xóa, q để thoát,…
5 chế độ hoạt động của Vim
Vim cung cấp nhiều chế độ hoạt động, mỗi chế độ phục vụ một chức năng cụ thể như chỉnh sửa, sao chép, chèn văn bản, và nhiều tác vụ khác. Dưới đây là 5 chế độ hoạt động chính của Vim do Vietnix tổng hợp:
- Chế độ Normal (Bình thường): Đây là chế độ mặc định khi bạn mở Vim. Trong chế độ này, bạn có thể di chuyển qua các tài liệu và thực hiện các thao tác như sao chép, dán, xóa, và nhiều thao tác khác chỉ với các phím đơn giản.
- Chế độ Insert (Chèn văn bản): Chế độ này cho phép bạn chỉnh sửa và chèn văn bản bằng cách gõ và xóa ký tự, tương tự như cách hoạt động của các trình soạn thảo văn bản hiện đại. Bạn có nhiều cách để vào chế độ Insert từ chế độ Normal, cụ thể như:
- Nhấn phím i để vào chế độ chèn tại vị trí con trỏ hiện tại.
- Nhấn phím I để vào chế độ chèn tại đầu dòng hiện tại.
- Nhấn phím a để vào chế độ chèn sau vị trí con trỏ hiện tại.
- Nhấn phím A để vào chế độ chèn tại cuối dòng hiện tại.
- Nhấn phím o để chèn thêm một dòng mới dưới vị trí hiện tại.
- Chế độ Visual (Chế độ nhìn trực quan): Chế độ này cho phép bạn chọn và chỉnh sửa văn bản một cách trực quan. Để chuyển sang chế độ Visual, nhấn phím v để bắt đầu việc chọn văn bản. Sau đó, bạn có thể di chuyển con trỏ đến vị trí mong muốn và sử dụng các lệnh của chế độ Normal để chỉnh sửa phần văn bản đã chọn.
- Chế độ Command-line (Dòng lệnh): Chế độ này cho phép bạn chạy các lệnh nâng cao hơn. Để chuyển từ chế độ Normal sang chế độ dòng lệnh, nhấn : để mở hộp lệnh. Sau đó, bạn có thể gõ lệnh và nhấn ENTER để bắt đầu thực hiện dòng lệnh
. - Chế độ Replace (Thay thế): Trong chế độ này, bạn có thể gõ đè lên văn bản hiện có. Để chuyển sang chế độ Replace từ chế độ Normal, nhấn phím R và tiếp tục gõ văn bản cần thay thế.
Bên cạnh đó, nếu như bạn là một người chuyên sử dụng hệ điều hành Linux bạn có thể thử ngay tính năng soạn thảo văn bản tương tự với lệnh nano để hiểu thêm chi tiết về cách hoạt động của phần mềm.
Và bạn cũng có thể mở rộng thêm mọi kỹ năng từ cơ bản đến nâng cao trên hệ điều hành bằng các câu lệnh trong Linux cơ bản chi tiết.
7 bước cơ bản sử dụng Vim trong Linux
Bước 1: Mở cửa sổ Terminal
Trước tiên, bạn cần mở terminal từ hệ điều hành Linux của mình.
Ví dụ, trên Ubuntu, bạn có thể mở terminal bằng tổ hợp phím CTRL+ALT+T. Người dùng macOS cũng có thể thực hiện theo hướng dẫn này vì Vim cũng có sẵn trên hệ điều hành macOS.
Bước 2: Tạo một file bất kỳ
Sau khi mở terminal, bạn tạo file mới bằng cách gõ lệnh vim kèm theo tên file, ví dụ ở đây tên file bạn muốn tạo tên là file1.txt:
vim file1.txt
Nếu Vim chưa được cài đặt trên hệ thống của bạn, bạn có thể cài đặt bằng các lệnh sau:
- Với các bản phân phối dựa trên Debian: sudo apt install vim
- Với các bản phân phối dựa trên Red Hat: sudo yum install vim
- Với người dùng macOS: brew install vim
Bước 3: Chèn văn bản vào file
Để chèn văn bản vào file, nhấn phím i . Điều này sẽ đưa bạn đến chế độ chèn từ chế độ mặc định thông thường của Vim. Bây giờ, nhập văn bản theo nhu cầu của bạn vào trong file. Ở đây, Vietnix sẽ gõ văn bản sau vào file “file1.txt” vừa tạo:
Hello user, I am using Ubuntu.
Welcome to Linuxsimply.com
Khi hoàn thành việc chèn văn bản, nhấn phím Esc để quay lại chế độ bình thường. Để lưu file bạn cần nhập :w
và nhấn ENTER:
Bạn cũng có thể đổi tên file bằng cách gõ :w newfile.txt
và nhấn ENTER. Ngay lập tức màn hình sẽ hiện thông báo là file đã đổi tên từ file1.txt thành newfile.txt.
Bước 4: Điều hướng qua file
Vim cung cấp nhiều tính năng điều hướng hiệu quả và vượt trội. Ví dụ, nếu bạn muốn đến trực tiếp dòng thứ 5 trong file, bạn có thể thực hiện dễ dàng bằng các lệnh của Vim mà không cần phải sử dụng phím mũi tên nhiều lần. Tính năng này đặc biệt hữu ích khi làm việc với các file có kích thước lớn.
- Kế đó, bạn muốn đi thẳng tới dòng số 2 của nội dung file, bạn chỉ cần gõ
:2
và nhấn ENTER.
- Tương tự, bạn có thể nhanh chóng nhảy đến bất kỳ dòng nào trong file bằng cách gõ :<số dòng> và nhấn ENTER. Ví dụ, để đến dòng số 5, chỉ cần gõ
:5
. Nếu bạn muốn di chuyển thẳng đến cuối file, gõ:$
và nhấn ENTER sẽ đưa bạn đến cuối nội dung ngay lập tức.
Bước 5: Chỉnh sửa văn bản
Bạn có thể chỉnh sửa văn bản trong file bằng cách di chuyển tới dòng mong muốn và thực hiện các thao tác như xóa, hoàn tác, đánh dấu, sao chép, dán,…
- Xóa dòng: Để xóa dòng số 2, bạn cần gõ
:d
và nhấn ENTER. - Hoàn tác: Bạn hãy nhấn phím u để hoàn tác thao tác trước. Nhiều thao tác cũng có thể được hoàn tác bằng cách nhấn phím u nhiều lần. Ví dụ: để lấy lại dòng đã xóa, Vietnix sẽ thực hiện thao tác
undo
sau:
Lấy lại dòng đã xóa bằng cách nhấn phím u
- Đánh dấu văn bản: Bạn nhấn
v
để vào chế độ Visual, sau đó chọn văn bản bằng các phím mũi tên. Khi văn bản đã được chọn, bạn có thể áp dụng các lệnh để thay đổi màu nền hoặc màu chữ. Mục đích của thao tác này nhằm tăng khả năng đọc và nắm thông tin nhờ việc làm nổi bật các phần khác nhau của đoạn code phức tạp.
- Sao chép và dán: Để sao chép văn bản, chọn văn bản bạn muốn sao chép rồi nhấn Y. Sau đó, di chuyển con trỏ đến vị trí cần dán và nhấn p để dán. Ở ví dụ dưới đây, bạn có thể thấy Vietnix đã copy dòng 1
“Hello user, I am using Ubuntu.”
đã được dán tại dòng thứ 3.
Bước 6: Tìm kiếm văn bản trong file
Để tìm kiếm một pattern cụ thể trong file, bạn chỉ cần gõ /pattern và nhấn ENTER. Ví dụ, để tìm từ “user”, gõ /user, tiếp đó, bạn cần chọn nhấn n để chuyển đến kết quả tiếp theo hoặc shift+n để quay lại kết quả trước. Sau khi chạy /user lệnh, từ “user” đã được bôi đen.
Bước 7: Thoát file sau khi hoàn thành thao tác
Để thoát khỏi file sau khi lưu các thay đổi, thì bạn gõ :x
hoặc :wq.
Nếu bạn muốn thoát mà không lưu thay đổi, gõ :q!
.
Tổng hợp hệ thống bảng 26 lệnh Vim chuyên dùng
Lệnh | Tác vụ |
---|---|
i | Chuyển sang chế độ chèn, bắt đầu trước vị trí con trỏ hiện tại. |
a | Chuyển sang chế độ chèn, bắt đầu sau vị trí con trỏ hiện tại. |
o | Chuyển sang chế độ chèn sau khi thêm một dòng trống dưới vị trí con trỏ hiện tại. |
v | Chuyển sang chế độ visual (chế độ nhìn trực quan). |
r | Chuyển sang chế độ thay thế (replace mode). |
Esc | Chuyển sang chế độ lệnh (command mode). |
:w | Lưu file. |
:q | Thoát khỏi file. |
:q! | Thoát mà không lưu thay đổi. |
:wq | Lưu và thoát khỏi file. |
:set number hoặc :set nu | Đặt số dòng cho file. |
:set number! hoặc :set nu! | Bỏ số dòng trong file. |
:u | Hoàn tác lần chỉnh sửa cuối. |
CTRL+r | Làm lại lần chỉnh sửa vừa hoàn tác. |
/ | Tìm kiếm về phía trước trong file. |
? | Tìm kiếm về phía sau trong file. |
dd | Xóa dòng. Sử dụng 2dd để xóa hai dòng. |
x | Xóa ký tự. |
dw | Xóa từ. |
dG | Xóa tất cả từ vị trí hiện tại đến cuối file. |
yy hoặc Y | Sao chép dòng. Sử dụng 2yy hoặc 2Y để sao chép hai dòng. |
p | Dán văn bản sau vị trí con trỏ hiện tại. |
P | Dán văn bản trước vị trí con trỏ hiện tại. |
:%s/word1/word2/g | Tìm tất cả từ “word1” và thay thế bằng “word2”. |
gUh | Chuyển chữ cái tiếp theo thành chữ hoa. |
guh | Chuyển chữ cái tiếp theo thành chữ thường. |
Hệ thống 23 phím tắt điều hướng di chuyển trong file
Lệnh | Tác vụ |
---|---|
h | Di chuyển con trỏ sang trái. |
l | Di chuyển con trỏ sang phải. |
k | Di chuyển con trỏ lên một dòng. |
j | Di chuyển con trỏ xuống một dòng. |
e | Di chuyển con trỏ đến cuối từ. |
H | Di chuyển con trỏ đến đầu màn hình. |
M | Di chuyển con trỏ đến giữa màn hình. |
L | Di chuyển con trỏ đến cuối màn hình. |
:2 | Đi đến dòng số 2. |
:+3 | Tiến lên 3 dòng. |
:-3 | Lùi lại 3 dòng. |
G | Đi đến dòng cuối cùng của file. |
gg | Đi đến dòng đầu tiên của file. |
w | Tiến lên một từ. Dùng 2w để tiến lên hai từ. |
W | Tiến lên một từ (phân cách bằng khoảng trắng). |
b | Lùi lại một từ. Dùng 2b để lùi lại hai từ. |
B | Lùi lại một từ (phân cách bằng khoảng trắng). |
} | Tiến lên một đoạn văn. Dùng 3} để tiến lên ba đoạn văn. |
{ | Lùi lại một đoạn văn. Dùng 3{ để lùi lại ba đoạn văn. |
]s | Đi đến từ sai chính tả tiếp theo. |
[s | Đi đến từ sai chính tả trước đó. |
Y} | Sao chép đoạn văn tiếp theo. |
y3w | Sao chép ba từ tiếp theo. |
Hệ thống 11 lệnh chỉnh sửa màn hình chia nhỏ
Lệnh | Tác vụ |
---|---|
:split | Chia cửa sổ Vim theo chiều ngang. |
:vsplit | Chia cửa sổ Vim theo chiều dọc. |
CTRL+wk | Di chuyển đến phần chia phía trên phần hiện tại. |
CTRL+wj | Di chuyển đến phần chia phía dưới phần hiện tại. |
CTRL+wh | Di chuyển đến phần chia bên trái phần hiện tại. |
CTRL+wl | Di chuyển đến phần chia bên phải phần hiện tại. |
CTRL+w+ | Tăng chiều cao của phần chia hiện tại. |
CTRL+w- | Giảm chiều cao của phần chia hiện tại. |
CTRL+w> | Tăng chiều rộng của phần chia hiện tại. |
CTRL+w< | Giảm chiều rộng của phần chia hiện tại. |
:q | Đóng phần chia màn hình. |
Câu hỏi thường gặp
Có thể sử dụng Vim để xem nội dung của một tệp mà không cần chỉnh sửa không?
Có thể. Người dùng có thể tận dụng xem nhanh nội dung của một tệp với tính năng sẵn có của Vim.
Có thể sử dụng Vim để ghi lại các thao tác của bạn và lặp lại chúng không?
Có thể. Bạn có thể sử dụng tính năng macro (ghi hình) trong Vim nhờ sự hữu ích về thời gian, năng suất và hạn chế một số lỗi.
Lời kết
Nhìn chung, Vim trong Linux không chỉ là một công cụ soạn thảo văn bản hữu ích trên hệ điều hành Linux. Mong rằng sau những chia sẻ của Vietnix bạn đã hiểu hơn về cách sử dụng Vim. Hãy để lại bình luận bên dưới nếu cần hỗ trợ và đóng góp thêm thông tin đến . Chúc bạn thành công!