白井です。やっと、いじれました。 From: TSUCHIYA Masatoshi <tsuchiya@xxxxxxxxxxxxxxxxxxxxxxx> さん曰く Subject: [mhc:00534] Re: mhc-cvs.el Message-ID: <200004241453.XAA27481@xxxxxxxxxxxxxxxxxxxxxxxxx> Date: Mon, 24 Apr 2000 23:53:39 +0900 土> で、cvs add および cvs remove は、完全なオフライン環境でも、いつでも実 土> 行可能なはずだと考えていたのですが、これが間違いなのでしょうか? 白井> こちらの問題です。環境は昨日も書きましたけど、Win95 + NotePC + 白井> cvs-1.10.5 です。 offline 状態で (server を隠すこともないけど) 土> この問題に関して、とりあえずオフライン状態時には cvs add / remove を行 土> わず、オンライン状態になった後で cvs add / remove を行うように変更して 土> みました。 \(^^)/ 土> ## [mhc:00529] のパッチを適用した後にあてるようになっています。 というわけで、[mhc:00529] + [mhc:00534] でいろいろやってみました。 1. mhc-cvs/update() は default-directory が "~/Mail/schedule" で 作業する様に変わっているので、その対応。 2. mhc-cvs/delay-add-and-remove() で再帰的に directory を下りて いくため、時間がかかるのでいやだなぁ。 3. dolist のためだけに cl を require するのがいや。 (もしかすると、いつも load しているかもしれないのだけど。。。 ごめんなさい) 4. Windows には symbolic-link という高級なものは無いので、 (write-region "xxx" ...) としようと思ったけど、気を取り直して copy-file() した。 5. file アクセスのガードを強固にした。 (もともと、error になったらどうしようもないけど) ここで、2. に関しては、 "~/Mail/schedule/2000/05/123" => "~/Mail/schedule/.mhc-cvs-(added|removed)-2000_05_123" "~/Mail/schedule/intersect/56 => "~/Mail/schedule/.mhc-cvs-(added|removed)-intersect_56" という file を schedule 直下に作る様にしました。remove のときは rename-file() でも大丈夫だと思うのですが、copy-file() + delete-file() にしてしまいました。 # とりあえず、filename 変換の path の区切りは "/" 固定。^^;;; -- 白井秀行 (mailto:shirai@xxxxxxxxxxxxxxxxxxx) ## しかし、最近の土屋さんってば、mhc-cvs といい、gnus-namazu と ## いい爆発していますね。:-)
Attachment:
mhc-cvs.el.diff.bz2
Description: Binary data
P.S.
From: TSUCHIYA Masatoshi <tsuchiya@xxxxxxxxxxxxxxxxxxxxxxx> さん曰く
Subject: [mhc:00533] Re: T-gnus support
Message-ID: <mpa4s8sqoql.fsf_-_@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 24 Apr 2000 10:20:23 +0900
土> それから、Gnus 使いの人はとりあえず以下のコードを入れておくと、ちょっ
土> と幸せになれるかも知れません。
これって、Mew だとこういうことかしら?
(add-hook 'mhc-mode-hook
'(lambda ()
(define-key mhc-mode-map "N" 'mhc-mew-summary-display-next-misc)
(define-key mhc-mode-map "P" 'mhc-mew-summary-display-prev-misc)))
(defun mhc-mew-summary-display-next-misc ()
(interactive)
(if (string-match (concat "^" mhc-base-folder) (buffer-name))
(mhc-summary-display-next-schedule)
(mew-summary-display-review-down)))
(defun mhc-mew-summary-display-prev-misc ()
(interactive)
(if (string-match (concat "^" mhc-base-folder "/") (buffer-name))
(mhc-summary-display-next-schedule 'prev)
(mew-summary-display-review-up)))
(defun mhc-summary-display-next-schedule (&optional prev)
(let ((regex (concat "\r +" (regexp-quote mhc-base-folder)
"/\\([12][0-9][0-9][0-9]/[01][0-9]\\|intersect\\) +"
"[1-9][0-9]*$" ))
(pos (point)))
(cond
((and (not prev) (forward-line 1)
(re-search-forward regex nil t))
(beginning-of-line)
(and mew-summary-buffer-disp-msg (mew-summary-display nil)))
((and prev (forward-line 0) (re-search-backward regex nil t))
(beginning-of-line)
(and mew-summary-buffer-disp-msg (mew-summary-display nil)))
(t
(goto-char pos) (message "no schedule exist.")))))
;; なんか判定が汚い。