2003-12-03
_ どうにもたまらずキーボード交換
Space Saver II の CapsLock の引っかかりがあまりにひどいので DELL の PowerEdge についてきたキーボードと取っ替えてみた。このキーボードは柔らかい感触でけっこう好み。
(ちなみに、PowerEdge 400 付属のもの。1400 も同等だったと記憶しているが、1600 は明らかに質が落ちた。最近の DELL のサーバ付属のものはきっとみんなコストダウンのあおりを受けているに違いない。)
しかしトラックポイントのないキーボードはやはり非常に使いづらい。勢い、マウス操作をきらい、すべて一つの terminal の中で screen で切り替えて使いたくなるってものだ。でもそれもそんなに使い勝手よくないしなぁ。こうなるとタブ切り替え式の terminal がほしくなるのか。確かに local のサーバに繋ぐ分には screen である必要はあんまりないしなぁ。
うーーーーーん。
2004-12-03
_ Firefoxに続け--バージョン1.0公開が迫るモジラの電子メールソフト
from CNET Japan
あかんやろ。
Thunderbird は Firefox に比べると雑すぎる。中身を見たわけじゃないけど、1.0 までのペースが速すぎるし、かなり「かゆいところに手が届かない」シロモノなのは間違いない。まー自分は使ってるけど、とても Firefox 1.0 のようには他人に薦められない。少なくとも日本では POP before SMTP には対応してくれないとね。
_ コンテンツの表示を ON/OFF
なんか思ったより簡単だった。
- ID 属性で要素を特定
- これを DOM オブジェクトとして JavaScript で持つ
- .style.display を block にしたり none にしたり
するだけ。今回は block 要素しか ON/OFF しなかったのと、visibility でいじると IE, Opera で table に対して継承されないので。その代わり HTML の方が ID 属性細かく入りまくりになるけどこれはしゃーない。汎用の Event オブジェクトから始めるとまた実装の違いを気にする必要があれこれ出てきて面倒なので今回は見送り。できあがりは以下の通り。
// 指定コンテンツの表示を ON/OFF する
function toggle_visibility( id ) {
var obj = document.getElementById( id );
var self = document.getElementById( 'switch_' + id );
if ( obj.style.display != 'none' ) {
obj.style.display = 'none';
set_textnode_value( self, '+' );
} else {
obj.style.display = 'block';
set_textnode_value( self, '−' );
}
}
// 指定要素の textnode を value にする
function set_textnode_value( obj, val ) {
var ret = 0;
var i = 0;
for ( i = 0; i < obj.childNodes.length ; i++ ) {
// textNode は nodeType == 3 で判別
if ( obj.childNodes[i].nodeType == 3 ) {
obj.childNodes[i].nodeValue = val;
ret = 1;
break;
}
}
return ret;
}
これをトグルさせるときにクリックする HTML の要素は
<a href="javascript:void(0)" id="switch_element" onclick="toggle_visibility( 'id' );" style="border: 1px solid;">−</a>
こんな感じ。表示を切り替える要素は
<div id="element"> ... </div>
こんな風にして囲んでおく。
- ON/OFF したい要素の ID を X とすると
- ON/OFF させるための要素の ID を switch_X とする
ルールにしときました。
+と−の文字を使って今コンテンツが表示されているかの状態を示しているのは、見出しの前に置いて中身が折りたたまれているかどうかを分かるようにするため。ま、よくあるやつです。全角うぜーと思ったら適当に書き換えるよろし。
Mozilla の JavaScript コンソールがあると楽だなぁ。
_ 言われてみれば当たり前でも言われるまで気づかないことは案外多い
作れる、作る、作った (textfile.org)
元ネタは高林さんなんだけど、結城さんの感想を含めて。
例え当たり前のことでも形にするのは案外に難しい、とワタシは常に感じています。これはワタシのデキがよくないということもおおいに意味するわけですが、日本語でもシステムでも同じじゃないかと感じています。
あ。
形にすることに対する障壁を取り除くシステムやノウハウを自分が持っている(あるいは作れる)のなら、それを表に出して行きたい、これが自分が Web 上にだらだらとモノを書き連ねたり、システム管理的なことにどうしても手を染めてしまったりする一つの出発点なのかも。
_ 本屋に行って、、、
手元にずいぶん前にもらった図書券があったので FreeBSD Expert 2005 を目指して出かけた。、、、んだけど、パラパラと眺めているうちにうーん、と唸る。ぶらぶらと巡っていたんだけど、どうも最近読みたい本がないらしい。
散々迷った挙げ句買ったのは『増補改訂版 Java言語で学ぶデザインパターン入門』。とりあえず積んどく。テストとか設計の本にも興味あるし哲学的な本にも興味あるんだけど、最近全然食指が動かないのはなんでかな。
2005-12-03
_ FreeBSD で UNFS3 使ってるぞーって情報がないなぁ
自宅サーバも NFS を活かしてリプレイスすんぞーと思っていたら、昼間試していた Debian と /etc/exports の書き方が全然違う。なんだこりゃーと思ったら Debian で入れたのはたぶん
かな?(※ 違いました。)
なんだこりゃーと思ったのは、FreeBSD の /etc/exports では同じファイルシステム(たぶんパーティションて意味だろう)のディレクトリについては1行で記述しなければならないってことで。これはパーティション1つ丸ごと(例えディレクトリは違っても)同じオプションでしか export できないってことだと思う。よく分かってないけど。
試した Debian の exports では同じパーティション内でも細かくオプションを変えて export できるので、徐々にデータやサービスを移行していくときにすごく便利。FreeBSD で同じことをしようと思ったらこの UNFS3 でやった方がよさそうだなと思うんだけど、全然具体例が見つからない。そんな細かいやり方をしようと思う自宅サーバなんかお呼びでないってことか?
むー。Linux の NFS はダメダメだぞーっていう古い情報は見つかるんだけど、そんな情報がほしいんじゃねーやい。
[2005-12-05 追記] 遅かったのは user space で動くのが理由? Debian の package で探してみると nfs-user-server ってのと nfs-kernel-server があって、user-mode NFS は遅いぞって書いてるだけだな。実運用でパフォーマンスを気にするならやっぱ kernel-mode の方がいいんだろな。
ports から入れてみたはいいけど、今のところどうやって使うのか全然分かってない。unfsd っていうバイナリしかないので、portmap や mount は標準で付属してるものを使うのか? そんなことできんの? 悩むの面倒くさくなってきたんで、ディレクトリ構成を変更して id を気にしなくても移行できる形にしようかと検討中。
_ 風邪の初期症状か?
やべぇ。いつもの肩こりのようなフリをして首から頭までピシピシ痛みのくる症状が出てきた。(ものすごく痛いのでこれに無策で対応することはできない。)ちゃんと気をつけてるんだがなぁ。今日の夜は出かけなきゃなんないっつーのに。