« マウスのカーソルが表示されないトラブル。Win98/WinME の妙なところ。 | トップページ | うちの WinMe なマシンで、Loadqm.exe が、悪さをしているようなので、はずした。 »

emacs の diary に某非常勤先の出講日を設定してみる。

emacs の diary のエントリーには、emacs-lisp の式を書くこともできる。その式を評価してみて、t が帰るとその日のエントリになる。

例えば、某非常勤先で授業をする日は、下のように書ける。
date という「変数」(定数か?)のことなどは、diary-lib.el の該当箇所をよく読んでほしい。

%%(let ((dayname (calendar-day-of-week date)))
  (and (or (diary-block 4 12 2004 7 31 2004)
	   (diary-block 9 24 2004 12 22 2004)
	   (diary-block 1 11 2005 1 31 2005)
	   )
       (= dayname 3)
       (not (diary-date 5 5 2004))
       (not (diary-date 11 3 2004))
       )
  ) 某大学の授業

つまり、まず、dayname という変数に、(calendar-day-of-week date) の結果を let する。
calendar-day-of-week は、日付を入力にして、その曜日をあらわす整数(0 が日曜で6まで)を返す関数。
だから、dayname には、曜日情報が代入されることになる。後で、曜日判定に使う。

授業期間は、「4月12日から7月31日まで」か「9月24日から12月22日まで」か「1月11日から1月31日まで」かでその中の (= dayname 3) dayname が 3 つまり水曜日である日が授業をする日。これで済めばいいのだが、そうはいかない。本当は、祝日、祭日を判定する関数があればいいのだが、上のように力技。

diary-file に emacs-lisp を書く技を使っている人はあまりいないのだろうか。


|

« マウスのカーソルが表示されないトラブル。Win98/WinME の妙なところ。 | トップページ | うちの WinMe なマシンで、Loadqm.exe が、悪さをしているようなので、はずした。 »

emacs 関係」カテゴリの記事

コメント

楽天にも書き込みしてしまったのですが、念のため。
今日(31日)、12時に教務課前にて、立会いをお願いいたします。

投稿: クロネコ | 2004/03/31 00:33

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/11083/326206

この記事へのトラックバック一覧です: emacs の diary に某非常勤先の出講日を設定してみる。:

« マウスのカーソルが表示されないトラブル。Win98/WinME の妙なところ。 | トップページ | うちの WinMe なマシンで、Loadqm.exe が、悪さをしているようなので、はずした。 »