Vimium?
Vimium là một open source extension giúp bạn duyệt web mà không cần chuột, và tuỳ chỉnh các phím tắt của riêng bạn khi duyệt web.
Mặc dù Vimium lấy ý tưởng các phím tắt từ Vim - text editor dành cho dân coder, nhưng mình thấy mọi người đều có thể sử dụng, tuỳ chỉnh theo ý thích của mình. Chỉ là với những người biết xài Vim rồi thì xài Vimium sẽ quen tay hơn thôi.
Lý do xài
Do hồi xưa con chuột của mình bị hư, trackpad của em laptop “giả” gaming (ý mình là nó nặng như con laptop gaming) Core i3 RAM 4GB đã cũ, không còn mượt, và mình cũng mới tập tành Vim nên tín hiệu vũ trụ đưa mình tới cái extension này. Xài được một thời gian thì thấy nó tiện phết, nhất là với mấy đứa không xài chuột như mình.
Những tính năng
Mình kiếm không ra cái video nào giới thiệu Vimium đủ hay và ngắn, cái video giới thiệu của tác giả thì quá cũ (từ 10 mấy năm trước), trên mạng có đầy những bài viết nói về tính năng của nó rồi, và do mình lười nên mình sẽ liệt kê mấy tính năng hữu ích (đã được mình mapping lại) mà mình đang dùng thôi nhé:
- Di chuyển lên xuống bằng
h
,j
,u
,d
- Chuyển qua tab kế bên bằng
J
,K
- Quay lại, tiến tới lịch sử của tab hiện tại bằng
H
,L
- Di chuyển lên đầu trang web bằng
gg
và di chuyển tới cuối trang web bằngG
- Mở link bằng
f
,F
và mở 1 lúc nhiều links bằngAlt + f
- Mở/search cái bạn vừa copy ở tab hiện tại bằng
p
và trong tab mới bằngP
. Kiểu đang đọc blog, thấy định nghĩa lạ quá thì giờ bạn chỉ cần copy nó rồi gõp
hoặcP
thì nó sẽ Google cho bạn (và bạn cũng có thể đặt search engine mặc định khác như à DuckDuckGo luôn) - Reload lại tab hiện tại bằng
r
- Copy URL của tab hiện tại bằng
yy
- Đóng tab hiện tại bằng
x
, mở lại tab vừa đóng bằngX
- Focus tới cái thanh input trên trang web bằng
gi
, nếu có nhiều thanh input thì dùngTab
để chuyển. - Duplicate tab
yt
, Pin tabAlt + p
. Một số browser có phím tắt để làm những việc này nhưng Firefox thì không có 🥲, nên cái này tiện lợi x100 - Chuyển mục nhanh hơn với
[[
,]]
. Ví dụ như với trang https://d2l.ai/, thay vì mỗi lần đọc xong một mục nhỏ trong một chapter, bạn muốn chuyển qua mục tiếp theo thì bạn cần nhấn vô cái chuyển mục ở cuối trang hoặc nhấn vô mục tiếp theo ở mục lục phía bên trái. Nhưng với Vimium thì bạn chỉ cần]]
là đã có thể đi tới mục tiếp theo hoặc[[
để trở về mục trước đó. Nhưng với điều kiện là phải đúng với label ở trong settings nhé. - Vomnibar: Nó đóng vai trò như cái thanh URL/search của browser ấy, nhưng nó còn làm được nhiều thứ hơn thế.
Ngoài ra còn nhiều tính năng khác nữa, bạn có thể tham khảo tại trang web của extension.
Hạn chế: 1 điều đáng buồn là khi mở pdf ở trong browser thì Vimium không xài được do vấn đề về bảo mật. Ví dụ đang coi pdf ngon lành, gặp từ mới không biết, muốn tra thử thì không thể nhấn t
để mở tab mới mà phải dùng Ctrl T
mới được 🥲. Một số phím tắt sử dụng để navigate cũng không sử dụng được luôn 🥲.
Mình dùng nó như thế nào?
Bạn có thể tìm thấy toàn bộ settings của mình ở đây (phiên bản này sẽ cũ theo thời gian, nhưng bạn vẫn có thể coi được những phiên bản mới nhất trong gist này), với những tuỳ chỉnh phù hợp với nhu cầu của mình, bạn đọc kĩ hướng dẫn sử dụng trước khi dùng nhé.
Theme
Cái theme mặc định của Vimium quá phèn nên mình tự custom theme. Theme của mình làm lấy theme Catppuccin làm chủ đạo (Vâng mình là fan của Catppuccin 😸, cả cái blog này cũng có theme Catppuccin). Catppuccin cũng có repo cho Vimium nhưng nó làm mình bị đau mắt nên mình chỉnh lại cho mắt của mình đỡ đau.
- Mặc định
- Của Catppuccin
- Của mình
Theme config của mình nằm ở đây. Nếu không thích thì bạn có thể lên GitHub để tìm theme có sẵn, hoặc bạn cũng có thể hardcore để tạo theme mà mình thích.
Mapping
Note: Mình sử dụng Firefox nên sẽ có những settings phù hợp với Firefox hơn là với Chrome, Edge,… Ví dụ như /
sẽ mở Quick find trên Firefox, đồng thời nó giúp focus vô cái thanh search trên Youtube, nên mình sẽ unmap toàn bộ Find mode trong Vimium. Với lại dùng Ctrl + f
cho nhanh đi mọi người 🙂.
Có nhiều mapping không cần thiết nên mình đã unmap nó, và mapping lại 1 số keys:
unmap <c-e>
unmap <c-y>
unmap h
unmap l
unmap T
unmap v
unmap V
unmap O
unmap b
unmap B
unmap gt
unmap gT
unmap gs
unmap gf
unmap gF
unmap g0
unmap g$
unmap W
unmap R
unmap ge
unmap gE
unmap zL
unmap zH
unmap /
unmap n
unmap N
unmap ?
map o Vomnibar.activateInNewTab
map gf LinkHints.activateModeToOpenInNewForegroundTab
map R Vomnibar.activateEditUrlInNewTab
map b visitPreviousTab
Và nó sẽ như thế này (mình không xài ?
vì mình đã thuộc mấy cái này rồi nhưng mà để demo nên mình mới đặt lại á):
Bên cạnh đó, có một số mapping mà mình ít xài như:
i
: Kích hoạt insert mode: Insert mode trong Vimium là chế độ bạn có thể gõ gì cũng được mà không kích hoạt các phím tắt của nó. Thường thì khi đang focus vô cái thanh input thì Vimium sẽ không được kích hoạtgu
để lùi về 1 bậc URL vàgU
lùi về tới root của URL của tab hiện tại (nói chung là mình cũng không biết phải diễn tả làm sao hết 🥲). Ví dụ như mình đang ở tabhttps://github.com/ngntrgduc/ngntrgduc.github.io
, thìgU
sẽ chuyển tab hiện tại thànhhttps://github.com/
còngu
sẽ chỉ chuyển vềhttps://github.com/ngntrgduc/
thôigf
Mở link ở tab mới và chuyển qua nó: Mình thưởng mở bằngF
rồi dùngK
để nhảy qua luônyf
Copy link URL vào clipboardm
Create a new mark: Kiểu bạn đọc thấy cái phần ở giữa của cái blog hay quá, bạn muốn đọc xong blog thì quay lại đọc phần ở giữa này tiếp, thì cái tính năng mark này giúp bạn nhảy hẳn tới cái phần bạn vừa mark xong. Thường thì mình kiếm lại luôn chứ không có mark nó lại. Nhưng nó cũng hữu ích trong 1 số trường hợp.^, b
Go to previously-visited tab: Hữu ích với những trường hợp muốn tab qua lại các tab thật là nhanh vì thay vìCtrl + Tab
,Ctrl + Shift + Tab
thì giờ bạn chỉ cần gõ 1 kí tự là đã có thể chuyển tab.R
dùng để chỉnh sửa URL của tab hiện tại và mở nó vào tab mới.<<
,>>
Bê cái tab hiện tại qua bên trái, phải: Di chuyển bằng con trỏ chuột nhanh hơn.
Vomnibar
Bạn có thể dùng cái này để search Google, search lại lịch sử, search bookmark,…
với những kết quả hiện ra thì sử dụng Tab
để di chuyển…
Lúc mới bắt đầu xài mình thấy cái này kiểu nhảm nhảm làm sao, cần gì một cái search bar của extension trong khi mình đã có cái search bar của browser rồi?. Nhưng đó là trước khi mình biết tới cái tính năng Custom search engines của nó.
Lấy ví dụ cho dễ hiểu nè: Giả sử mình đang nghe nhạc trên Youtube, thấy bài đang
nghe hay quá, mình muốn check thử coi trên Soundcloud có bài này không để like
rồi nghe sau (vì Soundcloud không có ads). Thì mình phải mở tab mới, gõ trang
chủ của soundcloud, nhấn Enter, đợi nó load, rồi vô cái search box, gõ tên của
cái bài hát mình đang nghe trên Youtube, rồi nhấn Enter… Nhưng với Vomnibar và
search engine, giờ mình chỉ cần mở nó lên bằng o
, gõ sc
(vì mình đặt cái này
là shorcut cho Soundcloud), nhấn space để kích hoạt search engine, gõ tên bài
hát và nhấn Enter thì ngay lúc này mình đã có thể xem được bài hát đó có trên
Soundcloud hay không rồi, rất tiết kiệm thời gian 😘.
Nó còn làm được nhiều thứ hơn ví dụ như là search từ vựng các kiểu nữa cơ. Nói chung là phải dùng thì mới thấy được sự tiện lợi của nó.
Dưới đây là một số custom search engine của mình:
sc: https://soundcloud.com/search?q=%s SoundCloud
gh: https://github.com/search?q=%s&type=repositories GitHub
y: https://www.youtube.com/results?search_query=%s YouTube
tt: http://tratu.soha.vn/dict/en_vn/%s Tra từ
lw: https://app.ludwig.guru/s/%s Ludwig
lg: https://libgen.is/search.php?&req=%s&sort=extension&sortmode=DESC LibGen
exact: https://www.google.com/search?q="%s" Search for an exact match
urban: https://www.urbandictionary.com/define.php?term=%s Urban Dictionary
yg: https://youglish.com/pronounce/%s/english? YouGlish
oz: https://ozdic.com/collocation/%s/ OZDIC
Góc PR: Mình không thêm mấy cái từ điển Anh-Anh như Cambridge hay Oxford vào Vomnibar vì mình dùng cái extension nhà làm của mình rồi. Nó tiện hơn cái Vomnibar ở chỗ là nó có thể mở được khi đang đọc file pdf luôn nhưng điểm trừ là nó chỉ mở được có 3 cái từ điển mặc định thôi, mặc dù với mình như vậy là đủ xài rồi (nào rảnh mình thêm tính năng custom từ điển sau 🥲).
Dù sao thì đây là settings cho 3 cái từ điển:
c: https://dictionary.cambridge.org/dictionary/english/%s Cambridge
ox: https://www.oxfordlearnersdictionaries.com/definition/english/%s Oxford
mw: "https://www.merriam-webster.com/dictionary/%s Merriam-Webster
Một số thứ khác
Mình chỉnh scroll step size lên 80px
cho nhanh, characters sử dụng cho link
hints là sdfghjkl
vì mấy đứa này nằm trên home row, dễ gõ, và mình bỏ a
vì
a
gõ thêm s
, f
, j
trong chế độ Telex nó sẽ ra á
, à
, ạ
, và sẽ không
thể thực hiện tiếp link hint 🥲. Điều tương tự cũng xảy ra với Vomnibar (o
),
lúc này bạn có thể xoá đi rồi gõ lại (giống như Soundcloud là sc
, mình mở
Vomnibar lên xong phải xoá đi rồi mới gõ tiếp sc
chứ không nó sẽ ra chữ óc
🥲), hoặc là bạn có thể đặt 1 cái shortcut khác để mở Vomnibar, hoặc là chuyển
qua VNI…
Và đôi lúc bạn không muốn dùng Vimium cho mấy trang web như Messenger,… thì
bạn có thể exclude cái URL của nó hoặc chỉ exclude một số keys nhất định thôi.
Ví dụ như với Youtube thì mình exclude i><1234567890/m
vì nó cũng là phím tắt
mặc định của Youtube, bạn có thể tìm hiểu thêm về phím tắt của Youtube ở đây.
Lời kết
Lời khuyên của mình là các bạn hãy cứ cài Vimium vô browser, sử dụng theo những cái mặc định trước, không cần thiết phải làm theo mình. Nếu thấy cái nào không cần thiết thì bạn cứ chỉnh sau cũng được. Ngoài ra thì cái Wiki của Vimium cũng khá là đầy đủ nếu bạn muốn tận dụng hết tính năng của nó.
Nhìn chung thì Vimium tiết kiệm được cho mình khá nhiều thời gian, và mình mong rằng nó cũng sẽ tiết kiệm được thời gian cho bạn 💖.