Monday, 10 June 2013

[vim] Hướng dẫn học dùng vim

Bài viết [TẤT NHIÊN]  mang tính chủ quan và dựa trên kinh nghiệm dùng vim của tớ.
Đọc xong bài này bạn sẽ:
- biết học dùng vim cơ bản thế nào
- biết tìm chỗ để học nâng cao
- hiểu biết về những thứ xung quanh vim

vim là gì?
vim (1) - Vi IMproved, a programmers text editor


vim là phiên bản phát triển từ vi (visual - đọc là vi-eye) , thường được dùng để edit các file text khi lập trình hay cấu hình hệ thống.

Những đặc điểm nổi bật của vim


- khả năng di chuyển cực linh hoạt
- khả năng highlight (tức hiện màu cho các từ khóa)
- chạy trên terminal (không cần giao diện, nếu thích giao diện thì dùng gvim)
- nhẹ, nhanh
- có thể autocomplete
- dễ cấu hình thông qua file vimrc
- có nhiều plugin có sẵn (nerdtree, taglist, autoclose, ...)
- ...

bản thân vim là một editor, vậy nên đừng mang nó đi so sánh với các IDE, nó giống như bạn mang một con dao cực sắc đi so với 1 bộ đồ nghề đầy đủ (có đủ búa, kéo , dao... mà trong đó thường thì con dao không sắc lắm). Nếu bạn lắp thêm cánh cho vim (plugin) thì vim cũng có thể trở thành 1 IDE đủ khả năng làm bạn thỏa mãn nhu cầu :v

học dùng vim thì học cái gì?
- học di chuyển theo cách của vi/vim : đây là tính năng mạnh mẽ nhất của vim. Với triết lý của vim là bạn không bao giờ phải nhấc tay khỏi bàn phím khi đã đặt xuống hay nói các khác, tay bạn lúc nào cũng để ở phần bàn phím chính, không phải dùng các phím lên xuống để điều khiển VÀ KHÔNG BAO GIỜ ĐỘNG ĐẾN CHUỘT, mew!!!
- học xóa, sửa, thêm ký tự theo cách của vim. Ví dụ: nếu cần xóa 1 dòng, bạn bấm dd chứ không phải bôi đen cả dòng rồi bấm delete hay bấm delete để xóa từng chữ.
- học cấu hình vim bằng file vimrc, vì nếu không cấu hình, vim mặc định sẽ khá thô sơ.
- học sử dụng các plugin để thêm các tính năng cho vim.

học dùng vim thì học thế nào?
- trước hết bạn phải biết cài vim (nếu không biết, bạn hãy nhờ ai đó biết)
- sau khi cài xong vim thì hãy mở terminal lên, gõ vimtutor
- làm xong hết tut trong vimtutor là bạn đã có thể dùng vim rồi.
- đọc qua file vimrc (trong vimtutor sẽ hướng dẫn làm thế nào để bạn có nó)
- tham khảo một file vimrc ở đây
- cài các plugin sử dụng pathogen (vài plugin nổi tiếng: ctrlp  nerdtree  vim-flake8  vim-fugitive  vim-go (code Golang))
- học cách làm việc với nhiều  file cùng lúc
- sau vài ngày khi đã quen với kiểu di chuyển của vim (lúc đầu sẽ hơi ngượng), vào các website để đọc thêm các tips vê vim. Có thể tham khảo vài link sau:

http://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim
http://vim.wikia.com/wiki/Vim_Tips_Wiki
- xem thêm nhiều tips ở tag vim trong site này
- đừng mong biết hết các câu lệnh của vim, chỉ cần biết những gì bạn cần dùng.
- dùng lâu khác giỏi :D

HOẶC NẾU BẠN THÍCH, hãy bỏ qua tất cả những lời ở trên, down 1 quyển ebook viết về Vim và đọc, CHẮC CHẮN bạn sẽ thành siêu nhân vim - tớ thì không!
HẾT.