概要
FirefoxでRSSを読み込むと、簡易RSSリーダの画面になり、外部RSSリーダを選んで登録することができる。・・・・ように見えるが、アプリケーションを選択からThunderbirdを選んでも、Thunderbirdにxmlが表示されるだけで登録されない。
ぐぐってみるとこんなのがあった。Firefoxの設定でなんとかなるようだ。
試した環境は以下の通り
- WindowsXP SP2
- Mozilla Firefox 2.0.0.1
- Mozilla Thunderbird 1.5.0.9
やること
- ThunderbirdでRSS用のアカウントを設定しておく
- Firefoxの定義ファイルを修正する
- Firefoxに新規で設定を追加
ThunderbirdでRSS用のアカウントを設定しておく
既にThunderbirdでRSSを購読している場合は以下の設定が済んでいるはずなので不要。
- Thunderbirdのメニューバーからツール>アカウント設定を選択。
- 「アカウントを追加」ボタンを押す。
- 「RSS ニュースとブログ」をチェックして 次へ
- アカウント名を入力して 次へ(デフォルトでは「ニュースとブログ」になっている)
- 確認して 完了
Firefoxの定義ファイルを修正する
定義ファイルの位置は、インストールディレクトリ以下のcomponentsディレクトリの中。標準でインストールしてあれば「C:\Program Files\Mozilla Firefox\components」にあるはず。
- Firefoxは終了しておく。
- 念のためFeedConverter.jsのバックアップを取っておく。
- FeedConverter.jsを開くと332行目付近が以下のようになっているはず。
case "client": var clientApp = prefs.getComplexValue(PREF_SELECTED_APP, Ci.nsILocalFile); //@line 393 "/cygdrive/c/builds/tinderbox/Fx-Mozilla1.8-release/WINNT_5.2_Depend/mozilla/browser/components/feeds/src/FeedConverter.js" var ss = Cc["@mozilla.org/browser/shell-service;1"]. getService(Ci.nsIShellService_MOZILLA_1_8_BRANCH); ss.openApplicationWithURI(clientApp, spec); break; - 上記の部分を以下のように書き換える。
case "client": const PREF_SELECTED_APP_ARGS = "browser.feeds.handlers.application.args"; const PREF_SELECTED_APP_URIPREFIX = "browser.feeds.handlers.application.uriPrefix"; var clientApp = prefs.getComplexValue(PREF_SELECTED_APP, Ci.nsILocalFile); var feedhandlerArgs = safeGetCharPref(PREF_SELECTED_APP_ARGS, Ci.nsIILocalFile); var uriPrefix = safeGetCharPref(PREF_SELECTED_APP_URIPREFIX, Ci.nsIILocalFile); var file = Cc["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); file.initWithPath(clientApp.persistentDescriptor); var process = Cc["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess); process.init(file); if (uriPrefix) spec = uriPrefix + spec; if (feedhandlerArgs) var args = [feedhandlerArgs, spec]; else var args = [spec]; process.run(false, args, args.length); break;
Firefoxに新規で設定を追加
- Firefoxを起動する。
- アドレスバーに「about:config」と入力する。
- ウィンドウ中の適当な場所を右クリックし、新規作成>文字列 を選択。
- 設定名に「browser.feeds.handlers.application.args」、値に「-mail」を入力する。
- 同様の手順で、設定名「browser.feeds.handlers.application.uriPrefix」、値「feed:」を作成する。
- Firefoxを再起動する。(必要かわからないので念のため)
試す
- RSSがフィードされているページを表示し、アドレスバーの右の黄色いアイコンをクリックするか、rdfはxmlのあるリンクをクリックする。
- フィードリーダーの指定のところのプルダウンメニューで、アプリケーションを選択し、thunderbird.exeを選択する。 標準でインストールしてあれば、「C:\Program Files\Mozilla Thunderbird\」にあるはず。
- 「購読」ボタンを押すと、ThundrebirdのRSSアカウントに登録される。

コメントする