Bạn sẽ dành nhiều thời gian sửa file hơn là viết code từ đầu. Hãy làm quen với ba trình soạn thảo: nano, vim, và helix — hiện đại, không cần setup.
← / → để chuyển slide · chuyển EN/VI bên dưới
Gần như mọi việc của một shipper đều là sửa file bằng tay.
nginx.conf, .env, docker-compose.yml — tất cả đều được sửa tay.
Mọi bản sửa lỗi đều bắt đầu bằng vài dòng thay đổi trong một file.
AI có thể sinh code, nhưng bạn là người mở file, đọc và chỉnh nó.
nano (đơn giản), vim (mạnh mẽ), và helix (hiện đại, không cần setup) đáp ứng 99% công việc thực tế.
Mũi tên để di chuyển, gõ để sửa, ba tổ hợp phím để kết thúc. Không cần thời gian làm quen.
Toàn bộ giao diện là text — và mọi thứ bạn cần đều đã được in trên hai thanh xanh lá đó: ^O Write Out để lưu, ^X Exit để thoát.
Đó là toàn bộ bộ kỹ năng của nano. Học thuộc bốn tổ hợp Ctrl, bỏ qua phần còn lại.
Không cần học thêm gì. Home/End nhảy đầu/cuối dòng.
Sửa như một ô văn bản bình thường.
Ghi file, hỏi tên — nhấn Enter để xác nhận.
Đóng nano. Nếu có thay đổi chưa lưu, nó hỏi trước.
Cắt dòng hiện tại vào 'bộ nhớ tạm' nhỏ của nano.
Dán lại dòng vừa cắt vào vị trí con trỏ.
Chỉ cần nắm một ý duy nhất là hiểu được tất cả: vim có 'chế độ' (modes). Học cái đó trước, phần còn lại tra là có.
Esc là 'nút home' — từ đâu nó cũng đưa bạn về Normal mode.
Bạn luôn bắt đầu ở đây. Di chuyển, thao tác trên text, chạy lệnh.
Giờ bạn gõ chữ như ở trình soạn thảo bình thường. Đây là chế độ 'gõ' duy nhất.
Chọn một vùng text, rồi thao tác trên cả vùng đó một lượt.
Các dòng ~ đánh dấu phần trống từ cuối file trở đi. Thanh xanh dương là status line — tên file và trạng thái. Đó là toàn bộ diện mạo của vim.
Di chuyển & thao tác bằng phím — không gõ chữ. Con trỏ nằm đè lên một ký tự.
server: app-2 port: 8080 ~ ~ ~
Giờ bạn gõ như ở trình soạn thảo bình thường. Dòng -- INSERT -- là dấu hiệu duy nhất cho biết bạn đang ở trong vim.
server: app-2█ port: 8080 ~ ~ ~
Không menu, không nút, không cần chuột — toàn bộ giao diện là text.
Chuỗi thao tác này chiếm 90% mọi phiên vim bạn sẽ dùng.
$ vim config.yml
i ← enter insert mode
server: app-2 ← the one-line edit
<Esc> ← back to normal mode
:wq ← save & quit
# :q = quit · :q! = quit WITHOUT saving
Mở → i → sửa → Esc → :wq. Học thuộc điệu nhảy đó là hết sợ vim.
Bạn sẽ quên chúng ngay khi đóng tab — hoàn toàn bình thường. Đây là danh sách tra cứu, không phải bài thi.
| Phím | Công dụng |
|---|---|
| h / j / k / l | trái · xuống · lên · phải — phím mũi tên đội lốt |
| w / b | nhảy tới từ kế tiếp / từ trước |
| 0 / $ | đầu dòng / cuối dòng |
| gg / G | đầu file / cuối file |
| /term | tìm — /term + Enter nhảy tới kết quả, n = kết quả kế tiếp |
Khi đã di chuyển và gõ được, chỉ cần thêm ba động từ này là đủ bộ công cụ.
yy chép cả dòng hiện tại. Vim tự ghi nhớ — không cần khái niệm 'clipboard'.
Nhấn p để thả dòng vừa chép ngay sau con trỏ. Đơn giản vậy thôi.
Tìm một từ tức thì. n nhảy tới kết quả kế, N quay lại kết quả trước.
Di chuyển (hjkl, w, 0, gg) + thao tác (i, y, p, /) là đủ cho gần như mọi việc bạn làm.
Quy tắc ngón tay cái: nano khi cần xong nhanh, vim khi server bắt buộc, helix trên máy của bạn — nơi bạn tự quyết cài gì.
Mở, sửa một dòng, xong. Không cần luyện tay. Hợp cho người mới và những chỗ sửa nhỏ.
Có sẵn trên mọi server. Khi quen normal mode, bạn sửa cực nhanh mà không cần chạm vào chuột.
Trình soạn thảo thế hệ mới: không có 'chế độ', LSP tích hợp sẵn, cảm giác như IDE hiện đại ngay trong terminal.
'Chế độ' thì mạnh nhưng dễ gây rối. Muốn autocomplete phải cài plugin, muốn format phải cài thêm, muốn diagnostics phải cài tiếp. Setup thành một dự án riêng.
Một binary duy nhất. Không plugin. LSP, tree-sitter syntax, nhiều con trỏ, auto-format — tất cả có sẵn. Gõ lên là chạy. Cài xong là sửa được.
Không cần nhớ 'chế độ'. Gõ là sửa. Năm phím này phủ 95% việc làm hàng ngày.
Dừng gõ, về chế độ chọn. Đây là 'chuyển chế độ' duy nhất bạn cần.
Xuống và lên. Bạn sẽ dành nhiều thời gian di chuyển hơn là gõ.
Xóa dòng hiện tại và chuyển sang chế độ gõ. Phím 'lao động' chính.
dd = xóa dòng, dw = xóa từ. Xóa nhanh, chính xác.
Gõ dấu hai chấm, lệnh hiện ra. :w lưu, :q thoát. :wq làm cả hai.
Nếu server chỉ có vim, bạn dùng vim. Nhưng VPS của chính bạn? Cài helix và không bao giờ phải nghĩ đến việc setup trình soạn thảo nữa.
Kỹ năng thực sự là: mở file, sửa một dòng, lưu, đóng. Đó là 90% những gì bạn sẽ cần.
Giờ hãy đi sửa file cấu hình đó — nano, vim, hay helix — bạn đã có đủ công cụ.