ツイートボタンがないサイトをTwitterに送るブックマークレット

一部の環境で日本語URLをSNSに流すときうまくコピーできずにURLが途切れるという話を聞いたので、ブックマークレット作ってみました。

ツイートボタンがないサイトをTwitterに送るブックマークレット

Twitterで誰かがURLを流してきた時、たまにアドレスが途中で途切れて繋がってないことがあって「何だろうな」と思ってました。どうやら一部の環境で日本語URLの処理がうまくいかないのが原因みたいです。

紹介されたサイトが面白そうだと思ってもクリック一発で飛んでいけないと不便なので、そのままコピーできる形式のbookmarkletを作ってみました。

ブックマークレットとは?

ブックマークレットとは、WEBブラウザにおいて任意のページで作動するプログラムの一種です。

ブラウザのブックマーク機能に、お気に入りURLの代わりとしてJavaScriptによるプログラムコードを登録しておくと ちょっとした機能拡張が行えます。

使い方は以下の通りです。

  • リンクになってるスクリプトをブックマーク欄に登録する
  • 任意のページで該当ブックマークレットを選択する
  • プログラムが実行される

サイトタイトルとURLを取得するブックマークレット

閲覧中のページをクリップボードにコピーするためのブックマークレットです。

ページタイトルとURL表示 ←このリンクをブックマーク

(ちなみにクリックするとデモとして動作します。以下同様。)

【JavaScript】
javascript:var a=getSelection().toString();a=a?'%22'+a+'%22%20':''; window.prompt('%E6%96%87%E5%AD%97%E5%88%97%E3%82%92%E3%82%B3%E3%83%94%E3%83%BC%E3%81%97%E3%81%A6%E4%B8%8B%E3%81%95%E3%81%84',a+document.title%20+'%20'+%20document.URL);void(0);

ブックマークレット仕様と使い方

任意のページ閲覧中にブックマークレットを使うとサイトタイトルとURLがテキストウィンドウに表示されます。

閲覧中のURLを表示するブックマークレット

文字列をコピーしたのち、メールやSNSなどお好きな用途にぺたぺた貼って下さい。ちなみに、文字列の一部を選択するとその部分もテキストウィンドウに引用符突きで送られます。

  • サイト閲覧中にブックマークレットを起動する
  • テキストエリアに読み込まれたサイトタイトルとURLをコピー
  • 文字を選択している場合は冒頭に引用符つきで表示される

なお、セキュリティ上の理由によりクリップボードへの自動コピーは行いません。

閲覧中のページをTwitterに流すブックマークレット

もういっこ派生パターン。ツイートボタンがないページをTwitter経由で開くブックマークレットです。

このページをTwitterに送る ←このリンクをブックマーク

【JavaScript】
javascript:var a=getSelection().toString();a=a?'%22'+a+'%22%20':'';location='http://twitter.com/share?url='+encodeURIComponent(document.URL)+'&text='+a+document.title.replace(/\|/g,'%257C');

※2015.02.13 URLにパイプ(|)が渡されたとき、ツイートできない不具合を修正しました。

ブックマークレット仕様と使い方

任意のページでブックマークレットを使うとツイート窓にサイトタイトルとURLが送られます。先ほどと同様、選択中の文字列も引用符つきで冒頭に表示されます。

ページをTwitterに流す

  • サイト閲覧中にブックマークレットを起動する
  • Twitterの標準ツイート窓にサイトタイトルとURLが読み込まれる
  • 文字を選択している場合は冒頭に引用符つきで表示される

Wikipediaや日本語URLを使ったサイトなど、マルチリンガルURLが途切れる方は試してみて下さい。

ツイートボタンが設置されてないレガシーなページをシェアする時にも結構便利です。

おまけのFacebookとはてな版

ついでなのでFacebook&はてなブックマークバージョンも作りました。

Facebook:Facebookでいいね!する ←これをブックマーク
はてぶ:はてなブックマークでコメントする ←これをブックマーク

あんまり沢山入れると邪魔な気もしますけど、アドオンと違ってRAMを圧迫しないので その点では軽快かも知れません。

URL流し込むだけで変なことはしてないはずですけど、書きっぱなしで色々と雑なんで動かなかったらごめんなさい。不具合あるようだったら教えて下さい。