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 関係」カテゴリの記事
- Carbon Emacs のインストールと フォントの設定と Firefox addon It's All Text!(2009.12.25)
- Mapae on Fedora10(2009.03.26)
- howm で曜日。任意の日の曜日を得る。(2009.03.26)
- W-ZERO3[es] (ws007sh) 上の emacsCE で M-x calendar(2007.03.27)
- emacs の calendar を月曜始まりにする(2007.01.05)
この記事へのコメントは終了しました。
コメント
楽天にも書き込みしてしまったのですが、念のため。
今日(31日)、12時に教務課前にて、立会いをお願いいたします。
投稿: クロネコ | 2004/03/31 00:33