SSブログ
RSS [RSS1.0] [RSS2.0]
共謀罪を含む改悪組織犯罪処罰法は
【「共謀罪」法 衆参両院議員の投票行動(東京新聞 2017/6/16)】

ThunderbirdにRSSフィード確認間隔切り替えボタンを設置

 ThunderbirdをRSSリーダーとして利用しているのだが、新着記事の確認間隔を8分にしていると、未読の記事を読み終わる前に新着記事の取得が始まって、その間はThunderbirdが重くなるので待つしかないことが多かった。未読記事が多い状態では新着記事の確認間隔を一時的に60分くらいにしておけば、未読記事を読む作業が中断されにくい。オプションウィンドウを開いて設定を変えれば良いのだが、ちょっと面倒なので切り替えボタンが欲しくなり、設置した。

 【ThunderbirdにJavaScriptの切り替えボタンを設置】と同様に、Thunderbirdのアドオン【Custom Buttons】を使うことで、新着記事の確認間隔を8分と60分に切り替えることができるようになった。
 そのコードは【ThunderbirdにJavaScriptの切り替えボタンを設置】のコードを少し変更しただけである。

 まず、文字列、整数値、真偽値の取得と設定はそれぞれ、getCharPref()とsetCharPref()、getIntPref()とsetIntPref()、getBoolPref()とsetBoolPref()を使うらしく、Thunderbirdの新着確認のPrefはmail.server.server#.check_timeで整数値だから、getIntPref()とsetIntPref()を使うらしい。JavaScriptの切り替えではgetBoolPref()とsetBoolPref()だった。そのことを知らずに、getBoolPref()とsetBoolPref()のままで修正しようとして失敗が続いた。他の変更はJavaScriptを使い慣れている人ならば当たり前のようなことばかり。私はネットで調べないと分からなかったが…。

 さて、まずは、Codeの部分。

switch(this.PS.getIntPref(this.pref)){
    case 8: this.PS.setIntPref(this.pref,60);break;
    case 60: this.PS.setIntPref(this.pref,8);break;
}

 Initialization codeの部分は次の通り。

this.pref='mail.server.server#.check_time';
this.setState=function(){
 var state=this.PS.getIntPref(this.pref);
 if (state==8){
  this.checked=false;
 }else{
  this.checked=true;
 }
}
this.PS=
 Components.classes['@mozilla.org/preferences-service;1']
 .getService(Components.interfaces.nsIPrefBranch);
this.ob={};
this.ob.observe=this.setState.bind(this);
this.PS.addObserver(this.pref,this.ob,false);
this.setState();

 mail.server.server#.check_time の部分は私は mail.server.server3.check_time だった。オプションの設定エディタで確認できる。
 これで新着記事の確認間隔を「8分/60分」に切り替えることができるようになった。
 この設定変更が有効になるのは、次の新着記事確認が終了した後のようなので、一度は我慢するしかない。
 気になるのは、【ThunderbirdにJavaScriptの切り替えボタンを設置】のボタンと一緒に設置してあって、起動時にInitialization codeを読み込むのだろうが、上記のコードで問題が起こらないかということ。今の所は問題が生じてないようだが…。また、ボタンの設置でThunderbirdが重くならないかということ。重くなるようなら改善する必要があるのだが、極端に重くなっている印象が無いので、しばらくはこのまま利用しようと思う。


nice!(0)  コメント(0)  トラックバック(0) 
カテゴリー:サイトを見て
共通テーマ:パソコン・インターネット

読者の反応

nice! 0

sonet-asin-area

コメント 0

コメントを書く 

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。
captcha

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。