Vim harpoon plugin.


Hôm nay mình sẽ giới thiệu các bạn 1 plugin rất hay, plugin này cũng khá mới, tại thời điểm mình viết bài này, mình không tìm được bài viết nào hay video youtube nào hướng dẫn dùng harpoon plugin. Nên hôm nay mình sẽ hướng dẫn các bạn cài đặt và sử dụng nhé.

Đầu tiên ta thêm các dòng sau vào ~/.vimrc hoặc ~/.config/nvim/init.vim nếu dùng neovim.

Plug 'nvim-lua/plenary.nvim'
Plug 'ThePrimeagen/harpoon'

Lưu, cập nhật và cài đặt.

:w
:so %
:PlugInstall

Ta cấu hình mapping trong file ~/.config/nvim/init.vim để sử dụng.

nnoremap <C-m> :lua require("harpoon.mark").add_file()<CR>
nnoremap <C-e> :lua require("harpoon.ui").toggle_quick_menu()<CR>
nnoremap <leader>1 :lua require("harpoon.ui").nav_file(1)<CR>
nnoremap <leader>2 :lua require("harpoon.ui").nav_file(2)<CR>
nnoremap <leader>3 :lua require("harpoon.ui").nav_file(3)<CR>
nnoremap <leader>4 :lua require("harpoon.ui").nav_file(4)<CR>
nnoremap <C-g> :lua require("harpoon.mark").rm_file()<CR>
nnoremap <leader>tu :lua require("harpoon.term").gotoTerminal(1)<CR>

Lưu và cập nhật

:w 
:so %

Bây giờ ta sử dụng như thế nào? harpoon giúp ta di chuyển qua lại giữa các file rất nhanh. Ta có thể dùng buffer trong vim hoặc dùng telescope plugin cũng có thể làm được. Nhưng harpoon plugin có cái hay là khi ta thoát project thì những file ta đã đánh dấu, khi mở lại thì vẫn còn, ta có thể mở nhiều file của các project khác nhau và chỉ cần 1 tổ hợp phím là ta có thể di chuyển giữa các file khác project rất nhanh giống như dịch chuyển tất thời trong dragon ball ^_^, ngoài ra ta cũng có thể di chuyển giữa terminal và vim một cách dễ dàng.

Ta tìm hiểu cách sử dụng nhé. Đầu tiên ta mở file cần đánh dấu trong vim, để đánh dấu ta nhấn ctrl+m, Để xóa đánh dấu ta dùng ctrl+g. Ta có thể xem lại các file đã đánh dấu bằng ctrl+e, khi đó 1 cửa sổ mở ra những file ta đã đánh dấu, ta có thể di chuyển lên xuống chọn file cần mở. Ở cấu hình trên ta có map 4 file cần di chuyển qua lại. Nếu muốn mở file 1 ta gõ \+1, file 2 là \2, tương tự file 3 là \3, file 4 là \4. Còn muốn mở terminal ta chỉ cần gõ \tu, gõ i vào insert mode, muốn trở lại normal mode gõ ctrl+\ ctrl+n, muốn trở lại vim ta gõ ctrl+^. Như vậy là ta biết cách dùng harpoon plugin rồi đó.