下林明正のブログ

個人的かつ雑多なブログです。

tiqavを高速に利用するためのChrome拡張"tiqav-quick"を公開しました

クリスマス

Chrome ウェブストア - tiqav-quick からインストールすることができます。

高速にMarkdown形式でコピーできるのでご利用ください。

Chrome拡張をつくるのは初めてだったのですが、適当にやっていたらなんとかなりました。 その辺りの情報についてもまとめておきたいと思います。

そもそもはjpeg.toのtiqav版みたいなのを作ろうかと思っていたのですが、 dev.tiqav.com を見ていたところI'm Feeling Luckyの項を見つけてしまいやりたかったことは既に実装されていたので、更に便利に使おうとChrome拡張をつくってみることにしました。

先ず、これまでの経験上変な日本語サイトを見るよりも公式サイトを見たほうが絶対に手っ取り早いということが分かっていたので、 Google Chrome Extensions をみながら適当にHello Worldを済ませました。

Chrome拡張の実体は大体HTMLとJavascriptなので、適当にjQueryをダウンロードしてきてtiqavのI'm Feeling Luckyをインクリメンタル検索で表示してみたりしていました。この辺りは本当に普通にjQueryを使うのとほぼ変わりなかったので楽でした。

次に、クリップボードにコピーする機能を実装しました。 [JavaScript] テキストをクリップボードにコピーする | tande lab. を参考に実装すれば良いのですが、 どうやらコンテントページ(及びコンテントスクリプト)からはクリップボードの操作が許可されていないらしく、バックグラウンドページという仕組みを利用することになりました。 そんなわけで適当に、 メッセージ | Chrome Extensions API リファレンス などを参照しつつコンテントページからsendRequestを飛ばして、バックグラウンドページで拾ってやってクリップボードにコピーするようにしました。 manifest.jsonのpermissionsにbackgroundとclipboardWriteを追記するのを忘れないように。

最後に、アイコンなどの画像を設定するわけですが、今回は19x19, 48x48, 128x128の3種類を用意しました。 それぞれ、実際にブラウザに表示されるアイコン、拡張機能一覧で表示されるアイコン、Chromeウェブストアで表示されるアイコン、となっています。 128x128のアイコンは正方形の場合は96x96でつくって余白を16px挿入せよ、とのことでした。

最後に、zip -r tiqav-quick *みたいな感じで適当にディレクトリをzip化して、デベロッパーダッシュボードからパッケージをアップロードして、適当にフォームに入力して公開すれば、どうやらChromeウェブストアに登録されたようです。 この際、Googleから「本人確認のために$5を払え」とのことでGoogle Wallet経由で金を払うことになったのですが、僕自身のアカウントは既にAndroid開発者としての登録を金を払って済ませているので筋が通ってないな、と思いました。

そんなわけで細かい部分に関しては shimobayashi/tiqav-quick · GitHub でも見てください。

ブラウザにちくわが表示されているのはなかなか良いです。

追記

Fix Chrome error download was not a CRX -

Download was not a crxとかいうわけのわからんエラーが出たらGoogleアカウントでログインしてから試してみて下さい。

追記

文字化けする問題を解決するpull-reqをマージしてパッケージを更新しました。