Android Firefox NightlyにTampermonkeyを入れてbookmarkletを使う
Android Firefoxではブックマークレットがうまく動かない
使えるようになったり使えなくなったりしてるらしい
動くやつもある
Android Chromeでは使える
手順
Android Firefox Nightlyのカスタムアドオンコレクション機能を使ってTampermonkeyをインストールする
設定→「Firefox Nightlyについて」にあるアイコン連打
戻ると設定に追加されている「カスタムアドオンコレクション」を選択
事前にTampermonkeyを入れておいたコレクションのURLからユーザIDとコレクション名を入力
わたしのコレクションなら、URL末尾がcollections/16409876/im-using/ なので、「16409876」「im-using」と入力 Firefox Nightlyを再起動
アドオン一覧にTampermonkeyが現れるのでインストール
それっぽいスクリプトをつくる
code:script.js
// ==UserScript==
// @name まいぶっくまーくれっと
// @version 0.1
// @description 説明
// @match *://*/*
// @grant GM_registerMenuCommand
// @noframes
// ==/UserScript==
(() => {
GM_registerMenuCommand('メニューコマンド名', () => {
/* ブックマークレットの内容 */
})
GM_registerMenuCommand('メニューコマンド名2', () => {
/* ブックマークレットの内容 (複数作れるよ!) */
})
})()
スクリプトをつくるうえでの注意
Tampermonkeyのブラウザ内エディタはAndroidだとめちゃくちゃ扱いづらいので別のテキストエディタアプリで編集して貼り付けたほうがいい
ブックマークレットのURLエンコード (%20 みたいなやつ) を解除 (URLデコード) して、javascript: を消して入れること
@nameとメニューコマンド名が被っているとコマンド名が表示されないので別の名前にする
こんな感じで選べるようになる
https://gyazo.com/6f565a970c48fe2eef35d0871ed70e5d
補足
任意のページを読み込む度に構文解析・メニュー追加処理が実行されるようになる
気持ちよくはない
コンテキストメニューからのみ実行できる // @run-at context-menu というのもあるけどこれはPCの右クリックメニュー限定でスマホから扱えないのでダメ
PCなら普通にブックマークレット実行できるし
自分の場合、元々アドオンを大量に入れてるから大差ない気もするけど