Macの操作をkeyboardのみで完結させたい(vimium解説&設定ファイル紹介)


はじめに

vimが好きな方の中には、vimの操作方法で全てを操作したいと思っている方もいると思います。
自分もその中のひとりです。

今回はキーボード操作で全てを完結したい自分が
vimiumとmacでのショートカットキーを紹介したいと思います。

vimum

vimiumとは?

vimiumとは、google chromeをvimのキーバインドで操作できる拡張機能になります。

こちらからインストール
https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb?hl=ja

vimium設定

Chromeをvimライクに使えるようにするvimium - vimiumの設定

極力、標準のvim操作になるように寄せた設定になっています。

vimium設定ファイル
# Insert your preferred key mappings here.

unmapAll

map j scrollDown
map k scrollUp
map gg scrollToTop
map G scrollToBottom
map <c-u> scrollPageUp
map <c-d> scrollPageDown
map - scrollFullPageDown
map - scrollFullPageUp
# map h scrollLeft
# map l scrollRight
map r reload
map yy copyCurrentUrl
map p openCopiedUrlInCurrentTab
map P openCopiedUrlInNewTab
map i enterInsertMode
map v enterVisualMode
map gi focusInput
map f LinkHints.activateMode
map F LinkHints.activateModeToOpenInNewTab
map - LinkHints.activateModeToOpenInNewForegroundTab
map gf nextFrame
map gF mainFrame

# Using the vomnibar

map o Vomnibar.activate
map O Vomnibar.activateInNewTab
map b Vomnibar.activateBookmarks
map B Vomnibar.activateBookmarksInNewTab
map T Vomnibar.activateTabSelection
map / enterFindMode
map n performFind
map N performBackwardsFind

# Navigating history

map h goBack
map l goForward

# Manipulating tabs

map t createTab
map gT previousTab
map H previousTab
map gt nextTab
map L nextTab

map ^ visitPreviousTab
map g0 firstTab
map g$ lastTab
map yt duplicateTab
map <a-p> togglePinTab
map <a-m> toggleMuteTab
map x removeTab
map u restoreTab

# Miscellaneous

map ? showHelp

主に使う操作

画面スクロール

操作キー アクション
j 画面上スクロール
k 画面下スクロール
gg 画面トップ
G 画面最下部
ctrl-u 半画面上へ
ctrl-d 半画面下へ

vimium標準ではu, d単体で半画面スクロールなのですが、
vimではctrl-u, ctrl-dで半画面スクロールなので
vim操作に合わせるような設定になっています。

設定ファイル抜粋
map j scrollDown
map k scrollUp
map gg scrollToTop
map G scrollToBottom
map <c-u> scrollPageUp
map <c-d> scrollPageDown

タブ移動

操作キー アクション
t 新しくタブを開く
gT タブ左移動
H タブ左移動
gt タブ右移動
L タブ右移動
x 現在開いているtab削除
u 消してしまったtab復元
map t createTab
map gT previousTab
map H previousTab
map gt nextTab
map L nextTab

map x removeTab
map u restoreTab

戻る, 進む

操作キー アクション
h ブラウザ戻る
l ブラウザ進む

デフォルトではh, lは、右スクロールや左スクロールに割り当てられていますが、
使用頻度も低いため、戻るや進むに割り当てています。

map h goBack
map l goForward

その他

操作キー アクション
/ ブラウザ内検索
n 検索結果次へ
N 検索結果前へ
o google検索して現在のtabで開く
O google検索して新しいtabで開く
b bookmark内で検索して現在のtabで開く
B bookmark内で検索して新しいtabで開く
T 現在開いているtab内で検索して移動する

タブ移動が面倒臭くなっても、
名前さえ覚えていればTで名前検索して移動できるのですごく便利です。

# 検索系
map / enterFindMode
map n performFind
map N performBackwardsFind

# その他
map o Vomnibar.activate
map O Vomnibar.activateInNewTab
map b Vomnibar.activateBookmarks
map B Vomnibar.activateBookmarksInNewTab
map T Vomnibar.activateTabSelection

おまけ

以上の操作ができれば、
ブラウザの操作はほとんどkeyboardで完結できると思われます。

自分が業務でよく使うのはターミナルとブラウザとslackなので
アプリ間の移動をするために、

command + tabで移動を行います。

これでキーボードでの操作だけでほとんどの操作をカバーすることができます。

あとはslackの操作を良い感じにすることができれば、キーボードだけでの生活が送れると思います...。