Fireoxに入れているアドオン (ブックマークツールバー多段化・新しいタブを開くボタン)

最近Firefoxの調子が悪く、再インストールしました。
数えてみると、合計50個のアドオンが入れていたのですが
これを機に整理することにしました。


その中で、リストラされなかったもので、
かつFirefox Add-ons(ja)(https://addons.mozilla.org/ja/firefox/)になかったものを紹介します。

Wrap Bookmarks Toolbar

Wrap Bookmarks Toolbar
http://firefox.geckodev.org/index.php?Wrap%20Bookmarks%20Toolbar

Firefox3以降、Firefox Add-onsに掲載されておらず、捕捉していませんでした。
ブックマークツールバーを折り返して、多段表示してくれるもの。
これは表示領域に余裕のあるディスプレイ向けかもしれません。
ブックマークが多いと、画面半分がツールバーに占領される可能性があります。

New Tab Button Position

New Tab Button Position
http://f22.aaa.livedoor.jp/~ptdb/firefox/theme.html

以前はFirefox Add-onsにもありましたが、今はこちら公開されているようです。
IE7のように、タブ追加ボタンをタブ右端に実現してくれるもの。

はてなグラフを使ってみた

今さらですが、はてなグラフでグラフを描いてみました。

はてなグラフ
http://graph.hatena.ne.jp/

  • あなたは麻生内閣を支持しますか、しませんか?

ky2009の支持するとky2009の支持しないとky2009のわからない答えたくない
データ元はこちらから。

政治アンケート(提供:Yahoo!リサーチ)
http://seiji.yahoo.co.jp/research/

感想

  • データのセル入力が面倒くさい。
    • 日付を一度入力すると、変更ができない。
    • csvインポートの機能があるが、それ以外だといちいち入力しないといけない。
  • 1データ1グラフという管理システム
    • 1つのグラフに複数のカラムをプロットしようとすると、比較機能を使わないといけない。
      • 比較機能の表示だと、最大値・最小値が自動的に丸められるようです。

横軸は時系列しか設定できないので、
目的特化型のサービスかなと思います。
(体重管理とか家計簿とか)


今回は全部、1ページずつ見ながら手入力しました。
CSVインポート以外からのデータ入力は、もっと楽な方法が提案できそうです。
あと入力して思ったのは、APIとかは使わずに、自動集計できないかなと思いました。

Windowsで擬似的にDNSを書き換え

windowsで擬似的にホスト名の宛先を変える方法です。

書き換え方


以下の場所のファイルを、テキストエディタなどで開きます。
(XP・VISTAはこの場所だと思います。)

C:\Windows\System32\drivers\etc\hosts

そして一番下の行などに、以下のような例を書き加えます。

#実際のアドレス 設定するホスト名
127.0.0.1       yahoo.com

これだと、「yahoo.com」とブラウザに入力すると
127.0.0.1」のローカルホストにつながります。
そのかわり、"本当の"yahoo.comにはつながりません。
子供のいたずら防止とか,ローカルサーバのデモとかのちょっとした時に使えそうです。

参考ページ

ホストの切り替え
http://lumber-mill.co.jp/gallery/view/tips/other/hosts

Web Slices(IE8の新機能)

Betaの時代から細々と機能としてはあったようですが、RC1になってIE8チームからアナウンスがありました。

Internet Explorer 8: Faster and easier
http://www.microsoft.com/windows/internet-explorer/beta/features/web-slices.aspx


機能としては、特定コンテンツをクリッピングして、そこの箇所を自動巡回してくれるもののようです。

Web Slice を使用するコンテンツの購読
http://msdn.microsoft.com/ja-jp/library/cc196992(vs.85).aspx

価格.com

日本語のコンテンツでは、価格.comで利用できることは確認できました。

IE8 Web Sliceを使って気になる製品の価格情報をキャッチ!
http://kakaku.com/tools/webslice/

アドオンのページ

ここのページから各種アドオンをインストールできます。

Add-ons Gallery: Web Slices
http://www.ieaddons.com/en/webslices/

今のところ、どこのサイトでもクリッピングできるわけではなく
各サイト用のアドオンを入れないと無理そうです。
正式版リリースまでに、各Webサービスで実装してくれるのでしょうか。


追記:2/6
すでに、日本のサービスのアドオンが提供されていました。

http://www.ieaddons.com/en/webslices/?lang=jp
http://www.ieaddons.com/jp/

SQLite Manager

RailsのデフォルトのDB

Ruby on RailsデフォルトDB変更:MySQLからSQLite3へ
http://builder.japan.zdnet.com/news/story/0,3800079086,20363548,00.htm

1年ほど前の話ですが、2.0系からデフォルトDBがMySQLからsqliteになりました。
食わず嫌いで使ってこなかったのですが、
集合知プログラミングにも使われていたのもあって、最近こちらにシフトしました。

SQLite Manager

使い始めて、MySQLのQuery BrowserのようなGUIツールはないのかと思って見つけたのがこれです。

SQLiteを操作できるFirefox拡張機能SQLite Manager 0.2.4」リリース
http://codezine.jp/article/detail/1840

firefoxのadd-onなのでブラウザ上から編集できます。

SQLite Manager
https://addons.mozilla.org/ja/firefox/addon/5817

これでSQL文に触れずに済んでいます。

Railsアプリにブックマークレットを実装する

SBMなどのWebアプリケーションには欠かせないブックマークレットですが
Railsで作ったアプリに付け加えてみたいなあと考えていました。

プラグイン

とりあえず探してみると、下のようなプラグインを見つけました。

Bookmark It! Rails plugin for adding bookmarklets.
http://blog.nanorails.com/articles/2006/12/18/bookmark-it-rails-plugin-for-adding-bookmarklets

しかし、古めの記事だったのと、面倒くさそうだったので今回は回避しました。
使ったことがある方がいれば感想が聞きたいです。

コントローラに書き加える方法

次に発見したのがこの記事です。

Creating and Integrating Bookmarklets with Rails
http://railstips.org/2008/11/13/creating-and-integrating-bookmarklets-with-rails

直にコントローラに書き込むことで実装しています。
丁寧にもサンプルムービーもあり、手軽そうだったのでこの方法を試すことにしました。

Creating and Integrating Bookmarklets with Rails
http://video.railstips.org/creating-and-integrating-bookmarklets-with-rails/

ブックマークレットの実装

上のページを参考に実装を紹介します。

ビュー

まずは、ブックマークレットの本体を用意します。
index.html.erbなど適当なところに貼り付けます。

<p>
  <a href="javascript:var d=document,w=window,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),f= 'http://<%= request.host_with_port %>/bookmarks/new',l=d.location,e=encodeURIComponent,p='?v=1&u='+e(l.href)%20+'&t='+e(d.title.replace(/^\s*|\s*$/g,''))%20+'&s='+e(s),u=f+p;location.href=u;">
    ブックマークする
  </a>
</p>
コントローラ

次にコントローラに受け手の役目のコードを書きます。
SBMの場合、ブックマークレットを押すとフォームに入力されていればよいので
scaffoldで生成したコードだと、newメソッドなどに書き加えます。

@bookmark.title   = params[:t]
@bookmark.content = params[:s]
@bookmark.url     = params[:u]


これは先ほどのブックマークレットに改行を加えたものです。

<p>
  <a href="javascript:var d=document,
			   w=window,
			   e=w.getSelection,
			   k=d.getSelection,
			   x=d.selection,
			   s=(e?e():(k)?k():(x?x.createRange().text:0)),
			   f= 'http://<%= request.host_with_port %>/bookmarks/new',
			   l=d.location,
			   e=encodeURIComponent,
			   p='?v=1&u='+e(l.href)%20+'&t='+e(d.title.replace(/^\s*|\s*$/g,''))%20+'&s='+e(s),
			   u=f+p;
			   location.href=u;
  ">
    ブックマークする
  </a>
</p>

uにURLを、tにタイトル、sに選択範囲が渡されていることがわかります。
これらのパラメータを調整することで、使い方は色々考えれそうです。