最近、怠け癖が酷くて、インターネットを閲覧しているときに面白いものを見つけても、毎回微信にログインするのが面倒くさい。スマホに送りたいのに、微信を開いてスマホでQRコードをスキャンするのも手間がかかる。

表情包
以前、Serverサーバー 酱を使って Wecom 酱をサーバーに構築した Vinking 酱というのを作ったことがある。普段はブログのコメント通知に使っているが、ブラウザから直接 Vinking 酱を通じて微信にメッセージを送信することができないかと考えた。これならとても便利だろう。少し時間を使って簡単なスクリプトを作り、油猴に導入して動作するようにした。
プラグインの基本原理は、まず window.getSelection().toString() を使ってマウスで選択した文字を取得し、次にキーボードのctrl、alt、P の組み合わせを監視する。選択された文字が空でない場合、ctrl +alt +P を押すことで選択された文字を微信に送信できる。しかし、テストしているとよく微信側で長い文章の一部しか受信できないことがあった。& の後ろの部分が受信されないことがあったのだ。後で調べてみると、& の処理を忘れていたため、& の後の文字列がURLのパラメーター部分になってしまうことが分かった。特定の文字処理を追加することで、自分のニーズに合った動作を実現することができた。

効果
ついでに、ウェブページのQRコードをURLに変換して微信に転送するためのプラグインも作った。jsQR.js、html2canvas.min.js、jQuery を使ったが、クロスドメインの問題で手こずり、最終的に怠け癖が発動して諦めてしまった。