twitterに今みているページを投稿するブックマークレット

新しい記事を書きましたのでこちらもご参照ください

はてブtwitterの連携

この前ははてなブックマークを紹介しました。実ははてブtwitter連携することができるのです。

設定はこちらから

ここでつぶやき形式を

  • B! と URL を含むつぶやきをブックマークに追加する

にしておくと

  • B! コメント URL タイトル

という形式でtwitterに投稿すればタイトル部は無視されて、コメントをはてブのコメントにしてくれます。

URL短縮化サービス

ところで、twitterにURLをそのまま投稿すると長すぎるのでコメントがあまり書けなくなってしまいます。そのようなことを回避するためにいろいろなURL短縮サービスが存在します

短縮したアドレスを投稿

そこで今みているページをbit.lyで短縮化し、そのままtwitter

  • コメント URL タイトル

の形式で投稿できたら便利だと思い、ブックマークレットを作成してみました。

利用にはbitlyアカウントが必要ですので「http://bit.ly」でアカウントを作成してください。当然ながらtwitterアカウントも必要です。
そしたら

でbitlyのAPIkeyを取得してくだしあ。

取得しましたら、これがブックマークレットになります。

javascript:var w=window.open();var JSLoader=function(options){var options=options||{};this.pointer=0;this.finish=options.finish||function(){};this.append=options.append||null;this.queue={length:0,list:[],push:function(arg){this.list.push(arg);this.length++;}};return this;};JSLoader.prototype={next:function(){var self=this;var loader=new JSLoader({append:self.append,finish:function(){self._next();}});var args=[];for(var i=0,l=arguments.length;i<l;i++){loader.assign(arguments[i]);}self.assign(function(){loader.run();});return this;},_next:function(){var func=this.queue.list[this.pointer++];if(func){func();}},assign:function(arg){var self=this;switch(typeof arg){case'string':this.queue.push(function(){self.load(arg,{append:self.append,onload:function(){self.report();}});});break;case'function':this.queue.push(function(){arg();self.report();});break;}},report:function(){this.queue.length--;if(this.queue.length==0){this.finish();}},start:function(){this._next();},run:function(){for(var i=0,l=this.queue.length;i<l;i++){this.queue.list[i]();}},load:function(src,options){var options=options||{};var element=options.append||document.body||document.documentElement;var script=document.createElement('script');script.src=src;script.type=options.type||'text/javascript';script.onload=options.onload||function(){};if(options.charset)script.charset=options.charset;if(document.all){script.onreadystatechange=function(){switch(script.readyState){case'complete':case'loaded':script.onload();break;}};}element.appendChild(script);}};function responder(data){var s='';var first_result;for(var r in data.results){first_result=data.results[r];break;}w.location.href="http://twitter.com/?status="+encodeURIComponent(first_result["shortUrl"].toString()+"\x20"+document.title);}new JSLoader().next('http://bit.ly/javascript-api.js?version=latest&login=bitlyapidemo&apiKey=R_0da49e0a9118ff35f52f629d2d71bf07').next(function(){BitlyClient.shorten(location.href,"responder");}).start();

注意!このブックマークレットの"http://bit.ly/javascript-api.js?version=latest&login=bitlyapidemo&apiKey=R_0da49e0a9118ff35f52f629d2d71bf07"のlogin=〜とapiKey=〜の部分は先程取得しましたbitlyのapikeyに書き換えてください!

そしたら実行してみたくださいな。

  • コメント URL タイトル

で投稿されるはずです。はてブしたいときはB!をはじめにつければ良いのです。

何か問題などがございましたらご連絡ください

更新履歴

  • APIによる投稿だと文字化けするので、応急処置でhttp://twitter.com/?status= を使う方法に変更 (3/7 17:12)
  • ポップアップブロック回避対策と新規タブを開くように変更(3/7 19:37)