Google bookmarksの登録ブックマークレットを作る 第2回

先日作ったブックマーク(id:ky2009:20080919)ですが、firefoxだと登録画面は新しいタブに遷移します。
やっぱり、はてなブックマークのようにポップアップが出るように作りたいと思います。

その後、探してみるとオフィシャルのブックマークレットがあったようです。

Google Bookmarks FAQ
http://googlesystem.blogspot.com/2007/03/google-bookmarks-faq.html

javascript:(function(){var%20a=window,b=document,c=encodeURIComponent,d=a.open("http://www.google.com/bookmarks/mark?op=edit&output=popup&bkmk="+c(b.location)+"&title="+c(b.title),"bkmk_popup","left="+((a.screenX||a.screenLeft)+10)+",top="+((a.screenY||a.screenTop)+10)+",height=420px,width=550px,resizable=1,alwaysRaised=1");a.setTimeout(function(){d.focus()},300)})();

これを見る限り、ブックマークレットの作り方として、できる限り短く作った方がいいと感じました。

手を加えたブックマークレット

こちらが今回少し手を加えてみたものです。

javascript:(function(){var%20de=document.getElementsByName('description');if(de[0]){m=de[0].content;}else{m="";}var%20a=window,b=document,c=encodeURIComponent,d=a.open("http://www.google.co.jp/bookmarks/mark?op=edit&output=popup&bkmk="+c(b.location)+"&title="+c(b.title)+'&annotation='+c(m),"bkmk_popup","left="+((a.screenX||a.screenLeft)+10)+",top="+((a.screenY||a.screenTop)+10)+",height=420px,width=550px,resizable=1,alwaysRaised=1");a.setTimeout(function(){d.focus()},300)})();

文字数は約480になりました。

javascript:(
  function(){
    var de=document.getElementsByName('description');
    if(de[0]){
      m=de[0].content;
    }else{
      m="";
    }

    var a=window,
        b=document,
        c=encodeURIComponent,
        d=a.open("http://www.google.co.jp/bookmarks/mark?op=edit&output=popup&bkmk="+c(b.location)
                 +"&title="+c(b.title)
                 +'&annotation='+c(m),
                 "bkmk_popup",
                 "left="+((a.screenX||a.screenLeft)+10)+",
                 top="+((a.screenY||a.screenTop)+10)+",
                 height=420px,
                 width=550px,
                 resizable=1,
                 alwaysRaised=1
                ");
    
    a.setTimeout(function(){d.focus()},300)
  }
)();

前回と特徴的に違うのは、関数化したところでしょうか。
あとは、opの属性が"add"から"edit"変わったり、"output=popup"のオプションが追加されました。
"popup"属性がポップアップの要因だと思われます。
これらについてはもう少し調べてみたいと思います。
あとは、タグ(ラベル)入力もある程度補助してみたいのですが、今のところmetaタグkeywordあたりで考えています。