Rimo をポップアップ・ウィンドウで見るブックマークレット

ブックマークレット (Bookmarklet) とスクリーンショット

Rimo をだらだらと見るのに、"FirefoxでRimoをこっそり見る - γ-GTP" にあるようにして Firefox (Iceweasel) のサイドバーに表示させてたのだけど、実は個人的にはサイドバーはふだんブックマークを表示させてて、そしてそれなりの頻度で使ってたので、Rimo にサイドバーを占有されるとちょっと不便だったりしたのだった。
というわけで、別個に小さなウィンドウを開いて Rimo を表示させることにした。検索してみたけどそのものずばりのは見つからなかったので、JavaScript なんてまったくわからないのに、しかたがないから調べながらシンプルなブックマークレットを書いて試してたら、灯台下暗し、"Rimo 関連ツール・テクニックまとめ - Rimo(リィモ)開発日記" のコメントにすでにあったのだった (その記事自体は読んでたけど、コメントまでは読んでなかった……)。void() ってやつの中に入れたほうがいいのか。
自分と同じようにプログラミングできないデスクトップ Linux ユーザ (Linux には専用ツールが出てない) とか、ブックマークレットですむならすませたいって人とかに需要があるかもしれないと思い、メモを残しておく。
ブックマークレットは以下のとおり。変えやすいように、ひととおりのパラメータをならべたりした。

javascript:void(window.open('http://rimo.tv/', 'Rimo', 'left=9999, top=0, height=240, width=320, menubar=0, toolbar=0, location=0, directories=0, status=1, resizable=1, scrollbars=1'));


ブックマークレットの作りかたについては、"ブックマークレットとは - はてなキーワード" にある "ブックマークレットの一般的な利用方法" の "2.プログラムコードが直接書かれている場合" にあるとおり。どこかてきとうなページをブックマークして、そのブックマークのプロパティを開き、URL 部分を上の "javascript:〜" に置き換えるだけ。左画像のような感じ。名前はなんでもいい。
あとはそのブックマークをクリックすると小さなウィンドウがポップアップして Rimo が表示される。

使用イメージはこんな感じ。

ユーザーチャンネル履歴画面
激しくいろんなのが重なってて、"おしゃべり中" ボタンなんかは画面外に消えちゃってて使えないけど、"→ユーザーチャンネル検索へ" ってのも一応押せる (ボタンの隙間から) し、使える。
チャンネル再生中画面
OK。小さい画面だと YouTube の画質でも綺麗に見えたりもして。
リモコン表示中画面
ちょうど画面におさまる。問題なし。

ついでに、デスクトップ全体のイメージ

気づいたこと (バグ? 仕様?)

コメントが表示されない。
サイドバーで Rimo を表示させてるときもそうだったけど、小さく表示させてるときは吹き出しコメントが表示されない。小さなウィンドウにひしめくコメントを読みたいという気もしないので、これでいいけど。
リモコンの "User Channels" ボタンを押したときの挙動がちがう。
URL の遷移なく "週間"、"人気"、"新着" などのボタンがならんでる Flash 画面が現れるはずが、http://rimo.tv/channel/ に移動してしまう。

後者はやっぱりバグかも。もっとも、これらはうちの環境に原因があるのかもしれないけど。

追記: 上の後者の問題について、ちょっと調べてみた。Rimo 表示部分の縦幅 (ブックマークレット中の height の値) が 301 以下の場合に上記のようになってしまうみたい。302 以上だとだいじょうぶ。一応 idea:15447 に登録してみた。

各パラメータについてのメモ

"Window.open() - Web APIs | MDN" を読んで、ちょっと確認したりしたメモ。
まず、Firefox を例にウェブ・ブラウザの各部名称を示す図 ("Window.open() - Web APIs | MDN" にて Creative Commons 表示 - 継承 ライセンスのもとに公開されてる画像のコピー)。

もう一度、ブックマークレット

javascript:void(window.open('http://rimo.tv/', 'Rimo', 'left=9999, top=0, height=240, width=320, menubar=0, toolbar=0, location=0, directories=0, status=1, resizable=1, scrollbars=1'));

以下、パラメータのリスト。

left (MSIE, Firefox, Opera)
新しいウィンドウを現在の画面左端からどの距離に出すか、ピクセル数で指定する。右端に出したいので 9999 にした (画面外に出たりはしない)。左端に出したい場合は 0 に。
top (MSIE, Firefox, Opera)
新しいウィンドウを現在の画面上端からどの距離に出すか、ピクセル数で指定する。上端に出したいので 0 にした。GNOME パネルはちゃんとよけて出てくれる。
height (MSIE, Firefox, Opera)
新しいウィンドウのウェブ・ページ表示部分の縦幅 (図の "innerHeight or height") をピクセル数で指定する (100 以下にはならない)。ウィンドウ全体の縦幅はこれより大きくなる。とりあえず 320 にした。height と width で 3:4 になるようにすると効率的な画面サイズになる。
width (MSIE, Firefox, Opera)
新しいウィンドウのウェブ・ページ表示部分の横幅 (図の "innerWidth or width") をピクセル数で指定する (100 以下にはならない)。ウィンドウ全体の横幅はウィンドウ枠ぶんだけこれより大きくなる。とりあえず 200 にした。height と width で 3:4 になるようにすると効率的な画面サイズになる。
menubar (MSIE, Firefox)
新しいウィンドウにメニューバー (図の "menubar") を表示するかどうか、yes/no または 1/0 で指定する。いらないので 0 にした。
toolbar (MSIE, Firefox)
新しいウィンドウにナヴィゲーション・ツールバー (図の "navigation toolbar"。←ボタン、→ボタンなどと検索窓) およびタブ・バー (図の "tab bar") を表示するかどうか、yes/no または 1/0 で指定する。いらないので 0 にした。ちなみに 1 にすると、Hatenabar を使っている場合 Hatenabar も出てしまう。
location (MSIE, Firefox, Opera)
新しいウィンドウにロケーション・バー (図の "location bar") を表示するかどうか、yes/no または 1/0 で指定する。MSIE7 はディフォルトで強制表示だそうで、Firefox もヴァージョン 3 からそうなるとあり、表示させておこうかと 1 にしてみたら、ここでも Hatenabar が出てしまったので 0 にした。
directories (MSIE, Firefox)
新しいウィンドウにブックマーク・ツールバー (図の "bookmarks toolbar"。MSIE の場合はリンク・バー) を表示するかどうか、yes/no または 1/0 で指定する。いらないので 0 にした。
status (MSIE, Firefox, Opera)
新しいウィンドウにステータス・バー (図の "status bar") を表示するかどうか、yes/no または 1/0 で指定する。表示させておこうかなと思い 1 にした。いらないなら 0 に。
resizable (MSIE, Firefox, Opera)
新しいウィンドウをサイズ変更可能にするかどうか、yes/no または 1/0 で指定する。不可能にするメリットが思いつかないので 1 にした。ちなみに、うちの環境では 0 にしてもなにも変わらなかった。
scrollbars (MSIE, Firefox)
新しいウィンドウでスクロールバーを表示可能にするかどうか、yes/no または 1/0 で指定する。Rimo のチャンネル再生中の画面は全面 Flash だからスクロールバーが出ることはなく、邪魔になることもないので 1 にした。

"Rimo 関連ツール・テクニックまとめ - Rimo(リィモ)開発日記" のコメントに書かれてるブックマークレットには dependent というパラメータも使われてるのだけど、MSIEOpera には元より意味がなく、Firefox でも廃止方向だとあり、なによりうちではなんにも変わらなかったので消してしまった。

おまけ (ポップアップ DARAO)

上のブックマークレットhttp://rimo.tv/ のところを http://darao.tv/ にすれば DARAO 用になる。ちょっとスクリーンショットを撮ってみた。

トップ表示中画面
チャンネル名が頭のほうしか表示されないので、あらかじめ大きな画面で確認しておかないとダメかも。
チャンネル再生中画面
問題なし。ていうか、字幕.in って良いサーヴィスかも (字幕.in のチャンネルを再生中)。
リモコン表示中画面
リモコンはちゃんと小さなサイズになってくれるみたい。