Linux 版 Google Chrome で、バックスペースをブラウザの「戻る」として使う
投稿日:
2016/01/11 追記: Google Chrome が対応したため crx ファイルは消しています
前回の投稿 に引き続き、Ubuntu によるデスクトップ環境を整えてる。
Linux 版 Google Chrome (or Chromium) を使っていると、バックスペースで ブラウザ右上のボタンの「戻る」相当の挙動ができないのが非常に辛い。
なので、それ相当の機能を作った。
「拡張機能同期が発動して、Win, Mac 環境に影響与える」 みたいなのを避けたいし、 拡張機能にするほど大げさな機能でもないかと思い、ユーザスクリプトにしている。
インストール
backspace_as_browser_back_on_linux.user.js
をクリックすると、下から生えてくるバーで何やら聞かれるので「続行」を押す。
どうして XXX 使わなかったの?
類似のものあるんだけど、今回の用途には合わなかった。
Keyconfig を使えばそれ相当のことが実現できるんだろうけれど、同様の機能は、 前回の投稿のキーリマッパー と昔作った knavi で実現してしまっているため、Keyconfig が大げさになってしまう。 (そもそも Keyconfig の HaH 機能に不満があって knavi 作ったんだけど。)
Backspace As Back for Linux という名前がズバリそのものな拡張機能があるので、どうだろうと手を出してみたが、 問題点がいくつかあった。
- 拡張機能同期されてしまった時に Mac のGoogle Chrome で妙な挙動をとってしまう
- contenteditable な div 要素などにフォーカスが当たってると、「戻る」が 機能してしまう
- ソースコード読んでみたら、どうやら利用統計データを送信してるっぽい
ほかの理由
上記のように、既存のものに不満があったことに加えて、「CoffeeScript による ユーザスクリプトの開発をしたかった」というのも理由だったりする。
CoffeeScript で BDD するのに mocha、 history.back などのモックに sinon を使った。
色々苦労があったのだけれど、それはまた別の記事にできたらなぁとおもう。