所用で錦糸町に行ったついでに、少々へたってきた Zaurus 用のバッテリをゲット。一瞬、標準バッテリにして薄い Zaurus にしようかな?とも考えたのだけど、SL-C3000 用の大容量バッテリにした。まだ、変えていない。
夜は草野球仲間の緊急ミーティング(という名の酒盛)。すいません、次の日おきたら、もう練習終わってました。申し訳ない > 監督
---- mhc-alarm-mail ----
#!/usr/local/bin/ruby
mail_address = 'hoge@exsample.co.jp'
mail_address_from = 'foo@exsample.co.jp'
MailServer = 'localhost' ## for --mail option
MyHostName = 'localhost' ## for --mail option
require 'mhc-schedule'
require 'mhc-kconv'
require 'net/smtp'
$db = MhcScheduleDB .new()
$alarm = MhcAlarm .new($db)
$alarm .signal_connect('time-arrived'){|date, sch|
header = "To: #{mail_address}\n"
header += "Subject: アラーム (#{sch .subject})\n"
header += "From: #{mail_address_from}\n"
header += "\n"
contents = "#{sch .dump_header}\n"
contents = contents.gsub(/^X-SC-Cond:.*\n/, "")
contents = contents.gsub(/^X-SC-Duration:.*\n/, "")
contents = contents.gsub(/^X-SC-Priority:.*\n/, "")
contents = contents.gsub(/^X-SC-Record-Id:.*\n/, "")
contents = contents.gsub(/^X-SC-/, "")
contents = contents.gsub(/^Mime-Version:.*\n/, "")
contents = contents.gsub(/^Content.*\n/, "")
message = MhcKconv::tomail(header + contents)
Net::SMTPSession .start(MailServer, 25, MyHostName) {|server|
server .sendmail(message, mail_address, [mail_address])
}
}
$alarm .check
sleep ## wait forever.
exit 0 ## unreached.
*1 today で毎朝スケジュールを送っているけど、アラームはならない
(when (fboundp 'just-one-space)
(global-set-key "\e " 'my-just-one-space)
(defun my-just-one-space (&optional n)
(interactive "p")
(let ((func (or (key-binding [backspace] t)
(key-binding [delete] t)
(key-binding "\177" t)
(key-binding "\C-h" t))))
(if (and buffer-read-only func)
(call-interactively func)
(just-one-space n))))
)
などとして、シーソースイッチをカチカチとすると previous 系のコマンドが動くようにしてみた。おー、こりゃ便利じゃん、とか思って御満悦だったのだが、ふと気づくとすぐそこに「BS」と書いてあるキーが。。。"\e\e " にはなにを割り当てようかな?これならカチカチカチだな。便利じゃん。とか考えているところ。
(setq dired-recursive-copies 'top)がお薦め。
以前、Zaurus の電卓上の電卓を探していたときに slcalc も試したのだが、n進数に対応していなかったので選択しなかった。久しぶりにふと見に行くと「n進数をサポート」と書いてある。やったね。使おう。ぼくの使い方だと出力フォーマットを "%g", "%g/x", "%g/b" と書いておけば十分だろう。
CF の無線LAN を使うと 30分ぐらいしか持たないぐらい電池がへばっていたので、この前買ってきた新品に変えてみた。通勤電車 + BitWarp ぐらいだとびくともしない。数ヵ月に一回変えたいぐらいだよ。
なんちゃってなスーパーラッキーツーベースと(個人的にはちゃんとした)センタ前ヒットで 4の2。むふふふ。
前にどこかの ML で第四話までは見たことがあるような気がする。今度は七話までいくかな?
spam に優劣?があるかどうかは知らないけど、女戦士シリーズよりは100倍まし。「韓国海苔店」などは、世の中に韓国海苔というのがあるんだぁーと教えてくれたので、もっと良かったかも。
うーむ。最近はイマイチ知りませんが、闘魂三銃士のころから見ていました。合掌。
三回つっかえされた*1決済願いがやっと通った。つっかえされていた間にツッコミも受けていたので、そのまま行ったら四回返されたことになる。ただが、70万円で。。。はぁーーー。つかれた。
で、やっと承認されたので注文書を書いていたら、相手方の見積りの一部にミスを発見*2。まぁ、付属品だったので全体に占める値段の変動はわずかだし、正規のものに変えたら安くなるために再度の事務処理はしなくてすみそうだ。助かった。これが高くなるんだったらもう一回大騒ぎであった。
もう一個の家庭内決裁願いは通った(ような気がする)。\(^^)/
spinner が Meadow3 を落すのだ。どうも emacs-w3m は Meadow の秘孔をつきやすいなぁ。凝りまくっているからなぁ。'C' レベルの話はわからんぞい。もう、344さんが直してくれた。素早い&大感謝。
なんだか remote directory 対応したときに、dropfile.el の remote file を扱うところにバグを埋め込んでしまったようだ。remote から手元に持ってこなくなっていた。
とっとと直して、こちらも置き直した。
第七話まで査収。
(let ((a '(1 2 3))
(b '(4 5 6)))
`(,a ,b))
=> ((1 2 3) (4 5 6))
(let ((a '(1 2 3))
(b '(4 5 6)))
`(,@a ,@b))
=> (1 2 3 4 5 6)
*1 これは、ESC C-x で大丈夫だけど、C-大文字 とか C-Fn+< はできませんからね。
以前、bookshelf で発見して以来 sorter.el は愛用しているのだが、dired の "s" で name => date => ext => size => name ... とサイクリックに使う分には特に問題ないし便利だ。
だけど、ちょっとだけ date してみて、すぐに name に戻す、とかいうときに、何回 "s" を押したら良いのかわけがわからなくなるので、お昼休みの息抜きで "C-us" でどの状態からでも name に戻るようにしてみたり、もう一点 name => date に移るときに(勝手に) buffer の先頭に移らないようにしてみたりした。
ちなみに、オリジナルな設定方法だとうまく動かないので、provide して require するように変更(コメント参照)。diff とったら内容の割には大きなパッチになってしまった*1ので、興味のある方はこちらからどーぞ。
*1 cond の書き方が気にくわないので書き直したため。
一時停止違反で切符を切られた。切符って20年以上ぶりぐらいかも。
捕まったところの回りの状況を見ると、なんだか切符を切るためだけに存在する一時停止のようだった。普通の人が普通の感覚で走ると、道路上に書いてある一時停止標識より前に右の道(合流しようとしている太い道)を見るよなぁ、あれは。だから警官もいつもいるのだろうけど。おそらくあそこでは有名なポイントなんだろうな。
罰金(7,000円なり)も嫌だが、ゴールド免許じゃ無くなっちゃうのが悔しい。
tDiary のエラーは単に fn 中に "'" を使っていたからだった ^^;;;
というわけで、一人でお仕事中。同じビル内にはコールセンタの人と守衛さんがいるぐらいか。
居室の建物の空調は 365日24時間いつでも OK なのだが、実験室の方の空調申請を出すのを忘れていた。そんなに暑くない日なので助かったが、USB給電の扇風機を持ってて良かった。はぁー。
△ まる [space じゃなくて RET じゃないっすか?]