*Article*


1998 | 12
1999 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2000 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2001 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2002 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2003 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2004 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2006 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08
2008 | 01 | 02 | 03 | 04 | 05
先月 2001年02月 来月
SUN MON TUE WED THU FRI SAT
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2001年02月01日(木)

perl

% perl -e '$_={"a"=>"b", "c"=>"d"};
        print shift keys(%{$_}), "\n";'  
Type of arg 1 to shift must be array (not keys) at -e line 2, near "),"
Execution of -e aborted due to compilation errors.
scalar の逆の関数って無いのだろうか。

* shift

って考えたら、shift って、単に ARRAY から要素を取り出すだけではなく、 配列を短くするんだった。ということで、keys の返り値をそのまま shift できるわけがない。
% perl -e '$_={"a"=>"b", "c"=>"d"};
        print scalar((keys(%{$_}))[0]), "\n";'
a
って感じでやればいけた。

2001年02月02日(金)

サーバ移転

一部うまくいってないため、日記が表示できない状態です(;_;)
しかも、ちょうど provider 側がトラブっているようで、現在メールが読めないとか…。

xyzzy

ふと xyzzy を試してみる。
Meadow 代わりにはならないが、notepad 代わりにはいいかな?

2001年02月05日(月)

...

直してくれないので、自力でなんとかする。

2001年02月06日(火)

antenna

こっそりアンテナを動かしてみる。

2001年02月07日(水)

メールアドレス

某氏に強制貸与してみる。

bbdb-emacs.el

x-face-e21.el と使うと x-face が表示されない問題を修正。

namazu_for_hns

気が付くと nijino.com の namazu_for_hns で「さくら」を検索すると 3つしか ヒットしないというあやしい状態になっていた。
NMZ.w を見てみるとどうも分かちがされていないような感じ。

* kakasi-2.3.3 & namazu-2.0.5

とりあえず、サーバに入れてある kakasi と namazu が古いのは確かなので upgrade。
% ./configure --prefix=$HOME/local
% make
% make install
% cd File-MMagic
% perl Makefile.pl PREFIX=$HOME/perl
% make 
% make install
% cd ..
% ./configure --prefix=$HOME/local --with-pmdir=$HOME/perl/lib/site-perl/5.005
% make
% make install

* 分かち

試しに、mknmz を --debug を付けて手で動かしてみて、 分かちが行われていないことを確認。
% $HOME/local/bin/mknmz --debug --include=$HOME/diary/namazu2/etc/mknmzrc \
	--media-type=text/hnf --template-dir=$HOME/diary/namazu2/template \
	$HOME/diary/2001

* LANG

mknmz を眺めてみたところ、LANG が ja の場合のみ分かちが行われていることに 気付く。mknmz を手で動かした時に分かちが行われなかったのはそのためか。
しかし、namazu_for_hns では、index 生成スクリプト内で LANG を設定している から問題無いはずだが。

* 解決?

せっかくだからと namazu_for_hns も upgrade したところ、無事分かちが 行われるようになった。
結局、原因は謎。

To Heart for ICURISE

yar-3 のとこから。
さっそくインストール! と思ったら CF の容量不足(;_;)

2001年02月08日(木)

Redirect

せっかくだから Redirect を設定してみました。

今日の Emacs

* nnshimbun

nnshimbun-har.el を元に fml な ML archive 全般に対応させてみたり。

* bbdb & x-face & MUA

寺西さんの WL の画面がかっこいいな。
Gnus でも Summary で x-face を表示できないかな。

* x-face-e21.el

遊んでみる暇は無く、また明日。

お買物

前に JUDY AND MARY のアルバム買ったのが随分前だから、何か買い逃したかと 思ってたんだけど、2年以上前の POP LIFE が前作なのか。

x-face-e21.el

ちょっとだけ x-face-e21.el で遊んでみる。
む、name の前に x-face を置かれると bbdb-emacs で name に付けてる underline が x-face にかぶって表示されちゃうよ。 とりあえず (set-face-underline 'bbdb-name nil) で回避(^^;
face フィールドのアイコン表示はいい感じ。

* before-string & face

before-string が設定されている文字列に overlay で face を設定すると、 before-string の face も同じになるのを回避できないものだろうか?
(let (start end)
  (if (get-buffer "*test*") (kill-buffer "*test*"))
  (pop-to-buffer (get-buffer-create "*test*"))
  (setq start (point-marker))
  (insert "hoge")
  (setq end (point-marker))
  (overlay-put (make-overlay start (1+ start)) 'before-string "fugo")
  (overlay-put (make-overlay start end) 'face 'highlight))

2001年02月09日(金)

Gnus Summary & x-face

Gnus の Summary で bbdb の x-face を 表示させてみた
(defvar gnus-bbdb-x-face-scale-factor 0.4)
(defun gnus-bbdb/summary-author-face-in-bbdb (header)
  "Given a Gnus message header, returns a mark if the poster is in the BBDB, \" \" otherwise.  The mark itself is the value of the field indicated by `bbdb-message-marker-field' (`mark-char' by default) if the indicated field is in the poster's record, and `gnus-bbdb/summary-known-poster-mark' otherwise."
  (let* ((from (mail-header-from header))
	 (data (condition-case ()
		   (gnus-bbdb/extract-address-components from)
		 (error nil)))
	 (name (car data))
	 (net (cadr data))
	 record x-face)
    (if (and data
	     (prog1
		 (setq record
		       (bbdb-search-simple
			name (if (and net bbdb-canonicalize-net-hook)
				 (bbdb-canonicalize-address net)
			       net)))
	       (if (and record
			(setq x-face
			      (car (split-string
				    (bbdb-record-getprop record 'face)))))
		   (with-temp-buffer
		     (insert "From: X\nX-Face: " x-face "\n")
		     (let ((x-face-use-overlay nil)
			   (x-face-scale-factor gnus-bbdb-x-face-scale-factor))
		       (x-face-decode-message-header))
		     (setq x-face (buffer-substring 6 7))))))
	(or (bbdb-record-getprop record bbdb-message-marker-field)
	    x-face
	    gnus-bbdb/summary-known-poster-mark))
      " ")))
(fset 'gnus-user-format-function-f 'gnus-bbdb/summary-author-face-in-bbdb)
(setq gnus-summary-line-format
      "%U%R%z%I%(%[%6,6~(cut 2)o:%uf %-20,20n%]%) %s\n")
gnus-bbdb/author-in-bbdb から x-face-e21 を呼ぶようにしただけの関数を user-format-function に設定しただけ(^^;

* extra-header

ふと、extra-header に x-face を設定すれば、メールの x-face を表示できるのではと 思い付く。
(setq nnmail-extra-headers '(X-Face))
(defvar gnus-summary-x-face-scale-factor 0.4)
(defun gnus-summary-author-face (header)
  "Given a Gnus message header, returns a face."
  (let ((x-face (cdr (assq 'X-Face (mail-header-extra header)))))
    (if x-face
	(with-temp-buffer
	  (insert "From: X\nX-Face: " x-face "\n")
	  (let ((x-face-use-overlay nil)
		(x-face-scale-factor gnus-summary-x-face-scale-factor))
	    (x-face-decode-message-header))
	  (setq x-face (buffer-substring 6 7)))
      " ")))
(fset 'gnus-user-format-function-F 'gnus-summary-author-face)
(setq gnus-summary-line-format
      "%U%R%z%I%(%[%6,6~(cut 2)o:%uF %-20,20n%]%) %s\n")
でいけた!

* gnus-summary-x-face.el

てきとーに統合してみたり。

2001年02月10日()

今日のアキハバラ

LD-S9(展示品)が 108k で売っていて悩んだり。

* 電車内読書

行きは人形式モナリザ [ISBN4-06-182092-3: bk//JB//AM//]を再読。
帰りは疑惑の月蝕 [ISBN4-15-030657-5: bk//JB//AM//]を途中まで。

マウス

Logitec の光学式のにしようかと思ってたけどバルクで見当たらず。 まともに買うと 5k くらいするし、てきとーな光学式のにしてしまう(^^;
USB は既にうまっているし PS/2 でも接続できるけど、 せっかくだから USB ハブも購入。

* 取り付け

うーむ、さすがに PS/2 にもマウスが繋がった状態では使えないか。 ということで、久々に電源切って PS/2 のマウスを外す。
無事使えるようになったが、サイドボタンを有効にするにはドライバを 入れなきゃならないようだ。

* ドライバ

うぐっ、フロッピが読めない(;_;)
試しに Linux BOX の方に入れてみたら問題無く読めたのでドライブが腐ったか?
とりあえず Linux の方でホームディレクトリにコピーして、どうにかインストール完了。

* サイドボタン

左のボタンはまだいいが、右のボタンは押しにくいな。
とりあえず コピー & ペーストに割当ててみたけど単に C-c/C-v を発効するだけなのね。
あ、某ソフトでホイールが効かなくなってしまった。 ドライバを切るとちゃんと動くし、サイドボタンは諦めるか?
む、IE はドライバを切ってもサイドボタンで 進む/戻る になるようだし切ってしまおう。

2001年02月12日(月)

TV 故障?

DVD を再生していると、TV が突然切れてしまった。 スタンバイ/オフタイマのランプが点灯しているし何だろうと取説を眺めてみると
自己診断表示 - 画面が消え、スタンバイ/オフタイマーランプが点滅したら

本機には自己診断表示機能がついています。これは本機に異常が起きたときに、
スタンバイ/オフタイマーランプの点滅およびその回数でテレビの状態をお知らせし、
(以下略)
…。
4回点滅は何が起きているんだろう? とりあえず、 WEB から問合せしてみる。

utf7.el

utf7.el が Gnus と Wanderlust の両方に入っていることに気がつく。 Gnus の方が使われると、Wanderlust の方で問題になりそうな気がするな。

2001年02月15日(木)

SSTP Plug-in

endo くんのとこから。これは良いかも。
とりあえず、変数 SSTP を喋る sstp.cgiをでっちあげてみる。
でもって、$HNS::Style::Templates{Table}->{head_recent_style} に cgi の呼出しを 書いて、あとは、$HNS::Hnf::UserVar::Templates{'SSTP'} = ""; としておき、 hnf には以下のように書いてっと。
 SSTP Haruna("てすとにょ。"), Wait(400), Unyuu("てすとにゅ。")
成功なり:-)

hnf-check infloop

むぐっ、確かに無限 loop に陥いっちゃいますね。 ということで、 修正しました。

2001年02月16日(金)

こんな夢を見た

私が使っている目覚し時計は、止めても数分後にまた鳴り出すものなのだが、 次に鳴り出す時間を cron で設定しなきゃならない。

今日のお買物

いつもの本屋では売り切れていたものだから、某謎な本屋にて一冊だけあったのを げっと。

CSS で <dl compact>

<dl compact> は HTML 4.0 では非推奨だそうだが、CSS では どうやって実現するのだろうか?
ということで、適当にうろついていたら、 いままでの HTML との対照を見付ける。
ってことで、
 <style type="text/css"><!--
   dl.note { display: compact; }
 --></style>
 [...]
 <dl class="note">
って感じにしてみるも、IE5.5 / Netscape6.01 / Opera 5.01 でうまくいかず。
うぐぅ、ほとんどのブラウザで display は対応されてない 雰囲気(;_;)

* URL メモ

なつみかん 3.1

HNS から re.cgi に投げた LIRS がエラーとなってしまう。
調べてみたところ、LIRS の判定がかなり厳しく行われるようになったためみたい。
む、lag が負数だと受け取って貰えなそうな予感。

2001年02月17日()

今日のダイジェスト

準備完了か?

自分の過去の日記へのリンク

nsmmのリンク補完が便利そうなので HNS の theme で実現してみた。
package HNS::Hnf::Command::ConvUrl;
use strict qw(vars subs);
use HNS::Template;
use vars qw ($Template);
#$Template = "?%year%month%abc#%year%month%day%new%sub";
$Template = "%year%month.shtml#%year%month%day%new%sub";
sub AsHTML($$$) {
	my ($self, $start, $params) = @_;
	my $class = ref $self;
	my $cmd_name = $self->{name};
	my $template = sprintf("%s::%sTemplate",
			       $class,
			       ($start)?'':'End');
	my $comment = ($start) ? "<!-- $cmd_name -->": "";

	my $templ = new HNS::Template;
	$params->{content} = $self->{arg_content};
	for (1..3){
		$params->{$_} = $self->{attr}->[$_];
	}

	if ($params->{1} =~ /^#(\d{4})(\d{2})(\d{2})((\d+)(S(\d+))?)?$/ ||
	    $params->{1} =~ /^#\{(\d{4}),(\d+),(\d+)(,(\d+)(,(\d+))?)?\}$/) {
		$params->{1} = HNS::Template->new->Expand($Template,
							  {'year' => $1,
							   'month' => sprintf("%02d", $2),
							   'day' => sprintf("%02d", $3),
							   'abc' => $3 < 11 ? 'a' : $3 < 21 ? 'b' : 'c',
							   'new' => $5 || "0",
							   'sub' => $7 && "S$7"});
	}

	return $templ->Expand($$template, $params);
}
unshift(@HNS::Hnf::Command::LNEW::ISA, qw(HNS::Hnf::Command::ConvUrl));
unshift(@HNS::Hnf::Command::LSUB::ISA, qw(HNS::Hnf::Command::ConvUrl));
unshift(@HNS::Hnf::Command::URL::ISA, qw(HNS::Hnf::Command::ConvUrl));
unshift(@HNS::Hnf::Command::LINK::ISA, qw(HNS::Hnf::Command::ConvUrl));
unshift(@HNS::Hnf::Command::LSTRIKE::ISA, qw(HNS::Hnf::Command::ConvUrl));
初めて perl で多重継承を使ったけど、うっかり unshift ではなく push を 使ったものだから、既に継承されている AsHTML が使われてしまったり。

* テスト

いくつか問題があったので適当に修正っと。

* hnf-mode.el

(setq hnf-new-link-name-format "#%Y%m%d%N"
      hnf-sub-link-name-format "#%Y%m%d%NS%S")
としておこう。

2001年02月18日()

TV

初期不良ということで交換してもらうことになった。

test -a

[ EXP1 -a EXP2 ] は、EXP1 が false でも EXP2 が評価されるのか。
% [ "a" = "b" -a `touch hoge` ]
% ls hoge
hoge
[ EXP1 ] && [ EXP2 ] とすれば良いだけの話しだけど。
% [ "a" = "b" ] && [ `touch hoge` ]
% ls hoge
ls: hoge: そのようなファイルやディレクトリはありません

Linux VR on Telios

fukui 君はこんなことをしてるのか。

nsmm

順序が逆転しちゃった気もするけど、nsmm を入れてみた。
うーむ、"LSUB #200102172S1 テスト" が
 <a name="200102172S%O" href="200102b.html#200102172S%O">
になってしまう。
勘で読んでみたけど、timefmt で _d["O"] が破壊されているみたい。
--- nsmm.awk.orig	Thu Nov 23 23:38:46 2000
+++ nsmm.awk	Sun Feb 18 16:22:37 2001
@@ -315,7 +315,7 @@
   var["version"] = "0.6.2(2000/11/23)";
 
   # timefmt() 初期化
-  _timefmt = "%A!%B!%C!%D!!!%G!%H!%I!!!!%M!!%O!!!%R!%S!%T!%U!%V!%W!%X!%Y!%Z!!!!!!!%a!%b!%c!%d!%e!!%g!%h!!%j!%k!%l!%m!%n!!%p!!%r!%s!%t!%u!%v!%w!%x!%y!%z";
+  _timefmt = "%A!%B!%C!%D!!!%G!%H!%I!!!!%M!!!!!%R!%S!%T!%U!%V!%W!%X!%Y!%Z!!!!!!!%a!%b!%c!%d!%e!!%g!%h!!%j!%k!%l!%m!%n!!%p!!%r!%s!%t!%u!%v!%w!%x!%y!%z";
   _d["%"] = "%";
   # days_from_epoch() など初期化
   split("31 28 31 30 31 30 31 31 30 31 30 31", _nmonth, " "); # 毎月の日数
でいいのかな?
それにしても、eval が自前の関数とは思いもしなかった(^^;

今日の検索くん

* google : ccsakura+ISO

何を求めているのかがひじょーに気になるところ。

2001年02月19日(月)

test

なるほど。
元は、.xinitrc で dtlogin から Gnome を選択されたかどうかのチェックをするのに
if [ "$SESSIONTYPE" = "altDt" -a "`/bin/ps -o args -p $PPID | sed -e 1d`" = "/bin/ksh /etc/dt/config/Xsession.gnome2" ]; then
なんてムリヤリなことをやっているのですが、コンソールから OpenWindows を 起動した時は ksh ではなく sh なので、$PPID が設定されてなくて ps でエラーに なってしまったのでした。
`false` は、昨日サーバに置いたあとに気付いて、すぐ変更したのですが、 置き直すの忘れてました(^^;

IntelleSearch

ふと、検索エンジンから日記に辿り着いたときに、Namazu のフォームに 検索語が入るようにしてみた。
しかし、静的生成の方は従来からの logging.pl とあわせて 2 つの SSI を 埋めんでしまったため、動的生成の日記の処理時間とほとんど変わらなく なってしまった…。

2001年02月20日(火)

logging.pl

なんで logging.pl は 3 秒もかかるのかと思ったら、"use HNS;" が 処理時間のほとんどみたい…。
% time perl -e 'use lib qw(lib); use HNS;'
perl -e 'use lib qw(lib); use HNS;'  2.89s user 0.09s system 100% cpu 2.961 total
かといって、HNS.pm を使わないように書き直す気にはなれんしなあ。

* TDS

ふと、TDS を入れてみたが、1.5 倍以上速いのか。
% time perl -e 'use lib qw(lib); use TDS;'
perl -e 'use lib qw(lib); use TDS;'  1.75s user 0.09s system 100% cpu 1.822 total

2001年02月21日(水)

gnus-fetch-old-headers

T-gnus-6_15-08-quimby あたりから、(setq gnus-fetch-old-headers nil) と なっているのに古いヘッダをフェッチするようになってしまった。
調べてみると、
2001-02-13 21:00:00  ShengHuo ZHU  <zsh@cs.rochester.edu>

	* gnus-sum.el (gnus-summary-read-group-1): Remove 
	gnus-summary-set-local-parameters.
	(gnus-summary-setup-buffer): Put it here.
の影響で、昔 Group Parameter で設定してうまくいかなかった (gnus-fetch-old-headers 'some) という残骸が有効になったためみたい。

2001年02月22日(木)

昨日のこと

某店にむかつきながら20時頃にふて寝。
…、目覚めたら 9:45AM だった(^^;

flim-rfc2231

ふと flim-rfc2231 を試そうかと思ったけど、ベースとなっている FLIM が 古いため MEIMI で使えず。
ということで、cvs update -jflim-1_13 -jflim-1_13-rfc2231 してみた。 しかし、日本語ファイル名を添付してみるも rfc2311 で encode はされず。 マージでへまったのか、元々 decode しか対応されていないのか。
日本語ファイル名で添付したり、rfc2231 で encode されたメールが届いたりも 今のとこないし、とりあえず放置。

eGroups

* emacs21-users-ja

せっかくだから、subscribe してみました:-)

* A研関東甲信越支部 ML

A研関東甲信越支部 ML を eGroups で稼働させてみてはどうだろうか?

今日の Emacs-21

`display-time-use-mail-icon' の存在を知る。
あとは load average か。

2001年02月23日(金)

今日の Emacs-21

etc/NEW を眺めていたら、`indicate-empty-lines' なるものを発見。
(setq default-indicate-empty-lines t) としてみますかね。

eGroups

Wanderlust では、
(add-hook 'mime-display-text/plain-hook 'mew-message-cut-bannar)
(setq mew-banner-replace-string "\n[[[banner]]]\n")
で良いかな?

logging.pl

config.ph の $CookieFlag が "OFF" だと logging.pl は Cookie を 送らないはずです。

2001年02月24日()

今日のアキハバラ

寒いにょ。 今年に入ってから ZaurusTV・DVDときて、とどめに LD と買いが過ぎる気が(^^;

* 電車内読書

アフタヌーンを読んだり、D-邪王星団3 [ISBN4-257-76927-0: bk//JB//AM//]を読んだり。

タッチタイピング

意識したことが無かったんだけど、私は左手の小指は Shift 専用になっている模様。 薬指で `a' や `z' は勿論、CTRL も押しているみたい。 SKK 症候群かな(^^;

* 右手小指

全く使ってないかも。

2001年02月25日()

TV & LD

TV の交換 & LD プレイヤが届く(^^)
ということで、一日はにゃんとしていたり。

test

お、そんな方法で確認するとは思い浮かびませんでした。
ちなみに、手元にあった zsh のソースを眺めたところ、 EXP2 を評価しないみたいでした。まあ、zsh で shell script を書くことは 無いんですが。

2001年02月26日(月)

Solaris8

職場に行ったら Solaris 8 がインストールされていた:-)

* /etc

/etc のファイルをごりごりと変更。

* Emacs-21

Emacs-21 を使うと起動時に (create-fontset-from-fontset-spec "-*-*-medium-r-*-*-16-*-*-*-*-*-fontset-16") にてエラーが発生。
	XGetFontProperty(XLoadQueryFont(dpy, "-*-*-medium-r-*-*-16-*-*-*-*-*-iso8859-1"),
                         XA_FONT, value);
        (char *)XGetAtomName(dpy, (Atom)value);
で得られるフォント名が、 Solaris 7 では"-b&h-lucida sans-medium-r-normal-sans-17-170-72-72-p-97-iso8859-1" だったのに対し、Solaris 8 では "-b&h-lucida sans-medium-r-normal-sans-16-161-72-72-p-0-iso8859-1" となり、average_width が 0 なためみたい。
どうせ fontset-16 は使ってないのでコメントアウトしてしまう(^^;

* MTA

ari@fqdn に送ると3台のマシンを周り続けてまう。 sendmail.cf はサッパリなので postfix にしてしまう(^^;

[ EXP1 -a EXP2 ]

Linux で strace して確認してみた。
/bin/sh (実体は bash)
評価する。
/bin/ash
評価する。
/bin/ksh
評価しない。
/bin/zsh
評価しない。
この違いで困ることは思い付かないけど。

2001年02月27日(火)

パペポTV用語辞典

とくみっ。さんとこから。
懐かしいのぉ。

2001年02月28日(水)

flim-1_14-rfc2231

早速入れてみたので実験。
Content-Type: text/plain; charset=ISO-2022-JP;
 name*=iso-2022-jp'ja'%1B$BF%7CK%5C8l%1B%28B
って感じのパートを含むメールを自分宛てに出してみると、 RFC2231 の decode されたものがボタンに表示された。 が、coding-system の decode がされない…。
ということで、ML に報告しようかと思ったところに、寺西さんから 私が出そうとしなものとほとんど同じ内容のメールが:-)

以上、23 日分です。
Powered by hns-2.19.6, HyperNikkiSystem Project

戻る