Vim là một trình soạn thảo văn bản mạnh mẽ, phổ biến trong cộng đồng lập trình nhờ khả năng tùy biến, tốc độ và hiệu quả. Vim được thiết kế để giúp lập trình viên thao tác nhanh mà không cần dùng chuột, phù hợp cho cả phát triển phần mềm, quản trị hệ thống và viết tài liệu.
Vim là gì?
Vim (Vi Improved) là phiên bản nâng cấp của trình soạn thảo Vi trên Unix.
Hỗ trợ đa nền tảng: Linux, macOS, Windows.
Được đánh giá cao về khả năng mở rộng, plugin, và hiệu suất.
Tại Sao Nên Sử Dụng Vim?
Tốc độ thao tác: Không cần dùng chuột, mọi thao tác đều qua phím.
sudo apt install vim # Ubuntu/Debian
brew install vim # macOS (Chỉ cần khi muốn nâng cấp phiên bản mới, vì macOS đã có sẵn Vim mặc định)
Trên Windows
Tải từ https://www.vim.org/download.php
Các Chế Độ Trong Vim
Normal mode: Mặc định, dùng để di chuyển và thao tác.
Insert mode: Nhập nội dung.
Visual mode: Chọn vùng văn bản.
Command mode: Thực hiện lệnh (bắt đầu bằng dấu :).
Lệnh Cơ Bản Trong Vim
Lệnh
Chức năng
vim filename
Mở file bằng Vim
a
Chuyển sang Insert mode (chèn sau ký tự hiện tại)
i
Chuyển sang Insert mode (chèn trước ký tự hiện tại)
Esc
Quay về Normal mode
:w
Lưu file
:q
Thoát Vim
:q!
Thoát và không lưu
:wq
Lưu và thoát
dd
Xóa dòng hiện tại
yy
Copy dòng hiện tại
p
Paste
/text
Tìm kiếm
:set nu
Hiện số dòng
Lệnh Nâng Cao và Mẹo Tăng Năng Suất
vim-plug, Vundle (quản lý plugin)
NERDTree (quản lý file)
fzf (tìm kiếm nhanh)
Command nâng cao trong Vim
Navigation
Command
Description
w
Move to start of next word
b
Move to start of previous word
0
Go to start of line
$
Go to end of line
gg
Go to first line of document
G
Go to last line of document
n then G
Go to line number n (e.g., 5G goes to line 5)
:n
Go to line number n (e.g., 5G goes to line 5)
Search and Replace (Normal Mode)
Command
Description
/term
Search forward
?term
Search backward
n
Next match
N
Previous match
:%s/old/new/g
Replace all occurrences of "old" with "new"
:%s/old/new/gc
Replace all with confirmation
Editing Text (Normal Mode)
Command
Description
x
Delete character under cursor
dd
Delete current line
dw
Delete from cursor to end of word
u
Undo last change
Ctrl+r
Redo undone change
.
Repeat last editing command
r<char>
Replace character under cursor with
Di chuyển (Navigation)
Lệnh
Chức năng
w
Di chuyển đến đầu từ tiếp theo
b
Di chuyển đến đầu từ trước đó
0
Đến đầu dòng
$
Đến cuối dòng
gg
Đến dòng đầu tiên của file
G
Đến dòng cuối cùng của file
nG
Đến dòng số n (ví dụ: 5G đến dòng 5)
Tìm kiếm và thay thế (Search & Replace)
Lệnh
Chức năng
/từ
Tìm kiếm tiến
?từ
Tìm kiếm lùi
n
Đến kết quả tiếp theo
N
Đến kết quả trước đó
:%s/old/new/g
Thay tất cả "old" thành "new"
:%s/old/new/gc
Thay tất cả và hỏi xác nhận
Chỉnh sửa văn bản (Editing Text)
Lệnh
Chức năng
x
Xóa ký tự tại vị trí con trỏ
dd
Xóa dòng hiện tại
dw
Xóa từ từ vị trí con trỏ đến hết từ
u
Hoàn tác (undo)
Ctrl+r
Làm lại (redo)
.
Lặp lại lệnh chỉnh sửa vừa thực hiện
r<char>
Thay ký tự tại vị trí con trỏ bằng ký tự mới
Cấu Hình Vim Để Tối Ưu
Tạo file .vimrc để cấu hình cá nhân:
setnumber" Hiện số dòngsyntaxon" Bật highlight cú phápset tabstop=4" Đặt tab 4 ký tựset expandtab " Dùng space thay tabset autoindent " Tự động thụt lề
So Sánh Vim Với Các Editor Khác
Editor
Tốc độ thao tác
Tùy biến
Hỗ trợ plugin
Đa nền tảng
Dễ dùng
Vim
Rất nhanh
Cao
Cao
Có
Trung bình
VS Code
Nhanh
Cao
Rất cao
Có
Dễ
Sublime
Nhanh
Trung bình
Trung bình
Có
Dễ
Nano
Trung bình
Thấp
Không
Có
Rất dễ
Ví Dụ Thực Tế: Quy Trình Làm Việc Với Vim
Mở file: vim filename
Chỉnh sửa: i để nhập, Esc để quay về Normal mode.
Lưu file: :w
Thoát: :q hoặc :wq
Tìm kiếm: /keyword
Thay thế: :%s/old/new/g
Tổng Kết
Vim là công cụ mạnh mẽ giúp lập trình viên tối ưu năng suất, tiết kiệm thời gian và làm chủ quy trình phát triển phần mềm. Hãy bắt đầu với các lệnh cơ bản, dần nâng cao kỹ năng, và khám phá các plugin để biến Vim thành editor "đỉnh cao" cho riêng bạn.