Vim là quái gì vậy?
Vim là 1 IDE được rất nhiều người sử dụng trên thế giới, Vim có sẵn trên các nền tảng, rất gọn nhẹ, khó sử dụng, nhưng khi đã xài quen rồi thì nghiện luôn 😍
Vim sau khi cấu hình thì có thể sử dụng như 1 IDE mà các bạn thường sử dụng như VSCode, Sublime Text, Atom…
Tại sao nên dùng Vim để code?
- [Gọn, nhẹ] Xấu cực đỉnh, chính vì thế nên rất gọn nhẹ, thời gian khởi động của Vim cực kì nhanh.
- [Tùy biến] Khả năng tùy biến cực cao, mặc định thì nó khá xấu, nhưng sau khi tùy biến lại thì sẽ rất đẹp.
- [Plugins, Extensions] Rất nhiều, hỗ trợ hầu hết các ngôn ngữ về code highlight và autocomplete, dễ dàng cài đặt và cấu hình.
- [Cộng đồng] Cộng đồng cực lớn, cần gì thì sẽ tìm được hỗ trợ rất nhiều trên mạng, không phải lo.
- [Tốc độ làm việc] Tốc độ làm việc với Vim rất nhanh, tất cả thao tác khi code với Vim đều trên bàn phím, thậm chí không cần đến chuột, nên mọi thứ rất nhanh.
- [Tiện dụng] Dễ dàng chuyển đổi giữa các thiết bị máy tính, giữa các hệ điều hành chỉ cần file
.vimrc
là xong, rất đơn giản, không cần cài lại thủ công từng plugin sau khi qua môi trường mới. - [Cảm giác] Cảm giác code với Vim rất ngầu, pro, đỉnh, nên sẽ dễ gây nghiện 🤤, có hứng thú khi code hơn.
Nhược điểm của Vim
- Khó tiếp cận, khó làm quen, đòi hỏi phải có sự kiên nhẫn và quyết tâm cao, nếu không thì rất dễ nản.
- Rất nhiều phím tắt cần phải nhớ, phải tập làm quen nhiều lần mới nhớ được.
Phím tắt trong Vim thường dùng:
- Di chuyển:
- Dùng 4 phím
h,j,k,l
để di chuyểnqua trái, xuống, lên, qua phải
gg
để di chuyển nhanh lên dòng số 1Shift + g
để di chuyển xuống dưới cùng của file^
đề về đầu dòng$
để về cuốiw
để đi tới 1 từ (word)b
để đi lùi 1 từ
- Dùng 4 phím
- Chế độ
Insert
:i
để đưa con trỏ về chế độInsert
ngay tại vị trí con trỏShift + A
để con trỏ về chế độInsert
ở cuối dònga
để đưa con trỏ về chế độInsert
tại ngay sau con trỏ 1 ký tự
- Chế độ
Delete
:dw
để delete tới 1 từdb
để delete lùi 1 từcw
để delete tới 1 từ và đưa con trỏ về chế độInsert
cb
để delete lùi 1 từ và đưa con trỏ về chế độInsert
di"
xóa tất cả nội dung trong cặp dấu""
, các bạn gõdi
và ký tự muốn xóa đến đó nhé:di)
,di]
- Ví dụ
"Đây là nội dung"
thì khi gõdi"
thì chỉ còn lại""
- Ví dụ 2:
function convert(value: string, convertTo: number) {}
, khi trỏ tại chỗvalue
và gõdi)
thì còn lại:function convert() {}
- Ví dụ
ci"
tương tự nhưdi"
chỉ khác sau khi xóa thì đưa con trỏ về chế độInsert
luôn nhé.
Demo Vim mình đang xài:
Phần tiếp theo ta sẽ cùng cài đặt Vim package manager để cài đặt plugin này nọ :)