片手で快適にWebサーフィンする方法

こんにちは。TakahiRoyteです。

Webサーフィンってもはや死語ですよね。今回は「片手で快適にブラウジング」よりインパクトが欲しかったので勇気をだしてWebサーフィンにしました。

「片手で快適に」ということですが、具体的には以下の条件です：

- 片手 ＝ 左手
- マウスは基本使わない
- 左手はキーボードのホームポジションから動かない

## 対象ブラウザ

今回はChromeと拡張機能の「Vimium」を組み合わせて快適なブラウジングを実現します。Firefox + Vim Vixenでも同じようなことができるのでFirefoxユーザーの方は適宜読み替えてください。IE Edgeなんてなかった。

## 拡張機能 Vimium とは

テキストエディタの Vim はご存知の方も多いかと思います。Linuxでは特に活躍するあの初心者キラーエディタです。emacsと血で血を洗う抗争を続けているあのVimです。

Vimは各操作をキーボード上で迅速に行える数多のキーバインディングが用意されていますが、Vimiumではその操作感をChromeでも実現するための拡張機能です。

以下、ごく一部の機能対応表：

| キー | Vimでの機能 | Vimium(Chrome)の機能 |
|------|---|---|
|j | カーソルを下に移動 | 1行下にスクロール |
|k | カーソルを上に移動 | 1行上にスクロール |
|h | カーソルを左に移動 | 1行左にスクロール |
|l | カーソルを右に移動 | 1行右にスクロール |
|gg | カーソルをファイルの先頭に移動 | ページの一番上に移動 |
|G  | カーソルをファイルの末尾に移動 | ページの一番下に移動 |
|yy | カーソルのある行をヤンク（コピー） | ページのアドレスをコピー |
|p | ヤンクした行をペースト | クリップボードのURLを今のタブで開く |
|f | 検索モード | リンク移動モード |
|x | 一文字削除 | 現在のタブを閉じる |

Vimmerはもうすでにワクワクしていることでしょう。

とりあえず Vimium をインストールしておきましょう。

 [Chrome ウェブストア - Vimium](https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb?hl=ja&utm_source=chrome-ntp-launcher)

でも今回はVimiumの紹介ではなくて、左手のみでいかに快適に使うかです。Vimの要である`hjkl`は右手の位置にあります。これじゃいけません。左手をホームポジションから移動する労力なんて使いたくありませんよね。

## Vimium をカスタマイズする

Vimium はオプションを開いて色々カスタマイズすることができます。Vimiumをインストールしているとアイコンがアドレスバー横に表示されます。こいつを右クリックして「オプション」を選択してください。

![02.png](https://qiita-image-store.s3.amazonaws.com/0/89911/13366d1f-c08b-d3ef-117c-ae07fcdf8e16.png)


そうするとオプション画面が開きます。

### スクロールをカスタマイズする

Vimiumはブラウザ操作のコマンドを任意のキーに設定することができます。

今回はブラウジングで最も行う動作の一つである上下スクロールの位置を変えましょう。開いたオプションの`Custom key mappings`に以下を追加しましょう。

```text
map d scrollDown
map e scrollUp
map D scrollPageDown
map E scrollPageUp
```

こんな感じになります。

![03.png](https://qiita-image-store.s3.amazonaws.com/0/89911/3258d9b1-c512-9fbb-3433-f594a89f6321.png)

これで`d`を押したら下に少しスクロール、`D (shift+d)`でページダウン、`e`を押したら上に少しスクロール、`E (shift+e)`でページアップができるようになりました。左右のスクロールはあまり使わないので今回は含めません。

### リンク移動モードをカスタマイズする

次にリンク移動モードをカスタマイズします。リンク移動モードは「片手快適Webサーフィン」の重要ポイントです。Vimiumをインストールした状態で、`f`を押してください。

![04.png](https://qiita-image-store.s3.amazonaws.com/0/89911/82b745bd-c082-d50c-c510-91e5861b536d.png)


こんな感じの画面になったかと思います。この表示された黄色いヒントボックス内の文字を入力すると、そこをクリックした扱いになりリンク移動などが可能になります！めちゃ便利！

Vimiumの初期設定では右手で押すキーも入力対象の文字列になってしまうので、これを左手で打てる範囲の文字に限定してしまいましょう。再度オプションを開いて`Advanced Options`の`Characters used for link hint`を探してください。そこに自分が左手で無理なく打てるキーを設定しましょう。

![05.png](https://qiita-image-store.s3.amazonaws.com/0/89911/d3fd72cb-1c3f-75ab-d67b-acf1d4c15870.png)


私は画像の通り、`qwertasdfgzxcv` で設定しています。これで今まではマウスやタブ+Enterが必要だったリンク遷移も左手のみで動くようになりました！

カスタマイズしたVimiumでよく使うのは以下のコマンド：

| 機能 | ショートカット |
|---|---|
| 下に1行スクロール | `d` |
| 下にスクロールダウン | `D` |
| 上に1行スクロール | `e` |
| 上に1行スクロール | `E` |
| リンク遷移モード | `f` |
| リンク遷移モード（新規タブ） | `F` |

## Chrome の左手で使えるショートカットを使いこなす

Vimiumでも対応している機能は多いのですが、Chromeでデフォルトで使えるショートカットをそのまま使えるようになることも大切です。Chromeのショートカットはタブを扱うアプリケーションでは共通的な配置になっているので覚えて損はないと思います。

よく使うのは以下のコマンド：

| 機能 | ショートカット |
|---|---|
| 新規タブを開く | `ctrl+t` |
| タブを閉じる | `ctrl+w` |
| 閉じたタブを開き直す | `ctrl + shift + t` |
| 右のタブに移動 | `ctrl + tab` |
| 左のタブに移動 | `ctrl + shift + tab` |
| n番目のタブに移動 | `ctrl + 1～0` |
| ページ内検索 | `ctrl + f` |
| リロード | `ctrl + r` |
| スーパーリロード | `ctrl + shift + r` |

## これであなたもシングルハンドWebサーファー

これであなたも片手でWebの荒波を乗りこなすシングルハンドWebサーファーとなりました。おめでとうございます！あまってるキーで何かおすすめのキーバインドがあれば教えてください。

それでは良きWebサーファーライフを。