人生投げてます?な日記 in August, 2005

さいととっぷへごー!

<< < 2005-08 > >>
Su Mo Tu We Th Fr Sa
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 29 30 31
TOPIC-LIST
14(Sunday)
最果てのイマ
13(Saturday)
昼〜夜
最果てのイマ
12(Friday)
お仕事[WORK]
お買い物[Shopping]
11(Thursday)
お仕事[WORK]
さくらむすび
10(Wednesday)
gpg.lとか
お仕事,,,とか[WORK]
お買い物[Shopping]
9(Tuesday)
お仕事[WORK]
帰宅後
KamailとGnuPGでメールに署名を
さくらむすび
8(Monday)
お仕事[WORK]
使えない補完機能
7(Sunday)
昼〜夜
6(Saturday)
お仕事[WORK]
お買い物[Shopping]
5(Friday)
お仕事[WORK]
さくらむすび
4(Thursday)
お仕事[WORK]
お買い物[Shopping]
3(Wednesday)
お仕事[WORK]
Duel Savior
2(Tuesday)
お仕事[WORK]
1(Monday)
お仕事[WORK]
Generated by nDiary version 0.9.4

2005.08.01 (Mon)

1 おはようございます
6:00、起床。んー、今日も眠い
外は晴れ模様。よしよし、暑いのはごめんだが蒸し暑いのはもっとごめんだから湿度が下がってくれると助かります
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「ということであっという間に8月ですよ」
カレン「何があっという間なのかは分からないけど、8月ね」
LKPTeam「うぃうぃ」
LKPTeam「7月はなんだかあっという間に終わってしまいましたね、という意味でのあっという間です」
カレン「なるほど」
LKPTeam「ま、8月もおそらくあっという間なんでしょうけど」
カレン「それは年を取ったからじゃないの?(^^;」
LKPTeam「うーあー(^^;」
いや、そうではないと思いたい。……思いたいが、思いたいが……(笑)
2 お仕事...とか[WORK]
週の初めはのんびり……していたかったんだけど、そうもいっていられず。午前午後と二度にわたって外出ですよ。外出すること自体はまぁ問題ないのですが、それ以外で問題が
カレン「暑いんでしょ(^^;」
LKPTeam「ぴんぽーん」
いやマジで暑い(^^;。車内エアコン動かしてないからなんだけどな
おかげで帰ってきてからはだらだらモードでした
$Date: 2005-08-02 00:28:18 +0900 (Tue, 02 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050801.diary $
ぺーじとっぷへごー

2005.08.02 (Tue)

1 おはようございます
6:00、起床。うー、今日も朝から暑いなぁ
外は晴れ模様。雲が少し多い気もするけどまぁ問題なさそう。そして今日も蒸し暑い……
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「今日も蒸し暑いですな」
カレン「もうどうしようもないわね、こればかりは」
LKPTeam「うぅ……」
2 お仕事...とか[WORK]
あーもう蒸し暑くてやってられないですよ
$Date: 2005-08-02 22:55:33 +0900 (Tue, 02 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050802.diary $
ぺーじとっぷへごー

2005.08.03 (Wed)

1 おはようございます
6:00、起床。うー、今日も朝から蒸し暑い
外はどんより曇り空。なんか今にも雨が降ってきそうだな
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「朝からこうも蒸し暑いとさすがにげんなりしますね」
カレン「だからどうしようもないでしょうに」
LKPTeam「いや、それは分かってはいるのですが」
カレン「なら愚痴をこぼす前に仕事の準備でもする」
LKPTeam「……うーい」
カレン「反抗的ね(^^;」
LKPTeam「あぅあぅあー」
湿度が高いとイライラするなぁ
2 お仕事...とか[WORK]
昨日よりは幾分マシなものの、今日も蒸し暑いですな。仕事もあまりはかどらない……という風になれば良かったんだけど、あいにくと部屋の中はエアコンが効いてて快適なご様子。仕事もそこそこ進んでまぁまぁかな
3 Duel Savior...とか[GAME]
ハーレムルートはさくっと終了させてサバイバルモードをちまちまと進めております……エルダーアーク持ちのナナシで(笑)
というか技表がないからコンボがちっとも繋がらん。うー、もうちょっと練習した方が良かったかなぁ
$Date: 2005-08-04 00:47:15 +0900 (Thu, 04 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050803.diary $
ぺーじとっぷへごー

2005.08.04 (Thu)

1 おはようございます
6:00、起床。んー、今日も朝から暑いねー
外は晴れ模様。風があるのが救いだなぁ……
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「今週はもう暑さで仕事にならないですね」
カレン「まだ週の半ばなのにもう今週は、なんて言ってるし」
LKPTeam「いやほら、今日、明日明後日もなんか暑そうじゃないですか」
カレン「夏だもの、しょうがないでしょう」
LKPTeam「分かってはいるんですけどね」
LKPTeam「でもこんなに暑くなるとは」
カレン「そこは少し訂正する必要があるかも」
LKPTeam「?」
カレン「暑さはそんなでもないけど、湿度が高い所為で不快なだけじゃない?」
LKPTeam「ああ、たしかにそうですね」
カレン「気温が高くても湿度が低ければそんなに不快でもないでしょう?」
LKPTeam「ですです」
LKPTeam「雨が降るのがいけないんですね」
カレン「……まぁ、そういうことにしておきましょうか」
LKPTeam「じゃ、今日からは雨なしということで」
カレン「そこで決めても無駄だからね(^^;」
LKPTeam「……ぐぅ」
カレン「ほらほら、仕事の準備する」
LKPTeam「あーい」
じゃあ今日も何とか頑張りませうか
2 お仕事...とか[WORK]
んー、今日も蒸し暑い中、頑張りましたっ。明日も明後日も頑張れる……かなぁ(笑)
3 お買い物...とか[Shopping]
今日のお買い物は……
CUFFS / さくらむすび
……でしたっ
$Date: 2005-08-05 00:10:12 +0900 (Fri, 05 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050804.diary $
ぺーじとっぷへごー

2005.08.05 (Fri)

1 おはようございます
6:00、起床。うーん、眠い
外は晴れ模様。からりと晴れた様子で大変よろしいです。この調子で湿度も大分低くなってくれると助かるんだけど
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「明日も仕事がある金曜日っていまいちやる気になれないですね」
カレン「土曜日が休みだとさらにやる気がないくせに」
LKPTeam「ぐはー」
LKPTeam「やる気、ないですか?」
カレン「そわそわしてる感じ?」
LKPTeam「あはは(^^;」
カレン「まぁ、気持ちは分からなくもないけど、仕事はちゃんとしないとね」
LKPTeam「うーい」
カレン「というわけで、今日と明日もがんばろー」
LKPTeam「がんばろー」
仕事に行くカー
2 お仕事...とか[WORK]
んー、今日も暑いですなー。ということで暑さの所為で仕事は……部屋の中だから暑さとはあまり関係なくそれなりに進んでいたり(^^;
3 さくらむすび...とか[GAME]
インストールは昨日のうちに済ませていました。そして問題は特に何もなく
LKPTeam「強いて言えばプレイ中に声が出ないことに驚いたことくらいですか」
カレン「声、あったんだ?」
LKPTeam「いえ、なかったでした」
カレン「……」
LKPTeam「……」
カレン「そういうの、調べてから購入するものじゃないの?」
LKPTeam「いやぁ、てっきりあるものだとばかり思ってたですから、商品のスペック欄とか何も見ずに購入してしまいましたよ(^^;」
カレン「……なんだかねぇ(^^;」
いやぁ、音声アリだとばかり思ってたからびっくりでしたよ。……思わずマニュアル読み返したくらいだ(笑)
テキストとか台詞回しが何となく水月の花梨を思い出すなぁ、なんて思ってたら同じ人だったのね。知らんかったです。しかし問題ないです、というかむしろ好都合?
$Date: 2005-08-06 00:22:22 +0900 (Sat, 06 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050805.diary $
ぺーじとっぷへごー

2005.08.06 (Sat)

1 おはようございます
6:00、起床。うー、眠いー
外は晴れ模様。からりと晴れました。今日も暑くなるんだろうなぁ
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「そして土曜日〜」
カレン「ようやく、といった所ね」
LKPTeam「まったくですよ」
LKPTeam「1週間の長かったこと!」
カレン「まぁねー(^^;」
カレン「でも来週は土曜日はお休みだから安心ね」
LKPTeam「というかお盆休みに入っちゃいますね」
カレン「あ、そうね」
カレン「じゃあ今日、来週と頑張らないとね」
LKPTeam「うぃー」
じゃあ今日も仕事に行くカー
2 お仕事...とか[WORK]
んー、今日も一日無難に仕事してました、っと。来週もがんばりましょー
3 お買い物...とか[Shopping]
今日のお買い物は……
湾岸MIDNIGHT 32巻 講談社 ISBN4-06-361363-1
陰陽師 12巻 白泉社 ISBN4-592-13222-X
……でしたっ
4 夜...とか
いやー、今日も暑いねー。なにもやる気が起きねー(笑)
$Date: 2005-08-07 18:25:24 +0900 (Sun, 07 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050806.diary $
ぺーじとっぷへごー

2005.08.07 (Sun)

1 おはようございます
7:00、起床。うーん、少し早すぎだ(^^;
外は晴れ模様。今日も暑くなりそうですなー
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「さて、今日はいろいろとお出かけしなきゃならないですよ」
カレン「何の準備なのかしらね?」
LKPTeam「それはもうちょっとだけ秘密かも、とか」
カレン「はいはい」
暑いけどがんばりませう
2 昼〜夜...とか
お出かけしたりお出かけしたりお出かけしたり。暑いのに頑張ったです
$Date: 2005-08-07 22:34:38 +0900 (Sun, 07 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050807.diary $
ぺーじとっぷへごー

2005.08.08 (Mon)

1 おはようございます
6:00、起床。うーん、昨日は結構早く寝たつもりなんだけど、暑さの所為か起床時間はいつも通りだなぁ
外は曇り空。こんな状態で雨なんか降ったら蒸し暑くて死ねるぜ
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「しかし今週も暑そうですな」
カレン「夏だからね」
LKPTeam「というか、そろそろ秋の気配を漂わせてもかまいませんですよ?」
カレン「LKPTeamちゃんの都合で動いてどうするのよ(^^;」
LKPTeam「まぁそうですが」
カレン「バカなこと言ってないで仕事の準備するの」
LKPTeam「あーい」
それじゃあ今週も頑張っていきますカー
2 お仕事...とか[WORK]
いやー、今日は午前中は過ごしやすかったねー。……雨でうっといしかったけど!(笑)
3 使えない補完機能...とか[xyzzy]
何となく作ってみたくなったので。
;;; -*- MODE: Lisp; PACKAGE: EDITOR; -*-
 
;;;
;;; custom completion library
;;;
 
;;;
;;;
 
(provide "customcompletion")
 
(defvar *completion-exist-message* "Possible completions are:\n\n")
(defvar *completion-not-exist-message* "No possible completions.\n\n")
(defvar *completion-message-line-num* 2)
(defvar *completion-list-buffer* "*Completion List Items*")
(defvar *completion-completing-list* nil)
 
(defun index-generator (&optional index)
  (let ((idx (or index *completion-message-line-num*)))
    #'(lambda (&optional reset)
        (if reset
            (setq idx (1+ *completion-message-line-num*))
          (setq idx (1+ idx))))))
 
(defun get-list-item (list-buffer index)
  (let ((from nil) (to nil))
    (set-buffer list-buffer)
    (goto-line index)
    (setq from (progn (goto-bol) (point)))
    (setq to (progn (goto-eol) (point)))
    (buffer-substring from to)))
 
(defun get-matched-list (regexp lst)
  (remove-if
     #'(lambda (x)
         (eql nil x))
     (mapcar
        #'(lambda (x)
            (if (eql nil
                     (string-match
                        (format nil "^~A" regexp) x))
                nil
              x)) lst)))
 
(defun clear-buffer (lst buf)
  (set-buffer buf)
  (delete-region (point-min) (point-max))
  (if (< 0 (length lst))
      (insert *completion-exist-message*)
    (insert *completion-not-exist-message*))
  (dolist (item lst)
    (when (not (eql nil item))
      (insert (format nil "~A\n" item)))))
 
(defun custom-completion (lst &optional str)
  (interactive)
  (let ((curbuf (selected-buffer))
        (buf (get-buffer-create *completion-list-buffer*))
        (items lst)
        (ans (or str ""))
        (myindex (index-generator)))
    (save-window-excursion
      (split-window)
      (set-buffer buf)
      (mapc 'make-local-variable '(auto-save need-not-save))
      (setq auto-save nil)
      (setq need-not-save t)
      (if (string-equal "" ans)
          (clear-buffer items buf)
        (clear-buffer (get-matched-list ans items) buf))
      (loop
        (minibuffer-prompt "Completing : ~A" ans)
        (let ((c (read-char *keyboard*)))
          (case c
            (#\RET (return ans))
            (#\C-h #| 2005.08.09 修正しました |# (let ((len (length ans)))  
                    (when (not (= 0 len))
                      (setq ans (substring ans 0 (1- len)))
                      (clear-buffer (get-matched-list ans items) buf))))
            (#\Left )
            (#\Right )
            (#\TAB (let ((lines (funcall myindex)))
                     (if (< lines (buffer-lines buf))
                         (setq ans (get-list-item buf lines))
                       (setq ans (get-list-item buf (funcall myindex t))))))
            (#\C-g (delete-buffer buf)
             (quit))
            (t (setq ans (format nil "~A~C" ans c))
               (clear-buffer (get-matched-list ans items) buf))))))
    (delete-buffer buf)
    (insert (format nil "~A" (if str
                                 (let ((start (mismatch str ans)))
                                   (if (eql nil start)
                                       ans
                                     (substring ans start)))
                               ans)))))
 
(defun execute-custom-completion ()
  (interactive)
  (let ((str nil))
    (setq str (or (selection-start-end (start end)
                    (buffer-substring start end))
                  (save-excursion
                    (buffer-substring (progn
                                        (skip-syntax-spec-forward "w_")
                                        (point))
                                      (progn
                                        (skip-syntax-spec-backward "w_")
                                        (point))))))
    (custom-completion *completion-completing-list* str)))
 
(defun for-lisp-interaction-mode ()
  (setq *completion-completing-list*
        (make-list-from-keyword-table
           (load-keyword-file "lisp")))
  (define-key ed::*lisp-interaction-mode-map* '(#\C-c #\;)
              'execute-custom-completion))
 
(defun for-lisp-mode ()
  (setq *completion-completing-list*
        (make-list-from-keyword-table
           (load-keyword-file "lisp")))
  (define-key ed::*lisp-mode-map* '(#\C-c #\;)
              'execute-custom-completion))
  
(add-hook 'ed::*lisp-interaction-mode-hook* 'for-lisp-interaction-mode)
(add-hook 'ed::*lisp-mode-hook* 'for-lisp-mode)
まぁあれです、もともとある補完機能はすでにある文字列に対して補完するのに対して、作ってみたのはミニバッファに打ち込んだ文字に対して補完する、といったもの。前者を静的な補完とした場合、後者は動的な補完かなぁ、とか。実際はほとんど使わないけど
まぁ、文字を打つごとに補完リストが変わる様が目に見えて楽しいかな、とか
カレン「そういうどうでもいい機能ばっかり作るわよね(^^;」
LKPTeam「あーうーあー(^^;」
いやぁ、見た目大事よ?(笑)<使えないけどな!
一応使い方などを。lispのキーワードファイルは必須なので事前に用意しておいてください。準備が整ったら、↑のコードを ccompletion.l とか、なんか適当なファイル名で保存。~/.xyzzy とかに、
(require "ccompletion.l")
と、保存したファイル名を記述してxyzzyを再起動。デフォルトではlisp-mode、lisp-interaction-modeでC-c ;と打てば、あらかじめキーワードを元に作成しておいたリストをバッファに展開して、ミニバッファでの入力待ちになりますので、適当にキーワードを一文字打ち込む毎にバッファに展開したキーワードのリストが動的に絞り込まれていきます。TABキーを押す毎にリストアップしているキーワードをミニバッファに表示します。入力したいキーワードが決まったらEnterでミニバッファに表示している文字をバッファに入力します。また、C-gで入力を中止して元のバッファに戻ります。
他のモードでも使いたい場合、そのモードのキーワードファイルからハッシュを作り、そこからリストを作成する関数を作成して、その関数をフック関数に引っかけるようにすると良いかも。for-lisp-interaction-mode 関数を参考に……というかあんまり参考にならないな、あれっぽっちじゃ(^^;
なんかまだ挙動が怪しいところもあるのでその辺はご容赦を。というかブラッシュアップしてもっと実用性のあるの誰か作ってください
……というかこういう機能って誰かがすでに作っていそうでただ探してないだけだったりして、というのがよくあるんだよね。……どこかに既にありませんか?(笑)
$Date: 2005-08-09 22:41:03 +0900 (Tue, 09 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050808.diary $
ぺーじとっぷへごー

2005.08.09 (Tue)

1 おはようございます
6:00、起床。というか朝から暑いなぁ今日も
外は晴れ模様。いやだなぁ、朝から暑いのは
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「というか、朝から修正ですよ」
カレン「昨日のね?」
LKPTeam「いやぁ、間違いって訳じゃあないんですけれどもね」
LKPTeam「疲れたです」
カレン「疲れる暇もなく仕事の準備しないといけないんだけど?(^^;」
LKPTeam「あぅあぅあー」
カレン「ふぁいとー(^^;」
うぅ、久々にコードいじったらこうだよ(笑)
既に修正はしてありますが、ミニバッファ中でのキーボードからの入力を受け取るコードで、BSキーのキーコードが微妙にアレでそれだった様子。ついついC-hとする箇所を手抜きでQuote-charしてHキー、という風にしてました。で、Webに上げたら読めなくなってたから修正しました。
さて、仕事に行くカー
2 お仕事...とか[WORK]
んー、今日も一生懸命ひましてましたっ(笑)
3 帰宅後...とか
というか仕事中、だったんだけど。会社で使ってるxyzzyにも昨日いじってたコードを入れようと思ったら今朝方修正したコードがまだ間違ってるじゃないですか(笑)
コメント開始、終了文字がおかしいよ!
うーあー、ダメダメだぁ
4 KamailとGnuPGでメールに署名を...とか[xyzzy]
site-lisp/gpg/gpg.l
;;; -*- MODE: LISP; PACKAGE: EDITOR; -*-
;;;
;;;
 
(defpackage "GPG"
  (:use "lisp" "editor"))
 
(in-package "GPG")
 
(defvar *gpg-path* "X:/path/to/GnuPG")
 
(defvar *gpg* (merge-pathnames "gpg.exe" *gpg-path*))
 
(defvar *gpg-default-user* nil)
(defvar *gpg-signed-file-suffix* ".asc")
(defvar *gpg-encrypt-file-suffix* ".gpg")
 
(defvar *gpg-change-background-color-when-signed* nil)
(defvar *gpg-change-background-color-when-success-verify* nil)
 
(defvar *gpg-default-background-color* #(#xffffff #x000000))
(defvar *gpg-signed-mailpart-color* #(#x55ff00 #x330000))
(defvar *gpg-success-verify-color* #(#x99ff99 #x444444))
 
(defconstant *gpg-start-signed-message* "-----BEGIN PGP SIGNED MESSAGE-----")
(defconstant *gpg-end-pgp-message* "-----END PGP SIGNATURE-----")
 
(defconstant *gpg-comment-message* "Using GnuPG(gpg.l) with KaMail.")
 
(defun gpg-sign (str &optional user phrase)
  (let ((gpg nil)
        (tmpfile (make-temp-file-name))
        (buf (get-buffer-create "*OUT*"))
        (buffer-data nil)
        (usr (or user *gpg-default-user* (read-string "GPG User : " :default *gpg-default-user*))) 
        (passphrase (or phrase (read-string "Passphrase: ")))
        (fp nil))
    (with-open-file (fp tmpfile :direction :output)
      (princ str fp))
    (setq gpg (make-process
                 (concat *gpg* " -u " usr " --comment \"" *gpg-comment-message* "\" --passphrase-fd 0 --clearsign " tmpfile)))
    (sit-for 0.1)
    (process-send-string gpg (concat passphrase "\n"))
    (sit-for 0.1)
    (set-buffer buf)
    (let ((line nil))
      (with-output-to-buffer (buf)
        (with-open-file (fp (concat tmpfile ".asc") )
          (while (setq line (read-line fp nil nil nil))
            (format t "~A\n" line)))))
    (setq buffer-data (buffer-substring (point-min) (point-max)))
    (delete-file tmpfile :if-does-not-exist :skip :if-access-denied :skip)
    (delete-file (concat tmpfile ".asc") :if-does-not-exist :skip :if-access-denied :skip)
    (delete-buffer buf)
    buffer-data))
 
(defun gpg-signed-mailpart (&optional user)
  (interactive)
  (goto-line (point-min))
  (scan-buffer "^$" :regexp t :tail t)
  (next-line)
  (when (eql (point) (point-max))
    (message "No messages.")
    (return-from gpg-signed-mailpart))
  (let* ((from nil)
         (to nil)
         (luser (or user *gpg-default-user* (read-string "GPG User : " :default *gpg-default-user*)))
         (uid (gpg-get-user-id luser))
         (mailpart nil))
    (save-excursion
      (previous-line)
      (goto-bol)
      (insert "OpenPGP: id=")
      (insert uid)
      (insert #\LFD))
    (setq from (point))
    (save-excursion (goto-eol) (setq to (point)))
    (setq mailpart (buffer-substring from to))
    (delete-region from to)
    (insert (gpg-sign mailpart luser))
    (when *gpg-change-background-color-when-signed*
      (set-buffer-colors *gpg-signed-mailpart-color*))
    ))
 
(defun gpg-get-user-id (&optional user)
  (interactive)
  (let ((buf (get-buffer-create "*GPG list-keys*"))
        (usr (or user (read-string "GPG User: " :default *gpg-default-user*)))
        (id nil))
    (save-window-excursion
      (execute-shell-command
         (format nil "\"~A\" --list-keys ~A" *gpg* usr)
         :output buf)
      (set-buffer buf)
      (goto-char (point-min))
      (when (scan-buffer "^pub[ ]+[^/]+/\\([A-Z0-9]+\\).+" :regexp t)
        (setq id (match-string 1)))
      (delete-buffer buf)
      id)))
 
(defun gpg-get-pgp-message ()
  (interactive)
  (let ((from nil) (to nil))
    (save-excursion
      (goto-char (point-min))
      (when (scan-buffer *gpg-start-signed-message*)
        (setq from (point)))
      (when (scan-buffer *gpg-end-pgp-message* :tail t)
        (setq to (point)))
      (if (and from to)
          (buffer-substring from to)
        nil))))
 
(defun gpg-verify-signed-mail ()
  (interactive)
  (let ((buf (get-buffer-create "*GPG OUT*"))
        (tmpfile (make-temp-file-name))
        (keyid nil)
        (date nil)
        (signed-user nil)
        (sign nil))
    (save-window-excursion
      (with-open-file (fp tmpfile :direction :output)
        (princ (gpg-get-pgp-message) fp))
      (execute-shell-command
         (format nil "\"~A\" --verify ~A" *gpg* tmpfile)
         :output buf)
      (set-buffer buf)
      (goto-char (point-min))
      (when (scan-buffer ".*\\([0-9]\\{2\\}/[0-9]\\{2\\}/[0-9]\\{2\\} [0-9]\\{2\\}:[0-9]\\{2\\}:[0-9]\\{2\\}\\).*ID \\([A-F0-9]\\{8\\}\\).*" :regexp t)
        (setq date (match-string 1))
        (setq keyid (match-string 2)))
      (when (scan-buffer ".*“\\(.*\\)”からの\\(.*\\)$" :regexp t)
        (setq signed-user (match-string 1))
        (setq sign (match-string 2))))
    (delete-buffer buf)
    (delete-file tmpfile)
    (if (string= "正しい署名" sign)
        (progn
          (message "~A: Signed-Date: ~A, KeyID: ~A, Signed-User: ~A"
               sign date keyid signed-user)
          (if *gpg-change-background-color-when-success-verify*
              (set-buffer-colors *gpg-success-verify-color*)))
      (message "~A: Signed-Date: ~A, KeyID: ~A, Signd-User: ~A"
               sign date keyid signed-user))))
site-lisp/gpg/gpg-misc.l
(in-package "kamail")
 
(defun gpg-auto-sign-mail ()
  (interactive)
  (GPG::gpg-signed-mailpart)
  (kamail-create-and-send-buffer-quit))
 
(when *kamail-use-auto-sign*
  (define-key km::*kamail-draft-map* '(#\C-c #\C-c) 'gpg-auto-sign-mail))
 
(defun gpg-auto-verify-signed-mail ()
  (interactive)
  (let ((openpgp-id nil)
        (header (header-to-alist)))
    (setq openpgp-id (get-header-value "openpgp" header))
    (set-buffer-colors GPG::*gpg-default-background-color*)
    (when openpgp-id
      (setq openpgp-id (string-match "id=\\(.*\\)" openpgp-id))
      (GPG::gpg-verify-signed-mail))))
 
(add-hook 'km::*kamail-show-mail-hook* 'gpg-auto-verify-signed-mail)
~/Kamail/.Kamail.l
(require "gpg/gpg")
 
;;; GnuPG
(setq GPG::*gpg-default-user* "GPG-USER")
(setq GPG::*gpg-change-background-color-when-signed* t)
(setq GPG::*gpg-change-background-color-when-success-verify* t)
 
;;; 勝手に署名もーど
(setq *kamail-use-auto-sign* t)
 
(define-key *kamail-draft-map* '(#\C-c #\S) 'GPG::gpg-signed-mailpart)
(define-key *kamail-view-map* '(#\C-c #\V) 'GPG::gpg-verify-signed-mail)
 
(require "gpg/gpg-misc")
暗号化とかインターフェイスの改良はそのうちにでも、ということでとりあえずは動きますバージョンです。GnuPG1.4.2で動作確認。GnuPGの言語設定は日本語じゃないと正規表現が一致しないので動きません。
エロゲに飽きてきたら続きを作るということで(笑)
5 さくらむすび...とか[GAME]
のらりくらりとやってますが……進まないねー
$Date: 2005-08-09 23:43:38 +0900 (Tue, 09 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050809.diary $
ぺーじとっぷへごー

2005.08.10 (Wed)

1 おはようございます
6:00、起床。んー、眠い
外は曇り空。寝ていた隙に雨がぱらぱらとこぼれた様子。むぅ
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「あと少し、もうちょっと!」
カレン「?」
LKPTeam「そんな気持ちで日々を過ごしています」
カレン「……そりゃあ、もうすぐお盆休みだけどね(^^;」
カレン「そんな気持ちじゃあダメじゃない」
LKPTeam「あはは(^^;」
カレン「もうちょっと仕事の方に意識を向けないとね」
LKPTeam「うぃー」
それじゃあ今日も頑張って仕事しますカー
2 gpg.lとか[xyzzy]
それはそうと昨日のGnuPGのアレですが、まともに動かないので使わない方が無難です。ほら、メール本文がきちんと取得できないとかエンコーディングがおかしくて他のメーラで署名したメールが本当は正しい署名なのに不正な署名と判断されたりとかありますから
その辺とか自力で何とかできる人は問題ないけど、それ以外の人は使わない方が身のため。というか、導入が面倒すぎてそこまでやる気がしないか(^^;
3 お仕事,,,とか[WORK]
今日はそこそこ忙しくて仕事したなぁ、って感じでした。実際はそんなに仕事していないんだけど
4 お買い物...とか[Shopping]
今日のお買い物は……
ハヤテのごとく! 3巻 小学館 ISBN4-09-127273-8
……でしたっ
$Date: 2005-08-11 00:12:07 +0900 (Thu, 11 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050810.diary $
ぺーじとっぷへごー

2005.08.11 (Thu)

1 おはようございます
6:00、起床。んー、よく寝た
外は晴れ模様。いい天気ですな。……あまり暑くならないといいんだけど、そうも言ってられないか
コーヒー飲んで、Web廻って、Msilcheck♪
LKPTeam「今日も暑くなりそうですよ」
カレン「雨が降らないだけいいんじゃないの?」
LKPTeam「そういう考え方もアリですけど」
カレン「でもだいぶ暑さも落ち着いてきたんじゃない?」
LKPTeam「体が慣れてきただけなのかもしれないですよ」
カレン「それでもいいじゃない」
LKPTeam「まぁ、そうかもしれないですが」
LKPTeam「さて、準備でもしますか」
カレン「ん、今日も頑張らないとね」
LKPTeam「あいー」
それじゃあ今日も頑張りますカー
2 お仕事...とか[WORK]
んー、今日も一日頑張りましたーっと
3 さくらむすび...とか[GAME]
のろのろ、のろのろ進めております、……別のこと考えながら(笑)<だから遅いんだよ!
うむ、署名してから暗号化、復号してから署名の検証、なんですね
$Date: 2005-08-12 00:10:37 +0900 (Fri, 12 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050811.diary $
ぺーじとっぷへごー

2005.08.12 (Fri)

1 おはようございます
6:00、起床。んー、眠い。そして体の疲れがとれませーん(^^;
外は曇り空。ぱっとしない空模様だけど、晴れて気温が上がるのに比べたらマシかなぁ
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「ということで今日頑張れば明日からお休みですよ」
カレン「夏期休暇ね」
LKPTeam「うぃ」
カレン「じゃあ今日は頑張らないとね」
LKPTeam「う……まぁ、ほどほどに(^^;」
カレン「……はいはい」
よし、それじゃあ張り切っていきませう
2 お仕事...とか[WORK]
仕事は午前中で休み前の分はほぼ終了。午後からはちょっとしたイベントのための準備にかり出されてあたふたしてみたり
そして肝心のイベントの方は雨に降られて屋外に出る気が失せる(笑)
なのでlispコードを組みつつ様子見していたり。そしてうっかりxyzzy終了させて未保存のコードを消失……うーあー
でもとりあえずこれで連休開始ですよ!
3 お買い物...とか[Shopping]
疲れてたけど帰り際に
今日のお買い物は……
翡翠峡奇譚 1巻 小学館 ISBN4-09-157262-6
翡翠峡奇譚 2巻 小学館 ISBN4-09-157263-4
Xuse【純米】 / 最果てのイマ
……でしたっ
最果て……は通販でしたが
4 夜...とか
疲れてたので、お風呂入ってばたんきゅー、でしたぅ
それはそうと暗号化と署名は-e -sでいいのではないだろうか。clearsignして暗号化するよりは手間が少なそう、というか実際少ないんだけど
$Date: 2005-08-14 19:46:37 +0900 (Sun, 14 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050812.diary $
ぺーじとっぷへごー

2005.08.13 (Sat)

1 おはようございます
7:30、起床。んー、もう少し寝ていたかったかも
外はどんより曇り空。暑くなるよりはいいのかな
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「ようやくお休みですよ」
カレン「することはたくさんあるけどね」
LKPTeam「うぃー」
LKPTeam「それを考えるとちょっとやる気がでないかも」
カレン「そんなこと言わないで頑張るの」
LKPTeam「あいー」
それじゃあ頑張りますかー
2 昼〜夜...とか
かなり久しぶりに洗車して、それから買い物して過ごす。夕方にはお墓へ。個人的にはどうでもいいんだけれども、まぁしょうがない
3 最果てのイマ...とか[GAME]
さくらむすびをほっといてやってしまいました。そして声なしの表記にまたびっくりしたり
カレン「だーかーらー(^^;」
LKPTeam「うわーん、これはしょうがないんですよぅ」
カレン「なにがどうしょうがないのよ!」
LKPTeam「ほら、スペック度外視で買ってるのですよ、このゲームのシナリオ担当が好きだから」
カレン「ならびっくりしないの」
LKPTeam「あぅあぅあー」
しかしさくらむすびといい連続で声なしとは……
それはそれとして面白いですな!
$Date: 2005-08-14 19:46:41 +0900 (Sun, 14 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050813.diary $
ぺーじとっぷへごー

2005.08.14 (Sun)

1 おはようございます
7:00、起床。うー、休暇なのに早く起きすぎ!
外は晴れ模様。ちょっと雲が多いけど、からりと晴れて気温がうなぎ上りになるよりはいいかな
コーヒー飲んで、Web廻って、Mailcheck♪
LKPTeam「というわけで今日からしばらくお出かけですよ」
カレン「どこからどう繋がってそういう言葉が出てくるのよ(^^;」
LKPTeam「あはは」
LKPTeam「久々の遠出で心がうきうきしています」
カレン「それはまぁわかるけど」
LKPTeam「ということで、夜に出発です」
カレン「それまでは何を」
LKPTeam「エロゲでもしますか!」
カレン「ダメダメね(^^;」
LKPTeam「あぅあぅあー」
2 最果てのイマ...とか[GAME]
あずさルートで『503 Service Unavailable』
迎えたエンドは全然納得していないけど、それすらも気にならないなあ、テキストが自分好みで(^^;。それにアレで終わりな訳はないしね。
とりあえず続きは帰ってきてからだな
というわけで、往復1000kmオーバーのドライブへ行ってきます(^^;
$Date: 2005-08-14 19:46:49 +0900 (Sun, 14 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050814.diary $
ぺーじとっぷへごー

2005.08.15 (Mon)

1 おはようございます?
というか夜通し高速走ってました。川口JCT通過が朝の5:00くらいかなぁ。那須高原を過ぎた当たりで1時間ほど仮眠してたから本当は4:00頃には通過できたんだけど、さすがに一睡もせずにというのは運転に支障が出そうだったので止めました
で、妹さんの住処に到着したのが6:00ちょっと過ぎくらい。さすがに早すぎたか(^^;
というか関東は暑いですな!洒落にならんとデス……
3時間ほど仮眠して東京見物へふらふらと
LKPTeam「というか暑くて観光する気にならんです」
カレン「まぁ、夏だからねぇ」
LKPTeam「うぅ」
さっさと切り上げて撤収<何しに来たんだよ(^^;
$Date: 2005-08-20 00:49:14 +0900 (Sat, 20 Aug 2005) $ $HeadURL: file:///G:/repo/ndiary_log/2005/08/20050815.diary $
ぺーじとっぷへごー

つっこみ

LKPTeam / ykaltenative@mue.biglobe.ne.jp
さいととっぷへごー!