Hyper Estraier 1.2.4 リリース。またまた対応して頂きました。ありがとうございます。
実は km3::he-dump して km3:he-restore した後にメールを削除しても casket から消えない問題が発生したりしてたので、その対応をお願いしていたり。
一度でも上記の手順で casket を作り直していた人向けのへなちょこな修正用。km3:he-dump してから km3:he-restore する前に実行。
(defun url2lpath ()
(let (uri
lpath)
(save-excursion
(goto-char (point-min))
(when (scan-buffer "^@uri=\\([^\n]+\\)$" :regexp t)
(setq uri (match-string 1))
(when (scan-buffer "^_lpath=\\([^\n]+\\)$" :regexp t)
(setq lpath (match-string 1))
(goto-char (match-beginning 1))
(unless (string= uri lpath)
(insert uri)
(delete-region (point)
(progn
(goto-eol)
(point)))
t))))))
(defun he-modify-draft-lpath ()
(interactive)
(let ((bufout "*result*")
sout
(buftmp "*temp*")
(cnt 0))
(set-buffer (get-buffer-create bufout))
(erase-buffer (selected-buffer))
(setq sout (make-buffer-stream (selected-buffer)))
(set-buffer (get-buffer-create buftmp))
(dolist (file (directory *he-dump-directory*
:file-only t
:absolute t))
(let (res)
(incf cnt)
(erase-buffer (selected-buffer))
(insert-file-contents file)
(when (setq res (url2lpath))
(write-region (point-min)
(point-max)
file
nil
*encoding-utf8n*
*eol-lf*))
(format sout "~S\t~A~%"
res
file)
(when (= (mod cnt 1000) 0)
(message "~D ..." cnt))
(do-events)))
(delete-buffer buftmp)
(set-buffer bufout)
(message "~D ... done." cnt)))
最近のコメント