『Firefox 57.0 (Quantum)』で『FireGestures』と『Make Link』が使えなくなって途方に暮れたかと思ったけど、『Foxy Gestures』で代替できたので問題なかった

Firefox 57.0 (Quantum)にバージョンアップしたらアドオンが悲劇

 『Firefox』がやたら重いなと思っていたら、再起動した瞬間に突然バージョン57.0にアップデートされました。「Quantum」なんて名前も付いている。いきなり動作が軽くなってこりゃいいじゃん、と思っていつものように右ボタンを押しながらリンクをクリックしたら、同じウィンドウで開いた(´・ω・`) この操作をすると新しいウィンドウで開くように『FireGestures』で設定しているのだけど……。まさかと思ってアドオンを確認すると、使っていたアドオンが半分くらい「旧式の拡張機能」欄に押し込められて無効になっていた。ぎゃー。

 いままで使えていたものがドカンと使えなくなるアップデートを半ば強制的にやるという手口は許されるの? 「アドオンシステムの変更についての詳細」のリンク先に「もっとも人気のある主要なアドオンはすでに互換性が保たれており、多くのユーザーはこの変更に気づくことはないでしょう。 」と書いてあるのも、俺の神経を逆なでする。ふざけんな。

 とりあえず、頻繁に使っていた機能は次の3つ。

  • 『FireGestures』
    • 「右ボタン + 左クリック」で「リンクを新しいウィンドウで開く」(ロッカージェスチャ)
    • 「右ボタン + ホイール」で「文字サイズのみ変更 - 拡大 / リセット」(ホイールジェスチャ)
  • 『Make Link』
    • 現在のページのタイトルとURLをコピーする

最低この3つは何とかしたい。実装できない場合は『Firefox』の使用を継続するかどうかも考える事態になります。

『FireGestures』の代替アドオンは『Foxy Gestures』に

 ググってみると、マウスジェスチャーのアドオンの代替候補は『Gesturefy』と『Foxy Gestures』の2つがあるようです。まず『Gesturefy』を試してみます。サイトは英語ですが、インストールしてみると説明文は日本語になりました。設定画面はわかりやすいし、ロッカージェスチャーもホイールジェスチャーも設定できる。これでいいじゃんと一瞬思ったのですが、なぜかロッカージェスチャで設定できる項目に「リンクを新しいウィンドウで開く」がない(´・ω・`) これが一番実装したい機能なのに……。「リンクをタブで開く」はあるのに……。

 続いて『Foxy Gestures』を試します。これはインストールしても説明文は英語のままです。ぎゃー。でも、他の手を探すのも大変そうなのでがんばって読みます。まあ、なんとなくはわかります。

 『Foxy Gestures』もロッカージェスチャー(chord gestures)も、ホイールジェスチャー(wheel gestures)も実装できます。しかも、「リンク先を新しいウィンドウで開く(Open Link in New Window)」設定もありました! 「ズーム拡大(Zoom in)」と「ズームリセット(Reset Zoom)」もあります。*1

 これで、いままで『FireGestures』で実装していた機能で重要なものは実現できました。

『Make Link』の代替アドオンも『Foxy Gestures』に?

 残るは、いままで『Make Link』で実装していた機能です。『Make Link』の代替アドオンとしては『Format Link』というものがあるようです。これも説明文は英語ですが、まあ何とかなるでしょう。これを使えば『Make Link』と同等のことはできそうな感じです。

 でも、その前に気になったことがあります。さきほど導入した『Foxy Gestures』には『Gesturefy』にはないおもしろい機能がありまして、「User Script」で機能を追加することができるのです。と言っても、機能を作るにはスクリプトを書く必要があります、どう書けばいいのか自分はさっぱり分かりません。

 しかし、下記のサイトにスクリプトの例がいくつか掲載されています。

texst.netこの中に、ずばり「タイトルとURLをコピー」というスクリプトがあるじゃないですか! これをそのまま使わせてもらえばいいんじゃない? 結局のところ「現在のページのタイトルとURLをコピー」さえできればいいのだから。

 というわけで、上記のサイトからスクリプトをコピーして『Foxy Gestures』の「User Script」に貼り付けました。ここで作った機能はwheel gesturesやchord gesturesで選択できる項目にも追加されます。これで、左ボタン + 右クリックで現在のページのタイトルとURLをコピーするようにできました。いままでは右クリックメニューを経由して実行していた機能が左ボタン + 右クリックで実行できるので、むしろ今までより良いかも?

※2018/05/28(月)追記

いつの間にか、「More Preferences」タブの下の方にある「Optional Permissions」の「Request "clipboardWrite"」を有効にする必要があるようになりました。

やりたいことはすべて実現できました

 今回の設定は以下の通り。『Foxy Gestures』ではマウスジェスチャーは自分で一つ一つ設定する必要があるのだけど、自分はマウスジェスチャーは使ってないので設定してません。

自分の『Foxy Gestures』のホイールジェスチャーとロッカージェスチャーの設定

 なお、wheel gesturesのScroll Downが、「Zoom Out」ではなく「Reset Zoom」であるのは、自分の場合はブラウザの表示を標準より縮小したいことはまずないからです。ほぼ「縮小したい」=「拡大したものを元に戻したい」なので、「Reset Zoom」の方が好都合です。縮小したくなったらキーボードでやればいいんです。*2

 これで、自分がやりたかったことはほぼすべて実装できました。一時はどうなることかと思ったけれど、意外とあっさり解決できました。良かった。*3

Firefox 57.0 (Quantum)関連リンク集

*1:「全画面表示」はないけど、まあいいや。[F11]ひとつでできるし。よくみると、「全画面表示」どころか「ウィンドウを最大化」さえないのだけど。なぜ? 「ウィンドウを最小化(Minimize Window)」はあるのに。

*2:なお、『FireGestures』の拡大縮小では「文字サイズのみ変更」という項目があったので、ホイールジェスチャでの拡大縮小は文字サイズのみ、[Ctrl] + [+][-]での拡大縮小は画像なども含めて、という使い分けができました。それができなくなったのは残念ですが、まあいいや。

*3:一つ気になることが。『Foxy Gestures』の「Open Link in New Window」を実行すると、一瞬画面がちらつく感じがします。慣れるとは思いますが、ちょっと気になります。よく見ると、リンク先をいったん同じウィンドウの新しいタブで開いて、そのタブを閉じて、改めて新しいウィンドウで開く、という挙動をしているように見えます。なんでだろう? 『Gesturefy』で「新しいウィンドウで開く」がないことといい、意外と実装するのが難しい機能なのでしょうか?