SL Zaurus のカレンダの休日設定についてまとめます。 試したのは SL-C700 ですが、他の機種 (SL-C750, SL-C760, SL-B500, SL-A300 等)でも 似たようなものでしょう。
/home/QtPalmtop/etc/holiday.dat
というファイルが
休日設定ファイル。これをいじればカレンダ等で祝祭日の定義ができます。
このファイルは UTF-8 でかかれているので、PC で編集したければ 対応したエディタを使えば良いんですが、Zaurus だけでやりたければ メモ帳が使えます。以下はその説明。
/home/QtPalmtop/etc/holiday.dat
を開けないので適当にリンクを張ってやります。このとき、拡張子
(というかファイル名の末尾)を .txt にします。
/home/QtPalmtop/etc/holiday.dat
と /home/QtPalmtop/etc/
に qpe のグループ書き込み権限を与えます。(デフォルトと違う状態に
なってしまうので、それが気持ち悪い人は root 権限で別の方法で
やってください。ぼくは気にしませんけど。)
以上の1.と2.の部分を実行した例が以下のとおりです。
bash-2.05$ ln -s /home/QtPalmtop/etc/holiday.dat ~/Documents/Text_Files/holiday.txt bash-2.05$ su bash-2.05# chmod g+rw /home/QtPalmtop/etc bash-2.05# chmod g+rw /home/QtPalmtop/etc/holiday.dat bash-2.05# exit bash-2.05$
ちなみにアクセス権をデフォルトに戻したければ、作業後に 以下のようにやれば ok です。
bash-2.05$ su bash-2.05# chmod g-w /home/QtPalmtop/etc bash-2.05# chmod g-w /home/QtPalmtop/etc/holiday.dat bash-2.05# exit bash-2.05$
これは特に説明不要でしょう。自分の誕生日か何かで試してみてください。
(↑解釈が間違えているかも。間違ってたら指摘してください。)
これもわりと見たままです。通常のエントリに、W=bar I=(月曜=1..日曜=7とした曜日番号) を加えれば ok です。
例: 2004年以降の2月の第3月曜以降の最初の木曜
(ただし2000〜2003年は2/21)の場合
S=2000 B=2004 M=2 D=21 W=3 I=4 "2月第3月曜以降の最初の木曜記念日"
この月曜originのルールって、 アメリカの大統領選挙の「11月の第1月曜の次の火曜」とかに 準拠しているんでしょうか? たまたまこのルールだと(月曜が基準だから)ハッピーマンデーも記述できるし。
次は{春, 秋}分の日のように毎年かわってしまう場合です。
SL-C700 の holiday.dat を見てみると、春分の日は
S=1949 M=3 D=21 F=spring_equinox "春分の日"
となっています。
3/21 と定義されていますが、これが気持ち的には『デフォルト春分の日』みたいです。
でも、春分の日は3/21とは限らず、1日ずれることもあります。
そのような例外を書くのが F=spring_equinox で、
/home/QtPalmtop/etc/spring_equinox.dat
というファイルを参照せよ、の意味のようです。
この中に 1972年〜2037 年までの 3/21 以外の春分の日が
入っています。
ところで、holiday.dat
のコメント行に書いてあるとおり、
{春, 秋}分の日を何年まで表示するかはholiday.dat
の
頭の方の L= で決めるようです。
さて、ここで一つ疑問です。SL-C700 のデフォルトは L=2003
なのですが、上述のとおり spring_equinox.dat には 2037 年まできっちり
春分の日が記されています。L=2003 に何か意味あるのかな?
別に 2037 でいいじゃん、と思ってL=2037 にしてみました。
さて、どうなるかな?
holiday.dat への変更を有効にするために再起動します。
再起動したら、めでたく2037年まで{春, 秋}分の日が表示されるように なりました。 Zaurus のカレンダって 1970-2037 までしか対応していないから、 {春, 秋}分の日のデータは完全に持っているってことですね。 結局『2003年縛り(L=2003)』はなんだったんでしょう? 意味あるのかな? 誰か知ってたら教えてください。